diff --git a/snippets/csharp/System/ThreadStaticAttribute/Overview/threadsafe2a.cs b/snippets/csharp/System/ThreadStaticAttribute/Overview/threadsafe2a.cs index fcc8fd8c3d2..5f7e07d328a 100644 --- a/snippets/csharp/System/ThreadStaticAttribute/Overview/threadsafe2a.cs +++ b/snippets/csharp/System/ThreadStaticAttribute/Overview/threadsafe2a.cs @@ -23,10 +23,10 @@ static void Main() static void ProcessRequest(object? requestId) { - // Assign the request ID to the thread-static field + // Assign the request ID to the thread-static field. _requestId = requestId as string; - // Simulate request processing across multiple method calls + // Simulate request processing across multiple method calls. PerformDatabaseOperation(); PerformLogging(); } diff --git a/xml/Microsoft.JScript/Typeof.xml b/xml/Microsoft.JScript/Typeof.xml index 63e0db2a9d4..29785f2e75f 100644 --- a/xml/Microsoft.JScript/Typeof.xml +++ b/xml/Microsoft.JScript/Typeof.xml @@ -52,27 +52,27 @@ Determines the data type of the specified object. The type of . - diff --git a/xml/Microsoft.SqlServer.Server/SqlUserDefinedTypeAttribute.xml b/xml/Microsoft.SqlServer.Server/SqlUserDefinedTypeAttribute.xml index a8c94d17b94..b435c19ad0c 100644 --- a/xml/Microsoft.SqlServer.Server/SqlUserDefinedTypeAttribute.xml +++ b/xml/Microsoft.SqlServer.Server/SqlUserDefinedTypeAttribute.xml @@ -38,19 +38,19 @@ Used to mark a type definition in an assembly as a user-defined type (UDT) in SQL Server. The properties on the attribute reflect the physical characteristics used when the type is registered with SQL Server. This class cannot be inherited. - custom attribute. Every UDT must be annotated with this attribute. See [CLR User-Defined Types](https://go.microsoft.com/fwlink/?LinkId=128028) for more information about UDTs, including an example of a UDT. - - - -## Examples - The following example shows the `UserDefinedType` attribute of the Point UDT. The UDT is byte-ordered, is named "Point", has a validation method named "ValidatePoint", and uses the native serialization format. - + custom attribute. Every UDT must be annotated with this attribute. See [CLR User-Defined Types](https://go.microsoft.com/fwlink/?LinkId=128028) for more information about UDTs, including an example of a UDT. + + + +## Examples + The following example shows the `UserDefinedType` attribute of the Point UDT. The UDT is byte-ordered, is named "Point", has a validation method named "ValidatePoint", and uses the native serialization format. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlUserDefinedTypeAttribute Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlUserDefinedTypeAttribute Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlUserDefinedTypeAttribute Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -79,17 +79,17 @@ One of the values representing the serialization format of the type. A required attribute on a user-defined type (UDT), used to confirm that the given type is a UDT and to indicate the storage format of the UDT. - @@ -145,37 +145,37 @@ if the user-defined type is byte ordered; otherwise . - property in effect guarantees that the serialized binary data can be used for semantic ordering of the information. Thus, each instance of a byte-ordered UDT object can only have one serialized representation. When a comparison operation is performed in SQL Server on the serialized bytes, its results should be the same as if the same comparison operation had taken place in managed code. - - The following features are supported when is set to `true`: - -- The ability to create indexes on columns of this type. - -- The ability to create primary and foreign keys as well as CHECK and UNIQUE constraints on columns of this type. - -- The ability to use Transact-SQL ORDER BY, GROUP BY, and PARTITION BY clauses. In these cases, the binary representation of the type is used to determine the order. - -- The ability to use comparison operators in Transact-SQL statements. - -- The ability to persist computed columns of this type. - - Note that both the `Native` and `UserDefined` serialization formats support the following comparison operators when is set to `true`: - -- Equal to (=) - -- Not equal to (!=) - -- Greater than (>) - -- Less than (\<) - -- Greater than or equal to (>=) - -- Less than or equal to (<=) - + property in effect guarantees that the serialized binary data can be used for semantic ordering of the information. Thus, each instance of a byte-ordered UDT object can only have one serialized representation. When a comparison operation is performed in SQL Server on the serialized bytes, its results should be the same as if the same comparison operation had taken place in managed code. + + The following features are supported when is set to `true`: + +- The ability to create indexes on columns of this type. + +- The ability to create primary and foreign keys as well as CHECK and UNIQUE constraints on columns of this type. + +- The ability to use Transact-SQL ORDER BY, GROUP BY, and PARTITION BY clauses. In these cases, the binary representation of the type is used to determine the order. + +- The ability to use comparison operators in Transact-SQL statements. + +- The ability to persist computed columns of this type. + + Note that both the `Native` and `UserDefined` serialization formats support the following comparison operators when is set to `true`: + +- Equal to (=) + +- Not equal to (!=) + +- Greater than (>) + +- Less than (\<) + +- Greater than or equal to (>=) + +- Less than or equal to (<=) + ]]> @@ -205,11 +205,11 @@ if all instances of this type are the same length; otherwise . - . This attribute is only relevant for UDTs with `UserDefined` serialization . - + . This attribute is only relevant for UDTs with `UserDefined` serialization . + ]]> @@ -238,19 +238,19 @@ The maximum size of the instance, in bytes. An value representing the maximum size of the instance. - property with the `UserDefined` serialization . - - When connecting to SQL Server 2005 or earlier, must be between 1 and 8000. - - When connecting to SQL Server 2008 or later, set between 1 and 8000, for a type whose instances are always 8,000 bytes or less. For types that can have instances larger than 8000, specify -1. - - For a UDT with user-defined serialization specified, refers to the total size of the UDT in its serialized form as defined by the user. Consider a UDT with a property of a string of 10 characters (). When the UDT is serialized using a , the total size of the serialized string is 22 bytes: 2 bytes per Unicode UTF-16 character, multiplied by the maximum number of characters, plus 2 control bytes of overhead incurred from serializing a binary stream. So, when determining the value of , the total size of the serialized UDT must be considered: the size of the data serialized in binary form plus the overhead incurred by serialization. - - This property should not be used with `Native` serialization . - + property with the `UserDefined` serialization . + + When connecting to SQL Server 2005 or earlier, must be between 1 and 8000. + + When connecting to SQL Server 2008 or later, set between 1 and 8000, for a type whose instances are always 8,000 bytes or less. For types that can have instances larger than 8000, specify -1. + + For a UDT with user-defined serialization specified, refers to the total size of the UDT in its serialized form as defined by the user. Consider a UDT with a property of a string of 10 characters (). When the UDT is serialized using a , the total size of the serialized string is 22 bytes: 2 bytes per Unicode UTF-16 character, multiplied by the maximum number of characters, plus 2 control bytes of overhead incurred from serializing a binary stream. So, when determining the value of , the total size of the serialized UDT must be considered: the size of the data serialized in binary form plus the overhead incurred by serialization. + + This property should not be used with `Native` serialization . + ]]> @@ -279,11 +279,11 @@ The SQL Server name of the user-defined type. A value representing the SQL Server name of the user-defined type. - property is not used within SQL Server, but is used by the Microsoft Visual Studio .NET Integrated Development Environment (IDE). - + property is not used within SQL Server, but is used by the Microsoft Visual Studio .NET Integrated Development Environment (IDE). + ]]> @@ -312,11 +312,11 @@ The name of the method used to validate instances of the user-defined type. A representing the name of the method used to validate instances of the user-defined type. - diff --git a/xml/Microsoft.VisualBasic.ApplicationServices/BuiltInRoleConverter.xml b/xml/Microsoft.VisualBasic.ApplicationServices/BuiltInRoleConverter.xml index 6bca28c491a..79624995a22 100644 --- a/xml/Microsoft.VisualBasic.ApplicationServices/BuiltInRoleConverter.xml +++ b/xml/Microsoft.VisualBasic.ApplicationServices/BuiltInRoleConverter.xml @@ -17,16 +17,16 @@ Provides a type converter to convert enumeration values to enumeration values. - object. - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - + object. + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + > [!CAUTION] -> You should never create an instance of a class. Instead, call the method of the class. For more information, see the examples in the base class. - +> You should never create an instance of a class. Instead, call the method of the class. For more information, see the examples in the base class. + ]]> @@ -56,11 +56,11 @@ Initializes a new instance of the class. - object. - + object. + ]]> @@ -95,13 +95,13 @@ Gets a value indicating whether this converter can convert an object to the given destination type using the context. A object that indicates whether this converter can perform the conversion. - object. - + object. + ]]> @@ -140,15 +140,15 @@ Converts the given object to another type. The converted object. - on the object if the object is valid and if the destination type is . - - The `context` parameter can be used to extract additional information about the environment this converter is being invoked from. This can be `Nothing`, so always check. Also, properties on the context object can return `Nothing`. - - This type converter supports the Visual Basic object. - + on the object if the object is valid and if the destination type is . + + The `context` parameter can be used to extract additional information about the environment this converter is being invoked from. This can be `Nothing`, so always check. Also, properties on the context object can return `Nothing`. + + This type converter supports the Visual Basic object. + ]]> diff --git a/xml/Microsoft.VisualBasic.ApplicationServices/ConsoleApplicationBase.xml b/xml/Microsoft.VisualBasic.ApplicationServices/ConsoleApplicationBase.xml index d2652f90443..1eea260abfd 100644 --- a/xml/Microsoft.VisualBasic.ApplicationServices/ConsoleApplicationBase.xml +++ b/xml/Microsoft.VisualBasic.ApplicationServices/ConsoleApplicationBase.xml @@ -30,26 +30,26 @@ Provides properties, methods, and events related to the current application. - provides members that are available in all projects. - -- provides members available in Windows Forms applications. - -- provides members available in console applications. - - - -## Examples - This example uses the `My.Application.CommandLineArgs` property to examine the application's command-line arguments. If an argument is found that starts with `/input=`, the rest of that argument is displayed. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet3"::: - + provides members that are available in all projects. + +- provides members available in Windows Forms applications. + +- provides members available in console applications. + + + +## Examples + This example uses the `My.Application.CommandLineArgs` property to examine the application's command-line arguments. If an argument is found that starts with `/input=`, the rest of that argument is displayed. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet3"::: + ]]> @@ -128,44 +128,44 @@ Gets a collection containing the command-line arguments as strings for the current application. A of , containing the command-line arguments as strings for the current application. - event and examine the property of the argument. - + event and examine the property of the argument. + > [!NOTE] -> The `My.Application.CommandLineArgs` property returns only the command-line arguments. This is different from the behavior of the property, which returns the application name in addition to the arguments. - +> The `My.Application.CommandLineArgs` property returns only the command-line arguments. This is different from the behavior of the property, which returns the application name in addition to the arguments. + > [!NOTE] -> In an application that is ClickOnce deployed, use the property of the `My.Application.Deployment` object to get the command-line arguments. For more information, see . - - The following table lists examples of tasks involving the `My.Application.CommandLineArgs` property. - -|To|See| -|-|-| -|Check the command-line arguments of subsequent attempts to start a single-instance application|| - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|No| -|Console Application|**Yes**| -|Windows Control Library|No| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example uses the `My.Application.CommandLineArgs` property to examine the application's command-line arguments. If an argument is found that starts with `/input=`, the rest of that argument is displayed. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet3"::: - +> In an application that is ClickOnce deployed, use the property of the `My.Application.Deployment` object to get the command-line arguments. For more information, see . + + The following table lists examples of tasks involving the `My.Application.CommandLineArgs` property. + +|To|See| +|-|-| +|Check the command-line arguments of subsequent attempts to start a single-instance application|| + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|No| +|Console Application|**Yes**| +|Windows Control Library|No| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example uses the `My.Application.CommandLineArgs` property to examine the application's command-line arguments. If an argument is found that starts with `/input=`, the rest of that argument is displayed. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet3"::: + ]]> @@ -196,36 +196,36 @@ Gets the current application's ClickOnce deployment object, which provides support for updating the current deployment programmatically and support for the on-demand download of files. The object for the application's ClickOnce deployment. - object. The object provides support for updating the current deployment programmatically as well as support for the on-demand download of files. For more information on ClickOnce applications and how to deploy them, see [ClickOnce Security and Deployment](/visualstudio/deployment/clickonce-security-and-deployment) and [Publishing ClickOnce Applications](/visualstudio/deployment/publishing-clickonce-applications). - - Confirm that the property is `True` before you access the `My.Application.Deployment` property. Otherwise, if the application is not deployed using ClickOnce, reading the `My.Application.Deployment` property results in an exception. For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). - - For more information on using the `My.Application.Deployment` property, see [Overview of the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/development-with-my/overview-of-the-visual-basic-application-model). - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Forms Application|**Yes**| -|Class Library|No| -|Console Application|**Yes**| -|Windows Forms Control Library|No| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example downloads and installs the update after checking that the application is network-deployed. The method does not update the application unless it is out of date. The application has to restart to use the update. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet4"::: - - Only applications that are ClickOnce deployed can be updated using the `My.Application.Deployment` object. For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). - + object. The object provides support for updating the current deployment programmatically as well as support for the on-demand download of files. For more information on ClickOnce applications and how to deploy them, see [ClickOnce Security and Deployment](/visualstudio/deployment/clickonce-security-and-deployment) and [Publishing ClickOnce Applications](/visualstudio/deployment/publishing-clickonce-applications). + + Confirm that the property is `True` before you access the `My.Application.Deployment` property. Otherwise, if the application is not deployed using ClickOnce, reading the `My.Application.Deployment` property results in an exception. For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). + + For more information on using the `My.Application.Deployment` property, see [Overview of the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/development-with-my/overview-of-the-visual-basic-application-model). + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Forms Application|**Yes**| +|Class Library|No| +|Console Application|**Yes**| +|Windows Forms Control Library|No| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example downloads and installs the update after checking that the application is network-deployed. The method does not update the application unless it is out of date. The application has to restart to use the update. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet4"::: + + Only applications that are ClickOnce deployed can be updated using the `My.Application.Deployment` object. For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). + ]]> The application is not deployed as a ClickOnce application. @@ -279,11 +279,11 @@ Sets the values to use as the current application's command-line arguments. A of , containing the strings to use as the command-line arguments for the current application. - class. This property determines what the property returns. If you do not set this property, or you set this property to `Nothing`, the property obtains the command-line arguments from the property. - + class. This property determines what the property returns. If you do not set this property, or you set this property to `Nothing`, the property obtains the command-line arguments from the property. + ]]> Objects (Visual Basic) @@ -309,38 +309,38 @@ Gets a that represents whether the application was deployed from a network using ClickOnce. A that represents whether the application was deployed from a network. The value is if the current application was deployed from a network; otherwise the value is . - property. Otherwise, if the application is not deployed from a network using ClickOnce, reading the `My.Application.Deployment` property results in an exception. - - For more information on configuring ClickOnce, see [Publishing ClickOnce Applications](/visualstudio/deployment/publishing-clickonce-applications). For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). - - For more information on using the `My.Application.IsNetworkDeployed` property, see [Overview of the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/development-with-my/overview-of-the-visual-basic-application-model). - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Forms Application|**Yes**| -|Class Library|No| -|Console Application|**Yes**| -|Windows Forms Control Library|No| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example downloads and installs the update after checking that the application is deployed from a network. The method does not update the application unless it is out of date. The application has to restart to use the update. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet4"::: - - Only applications that are ClickOnce-deployed can be updated using the `My.Application.Deployment` object. For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). - + property. Otherwise, if the application is not deployed from a network using ClickOnce, reading the `My.Application.Deployment` property results in an exception. + + For more information on configuring ClickOnce, see [Publishing ClickOnce Applications](/visualstudio/deployment/publishing-clickonce-applications). For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). + + For more information on using the `My.Application.IsNetworkDeployed` property, see [Overview of the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/development-with-my/overview-of-the-visual-basic-application-model). + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Forms Application|**Yes**| +|Class Library|No| +|Console Application|**Yes**| +|Windows Forms Control Library|No| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example downloads and installs the update after checking that the application is deployed from a network. The method does not update the application unless it is out of date. The application has to restart to use the update. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet4"::: + + Only applications that are ClickOnce-deployed can be updated using the `My.Application.Deployment` object. For more information on deploying a ClickOnce application, see [How to: Publish a ClickOnce Application using the Publish Wizard](/visualstudio/deployment/how-to-publish-a-clickonce-application-using-the-publish-wizard). + ]]> Objects (Visual Basic) diff --git a/xml/Microsoft.VisualBasic.ApplicationServices/NoStartupFormException.xml b/xml/Microsoft.VisualBasic.ApplicationServices/NoStartupFormException.xml index 9a53523d651..14a138f2f0e 100644 --- a/xml/Microsoft.VisualBasic.ApplicationServices/NoStartupFormException.xml +++ b/xml/Microsoft.VisualBasic.ApplicationServices/NoStartupFormException.xml @@ -36,14 +36,14 @@ This exception is thrown by the Visual Basic Application Model when the property has not been set. - property before running the method. If the property is not set, the Visual Basic Application Model raises this exception. For more information, see [Extending the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/customizing-extending-my/extending-the-visual-basic-application-model). - + property before running the method. If the property is not set, the Visual Basic Application Model raises this exception. For more information, see [Extending the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/customizing-extending-my/extending-the-visual-basic-application-model). + > [!NOTE] -> For information about how to set the startup form by using the **Project Designer**, see [Application Page, Project Designer (Visual Basic)](https://learn.microsoft.com/visualstudio/ide/reference/application-page-project-designer-visual-basic). - +> For information about how to set the startup form by using the **Project Designer**, see [Application Page, Project Designer (Visual Basic)](https://learn.microsoft.com/visualstudio/ide/reference/application-page-project-designer-visual-basic). + ]]> Overview of the Visual Basic Application Model @@ -86,18 +86,18 @@ Initializes a new instance of the class. - property before running the method. If the property is not set, the Visual Basic Application Model raises this exception. For more information, see [Extending the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/customizing-extending-my/extending-the-visual-basic-application-model). - - The following table shows the initial property values for an instance of . - -|Property|Value| -|-|-| -||A null reference (`Nothing` in Visual Basic).| -||The localized error-message string.| - + property before running the method. If the property is not set, the Visual Basic Application Model raises this exception. For more information, see [Extending the Visual Basic Application Model](/dotnet/visual-basic/developing-apps/customizing-extending-my/extending-the-visual-basic-application-model). + + The following table shows the initial property values for an instance of . + +|Property|Value| +|-|-| +||A null reference (`Nothing` in Visual Basic).| +||The localized error-message string.| + ]]> Overview of the Visual Basic Application Model @@ -139,18 +139,18 @@ A message that describes the error. Initializes a new instance of the class with a specified error message. - inherits from . This constructor sets the properties of the object as shown in the following table. - -|Property|Value| -|-|-| -||A null reference (`Nothing` in Visual Basic)| -||The `message` string.| - + inherits from . This constructor sets the properties of the object as shown in the following table. + +|Property|Value| +|-|-| +||A null reference (`Nothing` in Visual Basic)| +||The `message` string.| + ]]> Overview of the Visual Basic Application Model @@ -202,11 +202,11 @@ The object that contains contextual information about the source or destination. Initializes a new instance of the class with serialized data. - Overview of the Visual Basic Application Model @@ -250,20 +250,20 @@ The object that is the cause of the current exception. If the parameter is not a null reference ( in Visual Basic), the current exception is raised in a catch block that handles the inner 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. - property. The property returns the same value that is passed into the constructor, or a null reference if the property does not supply the inner exception value to the constructor. - - The following table shows the initial property values for an instance of . - -|Property|Value| -|-|-| -||The `inner` reference.| -||The `message` string.| - + property. The property returns the same value that is passed into the constructor, or a null reference if the property does not supply the inner exception value to the constructor. + + The following table shows the initial property values for an instance of . + +|Property|Value| +|-|-| +||The `inner` reference.| +||The `message` string.| + ]]> Overview of the Visual Basic Application Model diff --git a/xml/Microsoft.VisualBasic.ApplicationServices/User.xml b/xml/Microsoft.VisualBasic.ApplicationServices/User.xml index 51b07a64143..9637575ea30 100644 --- a/xml/Microsoft.VisualBasic.ApplicationServices/User.xml +++ b/xml/Microsoft.VisualBasic.ApplicationServices/User.xml @@ -30,23 +30,23 @@ Provides access to the information about the current user. - for the current user. A principal object represents the user's security context, including that user's identity and any roles to which the user belongs. - - For Windows applications, this property provides the same functionality as the property. For Web applications, this property provides the same functionality as the property of the object returned by the property. - + for the current user. A principal object represents the user's security context, including that user's identity and any roles to which the user belongs. + + For Windows applications, this property provides the same functionality as the property. For Web applications, this property provides the same functionality as the property of the object returned by the property. + > [!NOTE] -> For Windows applications, only projects built on the **Windows Application** template initialize the `My.User` object by default. In all other Windows project types, you must initialize the `My.User` object by calling the method explicitly or by assigning a value to . - -## Examples - This example checks if the application is using Windows or custom authentication, and uses that information to parse the `My.User.Name` property. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: - +> For Windows applications, only projects built on the **Windows Application** template initialize the `My.User` object by default. In all other Windows project types, you must initialize the `My.User` object by calling the method explicitly or by assigning a value to . + +## Examples + This example checks if the application is using Windows or custom authentication, and uses that information to parse the `My.User.Name` property. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -91,11 +91,11 @@ Initializes a new instance of the class. - Objects (Visual Basic) @@ -149,34 +149,34 @@ Gets or sets the current principal (for role-based security). A value representing the security context. - interface to enable custom authentication. - - In most project types, this property gets and sets the thread's current principal. In an ASP.NET application, this property gets and sets the security information for the current HTTP request's user identity. - - This is an advanced member; it does not show in IntelliSense unless you click the **All** tab. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - This example checks if the application is using Windows or custom authentication, and uses that information to parse `My.User.Name` property. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: - + interface to enable custom authentication. + + In most project types, this property gets and sets the thread's current principal. In an ASP.NET application, this property gets and sets the security information for the current HTTP request's user identity. + + This is an advanced member; it does not show in IntelliSense unless you click the **All** tab. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + This example checks if the application is using Windows or custom authentication, and uses that information to parse `My.User.Name` property. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: + ]]> The caller does not have the permission required to set the principal. @@ -210,30 +210,30 @@ Sets the thread's current principal to the Windows user that started the application. - . - - In Windows projects, the `My.User` object is based on the thread's current principal; therefore, this method can change the information `My.User` returns. In an ASP.NET application, the `My.User` object is based on the current HTTP request's user identity, and is unaffected by this method. - + . + + In Windows projects, the `My.User` object is based on the thread's current principal; therefore, this method can change the information `My.User` returns. In an ASP.NET application, the `My.User` object is based on the current HTTP request's user identity, and is unaffected by this method. + > [!NOTE] -> The exact behavior of the `My.User` object depends on the type of application and on the operating system on which the application runs. For more information, see the class overview. - - This is an advanced member; it does not show in IntelliSense unless you click the **All** tab. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - +> The exact behavior of the `My.User` object depends on the type of application and on the operating system on which the application runs. For more information, see the class overview. + + This is an advanced member; it does not show in IntelliSense unless you click the **All** tab. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + ]]> Objects (Visual Basic) @@ -272,11 +272,11 @@ Gets or sets the principal object representing the current user. An object representing the current user. - object, this property wraps the property. Override this method in a derived class to provide different behavior. For example, the property overrides this property. - + object, this property wraps the property. Override this method in a derived class to provide different behavior. For example, the property overrides this property. + ]]> Objects (Visual Basic) @@ -316,33 +316,33 @@ if the user was authenticated; otherwise, . - [!NOTE] -> The exact behavior of `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - This example verifies that the user has been authenticated before accessing a resource. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet2"::: - +> The exact behavior of `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + This example verifies that the user has been authenticated before accessing a resource. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet2"::: + ]]> Objects (Visual Basic) @@ -382,37 +382,37 @@ if the current user is a member of the specified role; otherwise, . - method of the current principal. - - The overload of the `My.User.IsInRole` method that takes a `BuiltInRole` enumeration behaves differently, depending on the current principal. If it is a Windows user principal (), this function converts `role` to the equivalent enumeration and returns the result of calling . If the current principal is any other principal, this function passes the name of the enumeration value in `role` to the principal's method. - + method of the current principal. + + The overload of the `My.User.IsInRole` method that takes a `BuiltInRole` enumeration behaves differently, depending on the current principal. If it is a Windows user principal (), this function converts `role` to the equivalent enumeration and returns the result of calling . If the current principal is any other principal, this function passes the name of the enumeration value in `role` to the principal's method. + > [!NOTE] -> The exact behavior of the `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - This example checks if the user is an administrator before accessing a resource. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet1"::: - +> The exact behavior of the `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + This example checks if the user is an administrator before accessing a resource. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet1"::: + ]]> Objects (Visual Basic) @@ -456,37 +456,37 @@ if the current user is a member of the specified role; otherwise, . - method of the current principal. - - The overload of the `My.User.IsInRole` method that takes a `BuiltInRole` enumeration behaves differently, depending on the current principal. If it is a Windows user principal (), this function converts `role` to the equivalent enumeration and returns the result of calling . If the current principal is any other principal, this function passes the name of the enumeration value in `role` to the principal's method. - + method of the current principal. + + The overload of the `My.User.IsInRole` method that takes a `BuiltInRole` enumeration behaves differently, depending on the current principal. If it is a Windows user principal (), this function converts `role` to the equivalent enumeration and returns the result of calling . If the current principal is any other principal, this function passes the name of the enumeration value in `role` to the principal's method. + > [!NOTE] -> The exact behavior of the `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - This example checks if the user is an administrator before accessing a resource. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet1"::: - +> The exact behavior of the `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + This example checks if the user is an administrator before accessing a resource. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet1"::: + ]]> @@ -527,35 +527,35 @@ . The name of the current user. - [!NOTE] -> The exact behavior of the `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - This example checks if the application is using Windows or custom authentication, and uses that information to parse the `My.User.Name` property. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: - +> The exact behavior of the `My.User` object depends on the type of the application and on the operating system on which the application runs. For more information, see the class overview. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + This example checks if the application is using Windows or custom authentication, and uses that information to parse the `My.User.Name` property. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: + ]]> Objects (Visual Basic) diff --git a/xml/Microsoft.VisualBasic.ApplicationServices/WebUser.xml b/xml/Microsoft.VisualBasic.ApplicationServices/WebUser.xml index 741587686e8..4e244fc35c3 100644 --- a/xml/Microsoft.VisualBasic.ApplicationServices/WebUser.xml +++ b/xml/Microsoft.VisualBasic.ApplicationServices/WebUser.xml @@ -17,23 +17,23 @@ Provides access to the information about the current user. - for the current user. A principal object represents the user's security context, including that user's identity and any roles to which the user belongs. - - For Windows applications, this property provides the same functionality as the property. For Web applications, this property provides the same functionality as the property of the object returned by the property. - + for the current user. A principal object represents the user's security context, including that user's identity and any roles to which the user belongs. + + For Windows applications, this property provides the same functionality as the property. For Web applications, this property provides the same functionality as the property of the object returned by the property. + > [!NOTE] -> For Windows applications, only projects built on the **Windows Application** template initialize the `My.User` object by default. In all other Windows project types, you must initialize the `My.User` object by calling the method explicitly or by assigning a value to . - -## Examples - This example checks if the application is using Windows or custom authentication, and uses that information to parse the `My.User.Name` property. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: - +> For Windows applications, only projects built on the **Windows Application** template initialize the `My.User` object by default. In all other Windows project types, you must initialize the `My.User` object by calling the method explicitly or by assigning a value to . + +## Examples + This example checks if the application is using Windows or custom authentication, and uses that information to parse the `My.User.Name` property. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyUser/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -67,11 +67,11 @@ Initializes a new instance of the class. - @@ -98,13 +98,13 @@ Gets or sets the principal object representing the current user. An object representing the current user. - object, this property wraps the property of the property. - - For more detailed information, see the property. - + object, this property wraps the property of the property. + + For more detailed information, see the property. + ]]> diff --git a/xml/Microsoft.VisualBasic.ApplicationServices/WindowsFormsApplicationBase.xml b/xml/Microsoft.VisualBasic.ApplicationServices/WindowsFormsApplicationBase.xml index e267e56a448..1a765f90436 100644 --- a/xml/Microsoft.VisualBasic.ApplicationServices/WindowsFormsApplicationBase.xml +++ b/xml/Microsoft.VisualBasic.ApplicationServices/WindowsFormsApplicationBase.xml @@ -308,10 +308,10 @@ Typically, you use this method in a loop to process messages. > [!NOTE] -> The `My.Application.DoEvents` method does not process events in exactly the same way as the form does. Use multithreading to make the form directly handle the events. For more information, see [Using threads and threading](/dotnet/standard/threading/using-threads-and-threading). +> The `My.Application.DoEvents` method does not process events in exactly the same way as the form does. Use multithreading to make the form directly handle the events. For more information, see [Using threads and threading](/dotnet/standard/threading/using-threads-and-threading). > [!CAUTION] -> If a method that handles a user interface (UI) event calls the `My.Application.DoEvents` method, the method might be re-entered before it finishes. This can happen because the `My.Application.DoEvents` method processes Windows messages, and Windows messages can raise events. +> If a method that handles a user interface (UI) event calls the `My.Application.DoEvents` method, the method might be re-entered before it finishes. This can happen because the `My.Application.DoEvents` method processes Windows messages, and Windows messages can raise events. The following table lists an example of a task involving the `My.Application.DoEvents` method. @@ -722,7 +722,7 @@ To access the Code Editor window for application events: For more information, see [Application Page, Project Designer (Visual Basic)](https://learn.microsoft.com/visualstudio/ide/reference/application-page-project-designer-visual-basic). > [!NOTE] -> Many network hubs will provide a network connection even if the hub is disconnected from a larger network. Consequently, for wired connections, this event indicates change in the connection between the computer and a hub. +> Many network hubs will provide a network connection even if the hub is disconnected from a larger network. Consequently, for wired connections, this event indicates change in the connection between the computer and a hub. ## Availability by Project Type @@ -1210,7 +1210,7 @@ For more information, see [Application Page, Project Designer (Visual Basic)](ht The `My.Application.OpenForms` property gets a collection of all the application's open forms. The behavior is identical to the property. > [!NOTE] -> The `My.Application.OpenForms` property returns all open forms, regardless of which thread opened them. You should check the property of each form before accessing it; otherwise, it might throw an exception. +> The `My.Application.OpenForms` property returns all open forms, regardless of which thread opened them. You should check the property of each form before accessing it; otherwise, it might throw an exception. ## Availability by Project Type @@ -1373,9 +1373,9 @@ To change the setting in the Project Designer: ## Examples This example has two parts. -- The `InitializeSaveMySettingsOnExit` subroutine, which initializes the checked state of a control to the current value of the `SaveMySettingsOnExit` property. +- The `InitializeSaveMySettingsOnExit` subroutine, which initializes the checked state of a control to the current value of the `SaveMySettingsOnExit` property. -- The `SaveMySettingsOnExit_CheckedChanged` subroutine, which handles changes to a control to update the `My.Application.SaveMySettingsOnExit` property. +- The `SaveMySettingsOnExit_CheckedChanged` subroutine, which handles changes to a control to update the `My.Application.SaveMySettingsOnExit` property. :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet12"::: @@ -1752,7 +1752,7 @@ For more information, see [Application Page, Project Designer (Visual Basic)](ht This event is raised on the application's main thread with the other user-interface events. This allows the event handler to access directly the application's user interface. However, if the application is busy handling another user-interface event when this event is raised, this event cannot be processed until the other event handler finishes or calls the method. > [!NOTE] -> The `StartupNextInstance` event is raised only in single-instance applications. To enable single-instance behavior for your application, you must check the **Make single instance application** check box in the Project Designer. +> The `StartupNextInstance` event is raised only in single-instance applications. To enable single-instance behavior for your application, you must check the **Make single instance application** check box in the Project Designer. To make an application single instance: @@ -1850,7 +1850,7 @@ To access the Code Editor window for application events: For more information, see [Application Page, Project Designer (Visual Basic)](https://learn.microsoft.com/visualstudio/ide/reference/application-page-project-designer-visual-basic). > [!NOTE] -> The Visual Basic compiler prevents applications that are built for debugging from raising this event, to enable a debugger to handle the unhandled exceptions. This means that if you are testing your application by running it under the Visual Studio Integrated Development Environment debugger, your `UnhandledException` event handler will not be called. For more information about building applications for debugging, see [/debug (Visual Basic)](/dotnet/visual-basic/reference/command-line-compiler/debug). +> The Visual Basic compiler prevents applications that are built for debugging from raising this event, to enable a debugger to handle the unhandled exceptions. This means that if you are testing your application by running it under the Visual Studio Integrated Development Environment debugger, your `UnhandledException` event handler will not be called. For more information about building applications for debugging, see [/debug (Visual Basic)](/dotnet/visual-basic/reference/command-line-compiler/debug). ## Tasks The following table lists examples of tasks that involve the `My.Application.UnhandledException` event. diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+BOFActionEnum.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+BOFActionEnum.xml index ea272e7b9e9..a560eff4e27 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+BOFActionEnum.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+BOFActionEnum.xml @@ -22,16 +22,16 @@ Provides constants for compatibility with the Visual Basic 6.0 property. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+EOFActionEnum.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+EOFActionEnum.xml index a906e167e1d..fa94b4b2478 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+EOFActionEnum.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+EOFActionEnum.xml @@ -22,16 +22,16 @@ Provides constants for compatibility with the Visual Basic 6.0 property. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+ErrorDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+ErrorDelegate.xml index 179e478b59a..5752891c41c 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+ErrorDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+ErrorDelegate.xml @@ -41,13 +41,13 @@ A that determines whether the user can cancel the error dialog box. Represents the method that will handle an event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FetchCompleteDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FetchCompleteDelegate.xml index 38d4f7fac11..80949c4c7ac 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FetchCompleteDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FetchCompleteDelegate.xml @@ -37,13 +37,13 @@ An object. Represents the method that will handle a event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FieldChangeCompleteDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FieldChangeCompleteDelegate.xml index e78b49622cb..162508e2ae5 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FieldChangeCompleteDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+FieldChangeCompleteDelegate.xml @@ -41,13 +41,13 @@ An object. Represents the method that will handle a event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+OrientationEnum.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+OrientationEnum.xml index bbda61fe89b..4d715b85285 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+OrientationEnum.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+OrientationEnum.xml @@ -22,14 +22,14 @@ Provides constants for compatibility with the Visual Basic 6.0 property. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+RecordsetChangeCompleteDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+RecordsetChangeCompleteDelegate.xml index 979fff1ff13..48888801293 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+RecordsetChangeCompleteDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+RecordsetChangeCompleteDelegate.xml @@ -39,13 +39,13 @@ An . Represents the method that will handle a event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeFieldDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeFieldDelegate.xml index 2a54f9ceb4b..51486091e76 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeFieldDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeFieldDelegate.xml @@ -39,13 +39,13 @@ An object. Represents the method that will handle a event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordDelegate.xml index d388d6dc464..b569e92461d 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordDelegate.xml @@ -39,13 +39,13 @@ An object. Represents the method that will handle a event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordsetDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordsetDelegate.xml index 68e8e0b4906..ec549f1c8e2 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordsetDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillChangeRecordsetDelegate.xml @@ -37,13 +37,13 @@ An object. Represents the method that will handle a event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillMoveDelegate.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillMoveDelegate.xml index 5c414de4a56..0e0483095bc 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillMoveDelegate.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC+WillMoveDelegate.xml @@ -37,13 +37,13 @@ An object. Represents the method that will handle a event. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC.xml index a328311cb72..aa8a16e18fd 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODC.xml @@ -33,7 +33,7 @@ Use this control in applications upgraded from Visual Basic 6.0 to continue to use an `ADO` data connection. For new development, you should consider using `ADO.NET` instead of `ADO`. For more information, see [Comparison of ADO.NET and ADO](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2008/904fck4k(v=vs.90)). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -61,7 +61,7 @@ Provides compatibility with the Visual Basic 6.0 `ADO Data Control`. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -105,7 +105,7 @@ The `DataSourceListener` monitors a data set for data members that are added, removed, or changed when the is connected to a data source. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -150,7 +150,7 @@ Setting the `BackColor` property affects only the part of the control where text is displayed. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -195,7 +195,7 @@ You can use the `BOF` and properties to determine whether an object contains rows or whether you have gone beyond the limits of an as you move from row to row. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -241,7 +241,7 @@ Use this property to specify the behavior when the `MovePrevious` button is pressed and the first row of a is the current row. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -289,7 +289,7 @@ While you can change value during the life of the cursor, the change only affects the number of records in the cache after the next fetch from the data source. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -335,7 +335,7 @@ After this period of time has elapsed without completing the command, the provider raises an exception to the calling application and cancels the command. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -385,7 +385,7 @@ Setting this property optimizes the execution of the command. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -431,7 +431,7 @@ Use the `ConnectionString` property to specify a data source by passing a detailed connection string that contains a series of argument = value statements separated by semicolons. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -477,7 +477,7 @@ This property corresponds to the ADO `ConnectionTimeout` property. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -527,7 +527,7 @@ This property corresponds to the ADO Command and Connection `CursorLocation` property. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -577,7 +577,7 @@ Determines the cursor type to use when opening a . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -619,7 +619,7 @@ When the disposing parameter is `true`, this method releases all resources held by any managed objects that this control references. This method invokes the `Dispose()` method of each referenced object. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -661,7 +661,7 @@ An `EndOfRecordset` event may occur if the `MoveNext` operation fails. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -706,7 +706,7 @@ You can use the and `EOF` properties to determine whether an object contains rows or whether you have gone beyond the limits of an as you move from row to row. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -752,7 +752,7 @@ Use this property to specify the behavior when the `MoveNext` button is pressed when the first row of a is the current row. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -784,7 +784,7 @@ Use this event to handle exceptions that derive from the underlying OLE DB `DataSource`. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -822,7 +822,7 @@ For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -860,7 +860,7 @@ For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -898,7 +898,7 @@ For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -938,7 +938,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -974,7 +974,7 @@ Used internally to return a count of data members for the . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1013,7 +1013,7 @@ Used internally to return the name of a data member for a . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1063,7 +1063,7 @@ In order to maintain sufficient control over the data being updated, `ADO` provides a number of concurrency options that control how other users are granted, or refused access to the data being updated. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1109,7 +1109,7 @@ This property corresponds to the ADO `Recordset.MaxRecords` property. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1159,7 +1159,7 @@ This property corresponds to the ADO `Mode` property. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1197,7 +1197,7 @@ For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1235,7 +1235,7 @@ The `OnResize` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1288,7 +1288,7 @@ This property corresponds to the ADO `Recordset.MaxRecords` property. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1330,7 +1330,7 @@ This property setting is write-only. It may only be provided in code, it cannot be read back from the `Password` property. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1368,7 +1368,7 @@ For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1414,7 +1414,7 @@ By using the `Recordset` property, you can use the methods, properties, and events of the ADO `ADODB.Recordset` Object. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1452,7 +1452,7 @@ For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1498,7 +1498,7 @@ The `RecordSource` contains both the name of a database table and a valid SQL string using syntax appropriate for the data source. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1534,7 +1534,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1578,7 +1578,7 @@ The `DataSourceListener` monitors a data set for data members that are added, removed, or changed when the is connected to a data source. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1632,7 +1632,7 @@ Use this property to communicate information such as the number of the current record to the user. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1678,7 +1678,7 @@ The user-name syntax depends on the data source. When a `UserName` and are supplied, the control uses the values to create a connection string ( property). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1715,7 +1715,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1752,7 +1752,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1789,7 +1789,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1826,7 +1826,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODCArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODCArray.xml index b865eba878d..488f11fc9d1 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODCArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ADODCArray.xml @@ -35,14 +35,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -78,14 +78,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -116,14 +116,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -148,16 +148,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -182,16 +182,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -216,16 +216,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -264,14 +264,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -296,16 +296,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -330,14 +330,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -362,18 +362,18 @@ Occurs when an in an is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -398,16 +398,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -432,14 +432,14 @@ Occurs when an control is loaded. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -464,16 +464,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -498,16 +498,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -532,14 +532,14 @@ Occurs when an control in an is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -564,14 +564,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -597,16 +597,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -632,16 +632,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -667,16 +667,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,16 +702,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -742,16 +742,16 @@ Occurs when the property of an control changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -776,34 +776,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -828,14 +828,14 @@ Occurs when an exception is raised for an control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -866,14 +866,14 @@ Occurs when an control completes a fetch from a database. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -904,14 +904,14 @@ Occurs while an control is fetching data from a database. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -942,14 +942,14 @@ Occurs when an update to a in a for an control is complete. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -974,16 +974,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1008,16 +1008,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1044,14 +1044,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1080,14 +1080,14 @@ Gets the index of an in a . A that represents the index of the specified . - - + + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1112,16 +1112,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1147,16 +1147,16 @@ Occurs when the user requests Help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1186,14 +1186,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1218,14 +1218,14 @@ Occurs when value of the property changes. - property is changed by either a programmatic modification or user interaction. For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1255,19 +1255,19 @@ Gets a specific element of an by index. Read-only. An at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1292,24 +1292,24 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1335,28 +1335,28 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1382,24 +1382,24 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1425,16 +1425,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1460,34 +1460,34 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1513,16 +1513,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1547,30 +1547,30 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1596,26 +1596,26 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1641,32 +1641,32 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1692,26 +1692,26 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1737,26 +1737,26 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1782,26 +1782,26 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1827,14 +1827,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1866,14 +1866,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when a , , or method has occurred in a for an control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1898,16 +1898,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1933,16 +1933,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1967,16 +1967,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2002,14 +2002,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2041,14 +2041,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the current record has changed in the of an control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2079,14 +2079,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the for an control changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2120,14 +2120,14 @@ MsgBox(CStr(ADODCArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2152,18 +2152,18 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2189,16 +2189,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2234,14 +2234,14 @@ MsgBox(CStr(ADODCArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2276,13 +2276,13 @@ MsgBox(CStr(ADODCArray(1).Text)) Returns a value that indicates whether an control is a member of this . If the specified is a member of a different , returns . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2307,16 +2307,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2341,18 +2341,18 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2377,16 +2377,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2412,16 +2412,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2446,16 +2446,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2480,46 +2480,46 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2545,46 +2545,46 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2610,16 +2610,16 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2650,14 +2650,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs before a in the of an control changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2688,14 +2688,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs before the current record in a of an control changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2726,14 +2726,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs before the of an control changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2764,14 +2764,14 @@ MsgBox(CStr(ADODCArray(1).Text)) Occurs before the , , or method of a of an control executes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseControlArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseControlArray.xml index d89e0ccf778..10498503570 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseControlArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseControlArray.xml @@ -33,7 +33,7 @@ You do not typically inherit from `BaseControlArray`. To create your own control array, inherit from one of the control array classes in the `Microsoft.VisualBasic.Compatibility.VB6` namespace. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -70,7 +70,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this constructor is typically not called directly but is instead called by a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -102,7 +102,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this constructor is usually not called directly but is instead called by a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -139,7 +139,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this `Protected` method is usually not called directly but is instead called by a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -180,7 +180,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this `Protected` method is usually not called directly but is instead called by a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -219,7 +219,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this `Protected` method is usually not called directly but is instead called by a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -259,7 +259,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. - > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -297,7 +297,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this `Protected` method is usually not called directly but is instead called by a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -337,7 +337,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this `Protected` method is usually not called directly but is instead called by a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -371,7 +371,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -402,7 +402,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -433,7 +433,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -468,7 +468,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -538,7 +538,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -601,7 +601,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -638,7 +638,7 @@ The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -672,7 +672,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -707,7 +707,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -744,7 +744,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -779,7 +779,7 @@ Design environments typically use this method to start the initialization of a component that is used on a form or used by another component. The method ends the initialization. Using the `BeginInit` and methods prevents the control from being used before it is fully initialized. The initialization occurs at run time. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -814,7 +814,7 @@ Design environments typically use this method to finish the initialization of a component that is used on a form or used by another component. The `EndInit` method ends the initialization. Using the and `EndInit` methods prevents the control from being used before it is fully initialized. The initialization occurs at run time. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -849,7 +849,7 @@ The class is the base class for all control arrays used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -884,12 +884,12 @@ This method is the equivalent of the Visual Basic 6.0 `Unload` function for dynamically removing a control array element. > [!NOTE] -> Only controls that were added dynamically by using the method can be removed from the control array. +> Only controls that were added dynamically by using the method can be removed from the control array. The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseOcxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseOcxArray.xml index 6201967b073..65ec20a78b3 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseOcxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/BaseOcxArray.xml @@ -23,14 +23,14 @@ Provides a control array of ActiveX controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -66,14 +66,14 @@ Initializes a new instance of the class. - method to create the initial element in the array. - + method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -104,14 +104,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - method to create the initial element in the array. - + method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -136,16 +136,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -170,16 +170,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -210,16 +210,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -244,16 +244,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -278,14 +278,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -310,14 +310,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -342,16 +342,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -376,14 +376,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -412,14 +412,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -444,34 +444,34 @@ Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -497,16 +497,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -531,16 +531,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -565,29 +565,29 @@ Occurs when the control loses or gains mouse capture. - event instead of the second `MouseClick` event. - + event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -612,14 +612,14 @@ Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -645,16 +645,16 @@ Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -679,16 +679,16 @@ Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -713,16 +713,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -747,18 +747,18 @@ Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -784,16 +784,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -818,16 +818,16 @@ Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -853,46 +853,46 @@ Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -918,46 +918,46 @@ Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - `Validating` - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - `Validating` - - `Validated` - - If the property is set to `false`, the `Validating` and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + `Validating` + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + `Validating` + + `Validated` + + If the property is set to `false`, the `Validating` and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -983,16 +983,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/BindingCollectionEnumerator.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/BindingCollectionEnumerator.xml index ae6f1b13d91..1c8afa1ba7d 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/BindingCollectionEnumerator.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/BindingCollectionEnumerator.xml @@ -31,14 +31,14 @@ Supports a simple iteration over a binding collection in an application upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -67,14 +67,14 @@ Gets the current element in the binding collection. The current element in the collection. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -105,14 +105,14 @@ if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -141,14 +141,14 @@ Sets the enumerator to its initial position, which is before the first element in the collection. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ButtonArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ButtonArray.xml index 91a5a7fcfb0..9454a953aa1 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ButtonArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ButtonArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -280,16 +280,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -328,14 +328,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,16 +360,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,14 +394,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -426,18 +426,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -462,16 +462,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -502,16 +502,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -536,16 +536,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -570,14 +570,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -602,14 +602,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,16 +634,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -668,16 +668,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,14 +702,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -735,16 +735,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -770,16 +770,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -805,16 +805,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -840,16 +840,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -874,34 +874,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -926,16 +926,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -960,16 +960,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -996,14 +996,14 @@ Overrides . The type of control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1032,14 +1032,14 @@ Gets the index of a in a . A that represents the index of the specified . - or . - + or . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1064,16 +1064,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1099,16 +1099,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1138,14 +1138,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1174,19 +1174,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1211,24 +1211,24 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1254,28 +1254,28 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1301,24 +1301,24 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1344,16 +1344,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1379,34 +1379,34 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1432,16 +1432,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1466,16 +1466,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1500,14 +1500,14 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1533,27 +1533,27 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control is clicked by the mouse. - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1579,26 +1579,26 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1624,26 +1624,26 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1669,30 +1669,30 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1718,26 +1718,26 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1763,26 +1763,26 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1808,26 +1808,26 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1853,14 +1853,14 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1886,16 +1886,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1920,16 +1920,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1955,16 +1955,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1989,16 +1989,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2024,14 +2024,14 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2057,16 +2057,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2100,14 +2100,14 @@ MsgBox(CStr(ButtonArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2132,18 +2132,18 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get it's property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get it's property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2169,16 +2169,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2214,14 +2214,14 @@ MsgBox(CStr(ButtonArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2257,14 +2257,14 @@ MsgBox(CStr(ButtonArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2289,16 +2289,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2323,18 +2323,18 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2359,16 +2359,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2394,16 +2394,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2428,16 +2428,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2462,16 +2462,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2496,46 +2496,46 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2561,46 +2561,46 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2626,16 +2626,16 @@ MsgBox(CStr(ButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckBoxArray.xml index b63e1d6556c..23977182fc9 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -280,16 +280,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -314,16 +314,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -362,14 +362,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,16 +394,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -428,14 +428,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -460,16 +460,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -494,16 +494,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -528,18 +528,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -564,16 +564,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -604,16 +604,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -638,16 +638,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -672,14 +672,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -704,14 +704,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -736,16 +736,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -770,16 +770,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -804,14 +804,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -837,16 +837,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -872,16 +872,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -907,16 +907,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -942,16 +942,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -976,34 +976,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1028,16 +1028,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1062,16 +1062,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1098,14 +1098,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1134,14 +1134,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1166,16 +1166,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1201,16 +1201,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1240,14 +1240,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1276,19 +1276,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1313,24 +1313,24 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1356,28 +1356,28 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1403,24 +1403,24 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1446,16 +1446,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1481,34 +1481,34 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1534,16 +1534,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1568,16 +1568,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1602,14 +1602,14 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1635,29 +1635,29 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1683,26 +1683,26 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1728,26 +1728,26 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1773,30 +1773,30 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1822,26 +1822,26 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1867,26 +1867,26 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1912,26 +1912,26 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1957,14 +1957,14 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1990,16 +1990,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2024,16 +2024,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2059,16 +2059,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2093,16 +2093,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2128,14 +2128,14 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2161,16 +2161,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2204,14 +2204,14 @@ MsgBox(CStr(CheckBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2236,18 +2236,18 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get it's property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get it's property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2273,16 +2273,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2318,14 +2318,14 @@ MsgBox(CStr(CheckBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2361,14 +2361,14 @@ MsgBox(CStr(CheckBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2393,16 +2393,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2427,18 +2427,18 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2463,16 +2463,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2498,16 +2498,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2532,16 +2532,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2566,16 +2566,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2600,46 +2600,46 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2665,46 +2665,46 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2730,16 +2730,16 @@ MsgBox(CStr(CheckBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckedListBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckedListBoxArray.xml index cf37bad1e8e..e8237d3607e 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckedListBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/CheckedListBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,16 +258,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,14 +292,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -324,18 +324,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,16 +360,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -400,16 +400,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,14 +468,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -500,14 +500,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -532,16 +532,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,14 +600,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -632,14 +632,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -665,16 +665,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -700,16 +700,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -735,16 +735,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -770,16 +770,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -804,34 +804,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -856,16 +856,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -890,16 +890,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -924,14 +924,14 @@ Occurs when the control is bound to a data value. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -956,16 +956,16 @@ Occurs when value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -990,16 +990,16 @@ Occurs when value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1026,14 +1026,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1062,14 +1062,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1094,16 +1094,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1129,16 +1129,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1168,14 +1168,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1200,16 +1200,16 @@ Occurs when value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1238,19 +1238,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1275,16 +1275,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the checked state of an item changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1309,24 +1309,24 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1352,28 +1352,28 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1399,24 +1399,24 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1442,16 +1442,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1477,34 +1477,34 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1530,16 +1530,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1564,16 +1564,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1598,14 +1598,14 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1631,29 +1631,29 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1679,37 +1679,37 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when a control is double-clicked by the mouse. - - - - - - - - - - - - - `MouseDoubleClick` - - - -> [!NOTE] -> `DoubleClick` events are logically higher-level events of a control. They may be raised by other user actions, such as shortcut key combinations. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + + + + + `MouseDoubleClick` + + + +> [!NOTE] +> `DoubleClick` events are logically higher-level events of a control. They may be raised by other user actions, such as shortcut key combinations. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1734,30 +1734,30 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1783,30 +1783,30 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - - - - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1832,34 +1832,34 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1885,26 +1885,26 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1930,26 +1930,26 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1975,26 +1975,26 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2020,14 +2020,14 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2053,16 +2053,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2087,16 +2087,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2121,16 +2121,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2156,16 +2156,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2191,16 +2191,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2234,14 +2234,14 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2266,18 +2266,18 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get it's property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get it's property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2303,16 +2303,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2337,16 +2337,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the selected index in a control array changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2372,16 +2372,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the property changes. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2417,14 +2417,14 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2460,14 +2460,14 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2492,16 +2492,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2526,18 +2526,18 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2562,16 +2562,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2597,16 +2597,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2631,16 +2631,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2665,46 +2665,46 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2730,46 +2730,46 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2795,16 +2795,16 @@ MsgBox(CStr(CheckedListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ColorDialogArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ColorDialogArray.xml index 6a3dc55dec4..2a8e3211270 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ColorDialogArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ColorDialogArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -228,14 +228,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -260,16 +260,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -299,14 +299,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -335,19 +335,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -381,14 +381,14 @@ MsgBox(CStr(ColorDialogArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -424,14 +424,14 @@ MsgBox(CStr(ColorDialogArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -467,14 +467,14 @@ MsgBox(CStr(ColorDialogArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ComboBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ComboBoxArray.xml index 787ea33da2d..d31421e9937 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ComboBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ComboBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,16 +258,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,14 +292,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -324,18 +324,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,16 +360,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -400,16 +400,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,14 +468,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -500,14 +500,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -532,16 +532,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,16 +600,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,16 +634,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -668,14 +668,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -700,14 +700,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -733,16 +733,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -768,16 +768,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -803,16 +803,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,16 +838,16 @@ Occurs when a visual aspect of an owner-drawn changes. - . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -872,14 +872,14 @@ Occurs when the drop-down part of a is shown. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -904,16 +904,16 @@ Occurs when the drop-down part of the is no longer visible. - from changes you made in response to the event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + from changes you made in response to the event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -938,16 +938,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -972,16 +972,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1006,14 +1006,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1038,16 +1038,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1072,16 +1072,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1106,16 +1106,16 @@ Occurs when the control is bound to a data value. - is formatted. Handling this event gives you access to the string to be displayed for this list item, through the `Value` property of the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is formatted. Handling this event gives you access to the string to be displayed for this list item, through the `Value` property of the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1140,16 +1140,16 @@ Occurs when value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1174,16 +1174,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1210,14 +1210,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1246,14 +1246,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1278,16 +1278,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1312,16 +1312,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1351,14 +1351,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1383,16 +1383,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1421,19 +1421,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1458,24 +1458,24 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1501,28 +1501,28 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1548,24 +1548,24 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1591,16 +1591,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1626,34 +1626,34 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1679,16 +1679,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1713,16 +1713,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1747,16 +1747,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs every time that an owner-drawn item has to be drawn and when the sizes of the list items are determined. - event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1781,29 +1781,29 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1828,29 +1828,29 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1876,29 +1876,29 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1924,26 +1924,26 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1969,26 +1969,26 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2014,30 +2014,30 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2063,26 +2063,26 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2108,26 +2108,26 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2153,26 +2153,26 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2198,14 +2198,14 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2231,16 +2231,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2265,16 +2265,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2299,16 +2299,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2334,16 +2334,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2369,16 +2369,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2412,14 +2412,14 @@ MsgBox(CStr(ComboBoxArray(1).Text)) A . Not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2444,18 +2444,18 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2481,16 +2481,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2515,16 +2515,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2549,16 +2549,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2583,16 +2583,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the selected item has changed and that change is displayed in the . - or to capture user changes, because those events are also raised when the selection changes programmatically. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or to capture user changes, because those events are also raised when the selection changes programmatically. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2628,14 +2628,14 @@ MsgBox(CStr(ComboBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2671,14 +2671,14 @@ MsgBox(CStr(ComboBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2703,16 +2703,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2737,18 +2737,18 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2773,16 +2773,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2808,16 +2808,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2842,16 +2842,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2876,16 +2876,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2910,16 +2910,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control has formatted the text, but before the text is displayed. - property is programmatically changed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is programmatically changed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2944,46 +2944,46 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3009,46 +3009,46 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3074,16 +3074,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3108,16 +3108,16 @@ MsgBox(CStr(ComboBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/DBKINDENUM.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/DBKINDENUM.xml index 128e50ed4fd..8087a3fcfdd 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/DBKINDENUM.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/DBKINDENUM.xml @@ -26,13 +26,13 @@ Provides an enumeration for use by the tools for upgrading Visual Basic 6.0 applications to Visual Basic. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBox.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBox.xml index de84f800d4d..5a6dc9f83d7 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBox.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBox.xml @@ -35,7 +35,7 @@ Set the , , and properties to enable a user to access items in a list. If you also display the and controls, you can write code to synchronize them with the control and with each other. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -65,7 +65,7 @@ A `DirListBox` control displays directories and paths at run time. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -99,7 +99,7 @@ The `Change` event occurs when the selection in a control changes, either when the user double-clicks a new directory or when you change the property setting through code. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -147,7 +147,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -195,7 +195,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -245,7 +245,7 @@ For a control, the `Index` number sequence is based on the current directories and subdirectories when the control is created at run time. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -289,7 +289,7 @@ Use this property to return the number of subdirectories in the currently selected directory. The `DirListCount` property works together with the and properties. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -335,7 +335,7 @@ The expression `instance.DirList(instance.DirListIndex)` returns the string for the currently selected directory. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -379,7 +379,7 @@ When the disposing parameter is `true`, this method releases all resources held by any managed objects that this control references. This method invokes the `Dispose()` method of each referenced object. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -427,7 +427,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -475,7 +475,7 @@ This property is not required for the control; the does not support items of variable height. It is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -523,7 +523,7 @@ This property should not be used for the control; trying to add or remove directories from the collection could cause an exception. It is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -572,7 +572,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -616,7 +616,7 @@ The `OnBackColorChanged` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -658,7 +658,7 @@ The `OnChanged` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -705,7 +705,7 @@ The `OnDoubleClick` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -748,7 +748,7 @@ The `OnDrawItem` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -791,7 +791,7 @@ The `OnFontChanged` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -834,7 +834,7 @@ The `OnHandleCreated` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -877,7 +877,7 @@ The `OnSelectedIndexChanged` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -940,7 +940,7 @@ Changing the value of `Path` for a control generates an event. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -974,7 +974,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1025,7 +1025,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1074,7 +1074,7 @@ For the control, `Sorted` always returns false. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -1122,7 +1122,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBoxArray.xml index 3809abd395f..f26745a8a3d 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/DirListBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,16 +258,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,16 +292,16 @@ Occurs when the contents of a control has changed. - control changes, either when the user double-clicks a new directory or when you change the property setting through code. - - For more information about handling events, see [Handling and Raising Events](/dotnet/standard/events/). - + control changes, either when the user double-clicks a new directory or when you change the property setting through code. + + For more information about handling events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,14 +326,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -358,16 +358,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -392,16 +392,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -426,16 +426,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -460,16 +460,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -494,16 +494,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -528,14 +528,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -560,14 +560,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -593,16 +593,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -628,16 +628,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -663,16 +663,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -698,16 +698,16 @@ Occurs when a visual aspect of an owner-drawn changes. - . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -732,16 +732,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -766,34 +766,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -818,16 +818,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -852,16 +852,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -888,14 +888,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -924,14 +924,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -956,16 +956,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -991,16 +991,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1030,14 +1030,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1062,16 +1062,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1100,19 +1100,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1137,24 +1137,24 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1180,28 +1180,28 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1227,24 +1227,24 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1270,16 +1270,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1305,34 +1305,34 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1358,16 +1358,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1392,16 +1392,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs each time an owner-drawn item needs to be drawn and when the sizes of the list items are determined. - event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1426,30 +1426,30 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1475,26 +1475,26 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - -- - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + +- + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1520,32 +1520,32 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1571,26 +1571,26 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1616,26 +1616,26 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1661,26 +1661,26 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1706,14 +1706,14 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1739,16 +1739,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1773,16 +1773,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1808,14 +1808,14 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1850,14 +1850,14 @@ MsgBox(CStr(DirListBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1882,18 +1882,18 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1919,16 +1919,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1953,16 +1953,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1987,16 +1987,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2032,14 +2032,14 @@ MsgBox(CStr(DirListBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2075,14 +2075,14 @@ MsgBox(CStr(DirListBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2107,16 +2107,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2141,18 +2141,18 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2177,16 +2177,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2212,16 +2212,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2246,16 +2246,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2280,46 +2280,46 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2345,46 +2345,46 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2410,16 +2410,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2444,16 +2444,16 @@ MsgBox(CStr(DirListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBox.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBox.xml index 42682c9f4c1..a8b023bf003 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBox.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBox.xml @@ -35,7 +35,7 @@ If you also display the and controls, you can write code to synchronize them with the `DriveListBox` control and with each other. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -65,7 +65,7 @@ A `DriveListBox` control enables a user to select a valid disk drive at run time. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -113,7 +113,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -161,7 +161,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -201,7 +201,7 @@ When the disposing parameter is `true`, this method releases all resources held by any managed objects that this control references. This method invokes the `Dispose()` method of each referenced object. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -249,7 +249,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -297,7 +297,7 @@ The valid drives for the `Drive` property include all drives present in or connected to the system when the control is created or refreshed at run time. The default setting of the `Drive` property is the current drive. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -347,7 +347,7 @@ If you set the `DropDownStyle` property to , you can select only valid values from the list. If you set the `DropDownStyle` property to , you can type any value in the editable area of the . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -391,7 +391,7 @@ This property is not required for the control; the does not support items of variable height. It is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -448,7 +448,7 @@ Use this property to retrieve a list of drives that are currently displayed in a . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -496,7 +496,7 @@ Use this property to retrieve the name of a drive in a . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -544,7 +544,7 @@ Use this property to limit the length of text that a user can enter into the . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -584,7 +584,7 @@ The `OnBackColorChanged` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -627,7 +627,7 @@ The `OnDrawItem` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -670,7 +670,7 @@ The `OnFontChanged` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -713,7 +713,7 @@ The `OnHandleCreated` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -756,7 +756,7 @@ The `OnSelectedIndexChanged` method also enables derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -797,7 +797,7 @@ ## Remarks > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -849,7 +849,7 @@ For the control, `Sorted` always returns `false`. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -897,7 +897,7 @@ If the `Text` is a valid drive, the value of the `Text` property is the same e as the property. > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -945,7 +945,7 @@ This property should not be set for the control; it is provided only because the control inherits from . > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> @@ -985,7 +985,7 @@ The `WndProc` method corresponds exactly to the Windows `WindowProc` function. For more information about processing Windows messages, see [WindowProc callback function](https://learn.microsoft.com/previous-versions/windows/desktop/legacy/ms633573(v=vs.85)). > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBoxArray.xml index 7ba06525638..bc7bc78814e 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/DriveListBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,16 +258,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,14 +292,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -324,18 +324,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,16 +360,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,16 +394,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -428,16 +428,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -462,16 +462,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -496,14 +496,14 @@ Occurs when the value of the property changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -529,14 +529,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -561,14 +561,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -594,16 +594,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -629,16 +629,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -664,16 +664,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -699,16 +699,16 @@ Occurs when a visual aspect of an owner-drawn changes. - . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -733,14 +733,14 @@ Occurs when the drop-down portion of a is shown. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -765,16 +765,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -799,16 +799,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -833,34 +833,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -885,16 +885,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -919,16 +919,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -955,14 +955,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -991,14 +991,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1023,16 +1023,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1058,16 +1058,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1097,14 +1097,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1129,16 +1129,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1167,19 +1167,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1204,24 +1204,24 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1247,28 +1247,28 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1294,24 +1294,24 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1337,16 +1337,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1372,34 +1372,34 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1425,16 +1425,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1459,16 +1459,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs each time an owner-drawn item needs to be drawn and when the sizes of the list items are determined. - event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1493,30 +1493,30 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1542,26 +1542,26 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1587,32 +1587,32 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1638,26 +1638,26 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1683,26 +1683,26 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1728,26 +1728,26 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1773,14 +1773,14 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1806,16 +1806,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1840,16 +1840,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1875,14 +1875,14 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1917,14 +1917,14 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1949,18 +1949,18 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1986,16 +1986,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2020,16 +2020,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2054,16 +2054,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2088,16 +2088,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the selected item has changed and that change is displayed in the . - or to capture user changes, because those events are also raised when the selection changes programmatically. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or to capture user changes, because those events are also raised when the selection changes programmatically. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2133,14 +2133,14 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2176,14 +2176,14 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2208,16 +2208,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2242,18 +2242,18 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2278,16 +2278,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2313,16 +2313,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2347,16 +2347,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2381,16 +2381,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2415,46 +2415,46 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2480,46 +2480,46 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2545,16 +2545,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2579,16 +2579,16 @@ MsgBox(CStr(DriveListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBox.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBox.xml index 11b0505ed4f..84b3c3338a7 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBox.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBox.xml @@ -864,7 +864,7 @@ Use the `ReadOnly` property for a control to specify whether files that have read-only attributes are displayed in the file list or not. > [!NOTE] -> If the property is set to `true` (the default), files that have read-only attributes are displayed regardless of the `ReadOnly` property setting. +> If the property is set to `true` (the default), files that have read-only attributes are displayed regardless of the `ReadOnly` property setting. [!INCLUDE[Note_compatibility](~/includes/note-compatibility-md.md)] diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBoxArray.xml index 11dbe5db931..b459e822eb7 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/FileListBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,16 +258,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,14 +292,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -324,16 +324,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -358,16 +358,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -392,16 +392,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -426,16 +426,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -460,16 +460,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -494,14 +494,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -526,14 +526,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -559,16 +559,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -594,16 +594,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -629,16 +629,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -664,16 +664,16 @@ Occurs when a visual aspect of an owner-drawn changes. - . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -698,16 +698,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -732,34 +732,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -784,16 +784,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -818,16 +818,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -854,14 +854,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -890,14 +890,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -922,16 +922,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -957,16 +957,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -996,14 +996,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1028,16 +1028,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1066,19 +1066,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1103,24 +1103,24 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1146,28 +1146,28 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + `KeyPress` + + + + The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1193,24 +1193,24 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1236,16 +1236,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1271,34 +1271,34 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1324,16 +1324,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1358,16 +1358,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs every time an owner-drawn item has to be drawn and when the sizes of the list items are determined. - event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1392,30 +1392,30 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1441,26 +1441,26 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1486,32 +1486,32 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1537,26 +1537,26 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1582,26 +1582,26 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1627,26 +1627,26 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1672,14 +1672,14 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1705,16 +1705,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1739,13 +1739,13 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the path is changed by setting the or property in code. - control. When you assign a string that contains a new path to the property, the control invokes the `PathChange` event. - - [!INCLUDE[Note_compatibility](~/includes/note-compatibility-md.md)] - + control. When you assign a string that contains a new path to the property, the control invokes the `PathChange` event. + + [!INCLUDE[Note_compatibility](~/includes/note-compatibility-md.md)] + ]]> @@ -1770,11 +1770,11 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the file listing pattern, such as "*.\*", is changed by setting the or property in code. - control. When you assign a string that contains a new pattern to the property, the `FileListBox` invokes the event. - + control. When you assign a string that contains a new pattern to the property, the `FileListBox` invokes the event. + ]]> @@ -1799,14 +1799,14 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1832,14 +1832,14 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1874,14 +1874,14 @@ MsgBox(CStr(FileListBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1906,18 +1906,18 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1943,16 +1943,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1977,16 +1977,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2011,16 +2011,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2056,14 +2056,14 @@ MsgBox(CStr(FileListBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2099,14 +2099,14 @@ MsgBox(CStr(FileListBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2131,16 +2131,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2165,18 +2165,18 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2201,16 +2201,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2236,16 +2236,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2270,16 +2270,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2304,46 +2304,46 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2369,46 +2369,46 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2434,16 +2434,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2468,16 +2468,16 @@ MsgBox(CStr(FileListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/FontDialogArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/FontDialogArray.xml index 19b5286706a..c57ed9f644b 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/FontDialogArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/FontDialogArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the user clicks the button in the font dialog box. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -262,14 +262,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -294,16 +294,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -333,14 +333,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -369,19 +369,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -415,14 +415,14 @@ MsgBox(CStr(FontDialogArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -458,14 +458,14 @@ MsgBox(CStr(FontDialogArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -501,14 +501,14 @@ MsgBox(CStr(FontDialogArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/FormShowConstants.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/FormShowConstants.xml index 2cfee01dbae..a3a343b7e0c 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/FormShowConstants.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/FormShowConstants.xml @@ -22,16 +22,16 @@ Provides constants for compatibility with the Visual Basic 6.0 method. - and . - - These constants enable code that has been upgraded from Visual Basic 6.0 to continue to run without additional modification. - + and . + + These constants enable code that has been upgraded from Visual Basic 6.0 to continue to run without additional modification. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/GroupBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/GroupBoxArray.xml index 1344a2c46a8..b24571cc33f 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/GroupBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/GroupBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -280,16 +280,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -328,14 +328,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,16 +360,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,14 +394,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -426,16 +426,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -466,16 +466,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -500,16 +500,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -534,14 +534,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,14 +566,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -598,16 +598,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -632,16 +632,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -666,14 +666,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -699,16 +699,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -734,16 +734,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -769,16 +769,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -804,16 +804,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,34 +838,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -890,16 +890,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -924,16 +924,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -960,14 +960,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -996,14 +996,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1028,16 +1028,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1063,16 +1063,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1102,14 +1102,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1134,16 +1134,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1172,19 +1172,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1209,16 +1209,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1244,34 +1244,34 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1297,16 +1297,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1331,16 +1331,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1365,14 +1365,14 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1398,32 +1398,32 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1449,14 +1449,14 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1482,16 +1482,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1516,16 +1516,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1551,16 +1551,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1585,16 +1585,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1620,14 +1620,14 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1653,16 +1653,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1696,14 +1696,14 @@ MsgBox(CStr(GroupBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1728,18 +1728,18 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1765,16 +1765,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1810,14 +1810,14 @@ MsgBox(CStr(GroupBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1853,14 +1853,14 @@ MsgBox(CStr(GroupBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1885,16 +1885,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1919,18 +1919,18 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1955,16 +1955,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1990,16 +1990,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2024,16 +2024,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2058,46 +2058,46 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2123,46 +2123,46 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2188,16 +2188,16 @@ MsgBox(CStr(GroupBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/HScrollBarArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/HScrollBarArray.xml index a3659b09069..cd6634d24d2 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/HScrollBarArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/HScrollBarArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,16 +224,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,14 +258,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -290,16 +290,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -330,16 +330,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -364,16 +364,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -398,14 +398,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -430,14 +430,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -462,16 +462,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -496,16 +496,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -530,14 +530,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -563,16 +563,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -598,16 +598,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -633,16 +633,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -668,16 +668,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,34 +702,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -756,14 +756,14 @@ Overrides . This method must be overridden. The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -792,19 +792,19 @@ Gets the index of an in an . An at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -829,16 +829,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -864,16 +864,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -903,14 +903,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) An control. Gets a value that determines whether a control is a member of an . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -939,19 +939,19 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Gets a specific element of an by index. Read-only. An at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -976,24 +976,24 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1019,28 +1019,28 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + `KeyPress` + + + + The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1066,24 +1066,24 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1109,16 +1109,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1144,34 +1144,34 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1197,16 +1197,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1231,16 +1231,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1265,14 +1265,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1298,26 +1298,26 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1343,32 +1343,32 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1394,26 +1394,26 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1439,14 +1439,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1472,16 +1472,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1506,16 +1506,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1540,16 +1540,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1575,14 +1575,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1608,16 +1608,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1651,14 +1651,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1683,18 +1683,18 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1720,16 +1720,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1754,14 +1754,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the user scrolls the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1797,14 +1797,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1840,14 +1840,14 @@ MsgBox(CStr(HScrollBarArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1872,16 +1872,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1906,18 +1906,18 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1942,16 +1942,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1977,16 +1977,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2011,16 +2011,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2045,46 +2045,46 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2110,46 +2110,46 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2175,16 +2175,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2209,16 +2209,16 @@ MsgBox(CStr(HScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IAccessor.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IAccessor.xml index da801d5b49e..57d4f932967 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IAccessor.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IAccessor.xml @@ -28,13 +28,13 @@ Provides an implementation of the OLE DB interface for use by applications upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -64,13 +64,13 @@ A pointer to memory in which to return the reference count of the accessor handle. If is a null pointer, no reference count is returned. Adds a reference count to an existing accessor. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -108,13 +108,13 @@ A pointer to an array of values. Creates an accessor from a set of bindings. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -148,13 +148,13 @@ A pointer to memory in which to return an array of structures. Returns the bindings in an accessor. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -184,13 +184,13 @@ A pointer to memory in which to return the remaining reference count of the accessor handle. Releases an accessor. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IChapteredRowset.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IChapteredRowset.xml index 1d89e306815..bb6c744ba6c 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IChapteredRowset.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IChapteredRowset.xml @@ -28,13 +28,13 @@ Provides an implementation of the OLE DB interface for use by applications upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -64,13 +64,13 @@ A pointer to memory in which to return the reference count of the chapter handle. Adds a reference count to an existing chapter. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -100,13 +100,13 @@ A pointer to memory in which to return the reference count of the chapter handle. Releases a chapter. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IConnectionPoint.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IConnectionPoint.xml index 80c9ab7f2d0..2a98b6e7860 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IConnectionPoint.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IConnectionPoint.xml @@ -28,14 +28,14 @@ Provides an implementation of the OLE DB interface for use by applications upgraded from Visual Basic 6.0. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -65,14 +65,14 @@ When this method returns, contains the connection cookie. This parameter is passed uninitialized. Establishes an advisory connection between the connection point and the caller's sink object. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -100,14 +100,14 @@ When this method returns, contains the newly created enumerator. This parameter is passed uninitialized. Creates an enumerator object for iteration through the connections that exist to this connection point. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -135,14 +135,14 @@ When this parameter returns, contains the IID of the outgoing interface managed by this connection point. This parameter is passed uninitialized. Returns the IID of the outgoing interface managed by this connection point. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -170,14 +170,14 @@ When this parameter returns, contains the connectable object's interface. This parameter is passed uninitialized. Retrieves the interface pointer to the connectable object that conceptually owns this connection point. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -205,14 +205,14 @@ The connection cookie previously returned from the method. Closes an advisory connection that was previously established through the method. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnectionPoints.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnectionPoints.xml index e89f783bbdb..e26892dbf2c 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnectionPoints.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnectionPoints.xml @@ -28,14 +28,14 @@ Manages the definition of the interface. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -63,13 +63,13 @@ When this method returns, contains a reference to the newly created enumerator. This parameter is passed uninitialized. Creates a new enumerator that contains the same enumeration state as the current one. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -101,13 +101,13 @@ When this method returns, contains a reference to the actual number of connections enumerated in . Retrieves a specified number of items in the enumeration sequence. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -132,13 +132,13 @@ Resets the enumeration sequence to the beginning. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -166,13 +166,13 @@ The number of elements to skip in the enumeration. Skips a specified number of items in the enumeration sequence. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnections.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnections.xml index cd520707007..42e78a82256 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnections.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IEnumConnections.xml @@ -28,14 +28,14 @@ Manages the definition of the interface. - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -63,13 +63,13 @@ When this method returns, contains a reference to the newly created enumerator. This parameter is passed uninitialized. Creates a new enumerator that contains the same enumeration state as the current one. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -101,13 +101,13 @@ When this method returns, contains a reference to the actual number of connections enumerated in . Retrieves a specified number of items in the enumeration sequence. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -132,13 +132,13 @@ Resets the enumeration sequence to the start. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -166,13 +166,13 @@ The number of elements to skip in the enumeration. Skips a specified number of items in the enumeration sequence. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowPositionChange.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowPositionChange.xml index b0f684edcdb..2f74930e6fd 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowPositionChange.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowPositionChange.xml @@ -28,13 +28,13 @@ Provides an implementation of the OLE DB interface for use by applications upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -67,13 +67,13 @@ Notifies the consumer of a row position object of a change to the current row position. An that represents the result. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetInfo.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetInfo.xml index 056d027a66b..690fdec5d6f 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetInfo.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetInfo.xml @@ -28,13 +28,13 @@ Provides an implementation of the OLE DB interface for use by applications upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -68,13 +68,13 @@ A pointer to memory in which to return an array of structures. Returns the current settings of all properties supported by the rowset. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -106,13 +106,13 @@ A pointer to memory in which to return an interface pointer on the rowset that interprets values from this column. Returns an interface pointer to the rowset to which a bookmark or chapter applies. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -142,13 +142,13 @@ A pointer to memory in which to return the interface pointer. Returns an interface pointer on the object (command or session) that created this rowset. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetNotify.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetNotify.xml index 2f2ff6b3053..c4148010287 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetNotify.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/IRowsetNotify.xml @@ -28,13 +28,13 @@ Provides an implementation of the OLE DB interface for use by applications upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -75,13 +75,13 @@ Notifies the consumer of any change to the value of a column. An representing the result. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -120,13 +120,13 @@ Notifies the consumer of the first change to a row or of any change that affects the entire row. An representing the result. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -161,13 +161,13 @@ Notifies the consumer of any change affecting the entire rowset. An representing the result. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ImageListArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ImageListArray.xml index 7edb7f42cb3..c15f17b3bc5 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ImageListArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ImageListArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -228,14 +228,14 @@ Gets the index of an in an . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -264,14 +264,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -300,19 +300,19 @@ Gets a specific element of an by index. Read-only. An at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -346,14 +346,14 @@ MsgBox(CStr(ImageListArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -389,14 +389,14 @@ MsgBox(CStr(ImageListArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -432,14 +432,14 @@ MsgBox(CStr(ImageListArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/LabelArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/LabelArray.xml index cb3eb85e957..49fd0ad1d39 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/LabelArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/LabelArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -260,14 +260,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,16 +292,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,14 +326,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -358,18 +358,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,16 +394,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,16 +468,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -502,14 +502,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -534,14 +534,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,16 +600,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,14 +634,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -666,14 +666,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -699,16 +699,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -734,16 +734,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -769,16 +769,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -804,16 +804,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,34 +838,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -890,16 +890,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -924,16 +924,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -960,14 +960,14 @@ Overrides . This method must be overridden. The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -996,14 +996,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1028,16 +1028,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1063,16 +1063,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1102,14 +1102,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1138,19 +1138,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1175,16 +1175,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1210,34 +1210,34 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1263,16 +1263,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1297,16 +1297,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1331,14 +1331,14 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1364,27 +1364,27 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control is clicked by the mouse. - - - / `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1410,29 +1410,29 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1458,30 +1458,30 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1507,26 +1507,26 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1552,32 +1552,32 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1603,26 +1603,26 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1648,26 +1648,26 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1693,26 +1693,26 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1738,14 +1738,14 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1771,16 +1771,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1805,16 +1805,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1840,16 +1840,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1874,16 +1874,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1909,14 +1909,14 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1942,16 +1942,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1985,14 +1985,14 @@ MsgBox(CStr(LabelArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2017,18 +2017,18 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2054,16 +2054,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2099,14 +2099,14 @@ MsgBox(CStr(LabelArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2142,14 +2142,14 @@ MsgBox(CStr(LabelArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2174,16 +2174,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2208,18 +2208,18 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2244,16 +2244,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2279,16 +2279,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2313,16 +2313,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2347,16 +2347,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2381,46 +2381,46 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2446,46 +2446,46 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2511,16 +2511,16 @@ MsgBox(CStr(LabelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ListBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ListBoxArray.xml index a88db3a37ef..6ab149262cc 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ListBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ListBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,16 +258,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,14 +292,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -324,18 +324,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,16 +360,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -400,16 +400,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,14 +468,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -500,14 +500,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -532,16 +532,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,16 +600,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,16 +634,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -668,14 +668,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -700,14 +700,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -733,16 +733,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -768,16 +768,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -803,16 +803,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,16 +838,16 @@ Occurs when a visual aspect of an owner-drawn changes. - . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -872,16 +872,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -906,34 +906,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -958,16 +958,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -992,16 +992,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1026,16 +1026,16 @@ Occurs when the control is bound to a data value. - is formatted. Handling this event gives you access to the string to be displayed for this list item, through the `Value` property of the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is formatted. Handling this event gives you access to the string to be displayed for this list item, through the `Value` property of the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1060,16 +1060,16 @@ Occurs when value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1094,16 +1094,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1130,14 +1130,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1166,14 +1166,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1198,16 +1198,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1233,16 +1233,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1272,14 +1272,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1304,16 +1304,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1342,19 +1342,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1379,24 +1379,24 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1422,28 +1422,28 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1469,24 +1469,24 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1512,16 +1512,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1547,34 +1547,34 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1600,16 +1600,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1634,16 +1634,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1668,16 +1668,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs each time an owner-drawn item needs to be drawn and when the sizes of the list items are determined. - event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1702,14 +1702,14 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1735,29 +1735,29 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1783,29 +1783,29 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1831,30 +1831,30 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1879,26 +1879,26 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1924,32 +1924,32 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1975,26 +1975,26 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2020,26 +2020,26 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2065,26 +2065,26 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2110,14 +2110,14 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2143,16 +2143,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2177,16 +2177,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2211,16 +2211,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2246,14 +2246,14 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2279,16 +2279,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2322,14 +2322,14 @@ MsgBox(CStr(ListBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2354,18 +2354,18 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2391,16 +2391,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2425,16 +2425,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2459,16 +2459,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2504,14 +2504,14 @@ MsgBox(CStr(ListBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2547,14 +2547,14 @@ MsgBox(CStr(ListBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2579,16 +2579,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2613,18 +2613,18 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2649,16 +2649,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2684,16 +2684,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2718,16 +2718,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2752,46 +2752,46 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2817,46 +2817,46 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2882,16 +2882,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2916,16 +2916,16 @@ MsgBox(CStr(ListBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ListViewArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ListViewArray.xml index 3e147822fca..6d83e855467 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ListViewArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ListViewArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,18 +144,18 @@ Occurs when the label for an item is edited by the user. - property of the control must be set to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property of the control must be set to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -180,16 +180,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -214,16 +214,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -248,16 +248,16 @@ Occurs when the user starts editing the label of an item. - control. If the property of the control is set to `false`, the `BeforeLabelEdit` event is not raised; all user attempts to change item labels are automatically rejected. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control. If the property of the control is set to `false`, the `BeforeLabelEdit` event is not raised; all user attempts to change item labels are automatically rejected. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -282,16 +282,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -316,16 +316,16 @@ Occurs when the contents of the display area for a in virtual mode has changed and the determines that a new range of items is needed. - to update the item information held in cache so that it is readily available. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to update the item information held in cache so that it is readily available. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -364,14 +364,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -396,16 +396,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -430,14 +430,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -462,18 +462,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -498,16 +498,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -532,16 +532,16 @@ Occurs when the user clicks a column header within the control. - control (when the property is set to ). The `ColumnClick` event is typically handled to sort the items in the , using the clicked column as the column to sort by. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control (when the property is set to ). The `ColumnClick` event is typically handled to sort the items in the , using the clicked column as the column to sort by. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when the column header order is changed. - of the will not change to the value. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the will not change to the value. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,14 +600,14 @@ Occurs when the value of the property for a column changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -632,16 +632,16 @@ Occurs when the width of a column is changing. - property to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -672,16 +672,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -706,16 +706,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -740,14 +740,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -772,14 +772,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -804,16 +804,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,16 +838,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -872,14 +872,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -904,14 +904,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -937,16 +937,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -972,16 +972,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1007,16 +1007,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1042,16 +1042,16 @@ Occurs when the details view of a is drawn and the property is set to . - control using owner drawing. It is raised only when the property is set to `true` and the property is set to `View.Details`. This event can occur for each column header in the control. For more information on owner drawing, see the property reference topic. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control using owner drawing. It is raised only when the property is set to `true` and the property is set to `View.Details`. This event can occur for each column header in the control. For more information on owner drawing, see the property reference topic. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1076,16 +1076,16 @@ Occurs when a visual aspect of an owner-drawn changes. - . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1110,16 +1110,16 @@ Occurs when the details view of a is drawn and the property is set to . - control using owner drawing. It is raised only when the property is set to `true` and the property is set to `View.Details`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control using owner drawing. It is raised only when the property is set to `true` and the property is set to `View.Details`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1144,16 +1144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1178,34 +1178,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1230,16 +1230,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1264,16 +1264,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1300,14 +1300,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1336,14 +1336,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1368,16 +1368,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1403,16 +1403,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1442,14 +1442,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1474,16 +1474,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1512,19 +1512,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1549,16 +1549,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when an item is activated. - control. The user can activate an item with either a single-click or double-click, depending on the value of the property, or with the keyboard. From within the event handler for the `ItemActivate` event, you can reference the or properties to access the collection of items selected in the to determine which items are being activated. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control. The user can activate an item with either a single-click or double-click, depending on the value of the property, or with the keyboard. From within the event handler for the `ItemActivate` event, you can reference the or properties to access the collection of items selected in the to determine which items are being activated. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1583,16 +1583,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the checked state of an item changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1617,14 +1617,14 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the checked state of an item changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1649,16 +1649,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the user begins dragging an item. - method. You can use this event to perform the tasks necessary to drag items into and out of your application's control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + method. You can use this event to perform the tasks necessary to drag items into and out of your application's control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1683,14 +1683,14 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the mouse hovers over an item. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1715,18 +1715,18 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the selection state of an item changes. - event will occur when the selection state of multiple items changes. - - The I`temSelectionChanged` event occurs whether the item state changes from selected to deselected or deselected to selected. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event will occur when the selection state of multiple items changes. + + The I`temSelectionChanged` event occurs whether the item state changes from selected to deselected or deselected to selected. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1751,24 +1751,24 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1794,28 +1794,28 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1841,24 +1841,24 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1884,16 +1884,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1919,34 +1919,34 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1972,16 +1972,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2006,16 +2006,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2040,14 +2040,14 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2073,29 +2073,29 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2121,29 +2121,29 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2169,30 +2169,30 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - - - `MouseDown` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + `MouseDown` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2218,26 +2218,26 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2263,32 +2263,32 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2314,26 +2314,26 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2359,26 +2359,26 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2404,26 +2404,26 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2449,14 +2449,14 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2482,16 +2482,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2516,16 +2516,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2550,16 +2550,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2585,14 +2585,14 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2618,16 +2618,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2661,14 +2661,14 @@ MsgBox(CStr(ListViewArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2693,18 +2693,18 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2730,16 +2730,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the is in virtual mode and requires a . - when handling this event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + when handling this event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2764,16 +2764,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2798,16 +2798,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the RightToLeftLayout property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2832,16 +2832,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the is in virtual mode and a search is taking place. - is in virtual mode and the or method is called. When handling this event, you should calculate which item from the list of items supplied by the Items property matches the search criteria and set the `SearchForVirtualItemEventArgs.Index` property to the index of the ListViewItem. If an item is not provided, and FindItemWithText will return a null reference (Nothing in Visual Basic). - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is in virtual mode and the or method is called. When handling this event, you should calculate which item from the list of items supplied by the Items property matches the search criteria and set the `SearchForVirtualItemEventArgs.Index` property to the index of the ListViewItem. If an item is not provided, and FindItemWithText will return a null reference (Nothing in Visual Basic). + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2866,16 +2866,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2911,14 +2911,14 @@ MsgBox(CStr(ListViewArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2954,14 +2954,14 @@ MsgBox(CStr(ListViewArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2986,16 +2986,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3020,18 +3020,18 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3056,16 +3056,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3091,16 +3091,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3125,16 +3125,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3159,46 +3159,46 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3224,46 +3224,46 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3289,16 +3289,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when a is in virtual mode and the selection state of a range of items has changed. - is not in virtual mode, the event will occur. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is not in virtual mode, the event will occur. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3324,16 +3324,16 @@ MsgBox(CStr(ListViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/LoadResConstants.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/LoadResConstants.xml index faab5268b1b..67832c6ceb1 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/LoadResConstants.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/LoadResConstants.xml @@ -22,16 +22,16 @@ Provides constants for compatibility with the Visual Basic 6.0 function. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> My.Resources Object diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/MBindingCollection.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/MBindingCollection.xml index 24bf7ff1495..b7c861bc7e5 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/MBindingCollection.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/MBindingCollection.xml @@ -33,13 +33,13 @@ Provides an interface to replace COM-based data binding in an application upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -60,13 +60,13 @@ Initializes an instance of a . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -114,13 +114,13 @@ Adds a to a . A interface. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -160,13 +160,13 @@ Adds a to a . A interface. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -194,13 +194,13 @@ Clears the collection of binding objects. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -228,13 +228,13 @@ Gets the total number of bindings in the . An that contains the count. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -262,13 +262,13 @@ Gets or sets the data member for a . A that contains the name of the data member. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -302,13 +302,13 @@ Gets or sets the data source for a . A COM-based object. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -346,14 +346,14 @@ Releases the unmanaged resources that are used by a . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -382,16 +382,16 @@ to release both managed and unmanaged resources; to release only unmanaged resources. Releases the unmanaged resources that are used by a and optionally releases the managed resources. - method. `Dispose()` invokes the protected `Dispose(Boolean)` method with the disposing parameter set to `true`. invokes `Dispose` with the disposing parameter set to `false`. - - When the disposing parameter is `true`, this method releases all resources held by any managed objects that this control references. This method invokes the `Dispose()` method of each referenced object. - + method. `Dispose()` invokes the protected `Dispose(Boolean)` method with the disposing parameter set to `true`. invokes `Dispose` with the disposing parameter set to `false`. + + When the disposing parameter is `true`, this method releases all resources held by any managed objects that this control references. This method invokes the `Dispose()` method of each referenced object. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -417,13 +417,13 @@ Gets an enumerator for a . An for the collection. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -455,13 +455,13 @@ Gets the at the specified index. A interface. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -492,13 +492,13 @@ An that represents the index. Removes a interface from a . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -523,13 +523,13 @@ Determines whether to save changes in a . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -557,13 +557,13 @@ Gets the current row from the data source of the object and resets the contents of controls bound through the object. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -601,13 +601,13 @@ Gets or sets the for a . A enumeration. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/MaskedTextBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/MaskedTextBoxArray.xml index cf7dfe2c2c8..fdd908bac56 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/MaskedTextBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/MaskedTextBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -260,14 +260,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,16 +292,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,14 +326,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -358,18 +358,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,16 +394,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,16 +468,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -502,14 +502,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -534,14 +534,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,16 +600,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,14 +634,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -666,14 +666,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -699,16 +699,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -734,16 +734,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -769,16 +769,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -804,16 +804,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,34 +838,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -890,16 +890,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -924,16 +924,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -960,14 +960,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -996,14 +996,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1028,16 +1028,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1063,16 +1063,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1098,16 +1098,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1136,14 +1136,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1168,16 +1168,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1202,16 +1202,16 @@ Occurs after the insert mode has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1240,19 +1240,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1277,24 +1277,24 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1320,28 +1320,28 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1367,24 +1367,24 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1410,16 +1410,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1445,34 +1445,34 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1498,16 +1498,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1532,16 +1532,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1566,16 +1566,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs after the input mask is changed. - property is changed by either a programmatic modification or user interaction. This event is also raised if the is indirectly changed by a member such as , , , and . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. This event is also raised if the is indirectly changed by a member such as , , , and . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1600,16 +1600,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the user's input or assigned character does not match the corresponding format element of the input mask. - property, is interpreted by the masked text provider associated with the control through the property. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property, is interpreted by the masked text provider associated with the control through the property. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1635,16 +1635,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the value of the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1669,14 +1669,14 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1702,27 +1702,27 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - / `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1748,29 +1748,29 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1796,26 +1796,26 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1841,26 +1841,26 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1886,30 +1886,30 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1935,26 +1935,26 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1980,26 +1980,26 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2025,26 +2025,26 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2070,14 +2070,14 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2103,16 +2103,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2137,16 +2137,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2172,14 +2172,14 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2205,16 +2205,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2239,16 +2239,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2282,14 +2282,14 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) A . Not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2314,18 +2314,18 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2351,16 +2351,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2396,14 +2396,14 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2439,14 +2439,14 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2471,16 +2471,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2505,18 +2505,18 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2541,16 +2541,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2576,16 +2576,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2610,16 +2610,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2644,16 +2644,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2678,16 +2678,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2712,16 +2712,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when has finished parsing the current value by using the property. - control will optionally validate user input against the type defined by its property. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control will optionally validate user input against the type defined by its property. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2747,46 +2747,46 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2812,46 +2812,46 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2877,16 +2877,16 @@ MsgBox(CStr(MaskedTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/MenuItemArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/MenuItemArray.xml index e436c2c1533..ad6bab9a3e8 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/MenuItemArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/MenuItemArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -190,18 +190,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,16 +226,16 @@ Occurs when a visual aspect of an owner-drawn changes. - . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -262,14 +262,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -298,14 +298,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -334,14 +334,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -370,19 +370,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -407,16 +407,16 @@ MsgBox(CStr(MenuItemArray(1).Text)) Occurs each time an owner-drawn needs to be drawn. - event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -441,16 +441,16 @@ MsgBox(CStr(MenuItemArray(1).Text)) Occurs before a menu item's list of menu items is displayed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -484,14 +484,14 @@ MsgBox(CStr(MenuItemArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -516,16 +516,16 @@ MsgBox(CStr(MenuItemArray(1).Text)) Occurs when the user rests the mouse pointer over a menu item. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -561,14 +561,14 @@ MsgBox(CStr(MenuItemArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -604,14 +604,14 @@ MsgBox(CStr(MenuItemArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/MouseButtonConstants.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/MouseButtonConstants.xml index 58f8fd9339e..0e33f9d30e8 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/MouseButtonConstants.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/MouseButtonConstants.xml @@ -22,19 +22,19 @@ Provides constants for compatibility with the shift parameter mask constants in Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - - - -## Examples - - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + + + +## Examples + + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/OpenFileDialogArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/OpenFileDialogArray.xml index 80ed40abef1..4bfc2e845cd 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/OpenFileDialogArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/OpenFileDialogArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -190,14 +190,14 @@ Occurs when the user clicks on the or button on an dialog box. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,14 +224,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -260,14 +260,14 @@ Gets the index of an in an . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,14 +292,14 @@ Occurs when the user clicks the button on an dialog box. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -328,14 +328,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -364,19 +364,19 @@ Gets a specific element of an by index. Read-only. An at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -410,14 +410,14 @@ MsgBox(CStr(OpenFileDialogArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -453,14 +453,14 @@ MsgBox(CStr(OpenFileDialogArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in an . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -496,14 +496,14 @@ MsgBox(CStr(OpenFileDialogArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/PanelArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/PanelArray.xml index 4704e44d5ee..dd448b6edf4 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/PanelArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/PanelArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -280,16 +280,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -328,14 +328,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,16 +360,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,14 +394,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -426,18 +426,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -462,16 +462,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -502,16 +502,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -536,16 +536,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -570,14 +570,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -602,14 +602,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,16 +634,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -668,16 +668,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,14 +702,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -734,14 +734,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -767,16 +767,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -802,16 +802,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -837,16 +837,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -872,16 +872,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -906,34 +906,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -958,16 +958,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -992,16 +992,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1028,14 +1028,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1064,14 +1064,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1096,16 +1096,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1131,16 +1131,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1170,14 +1170,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1202,16 +1202,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1240,19 +1240,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1277,16 +1277,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1312,34 +1312,34 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1365,16 +1365,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1399,16 +1399,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1433,14 +1433,14 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1466,27 +1466,27 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control is clicked by the mouse. - - - / `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1512,29 +1512,29 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1560,26 +1560,26 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1605,26 +1605,26 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1650,30 +1650,30 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1699,26 +1699,26 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1744,26 +1744,26 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1789,26 +1789,26 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1834,14 +1834,14 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1867,16 +1867,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1901,16 +1901,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1936,16 +1936,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1970,16 +1970,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2005,14 +2005,14 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2038,16 +2038,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2081,14 +2081,14 @@ MsgBox(CStr(PanelArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2113,18 +2113,18 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2150,16 +2150,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2184,14 +2184,14 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the user scrolls the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2227,14 +2227,14 @@ MsgBox(CStr(PanelArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2270,14 +2270,14 @@ MsgBox(CStr(PanelArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2302,16 +2302,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2336,18 +2336,18 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2372,16 +2372,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2407,16 +2407,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2441,16 +2441,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2475,46 +2475,46 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2540,46 +2540,46 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2605,16 +2605,16 @@ MsgBox(CStr(PanelArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/PictureBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/PictureBoxArray.xml index 7a6ff352cfc..eef5595b6e8 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/PictureBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/PictureBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -294,14 +294,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,14 +326,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -358,18 +358,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,16 +394,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,16 +468,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -502,14 +502,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -534,14 +534,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,16 +600,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,14 +634,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -666,14 +666,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -699,16 +699,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -734,16 +734,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -769,16 +769,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -804,16 +804,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -840,14 +840,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -876,14 +876,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -908,16 +908,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -943,16 +943,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -982,14 +982,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1018,19 +1018,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1055,16 +1055,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1090,16 +1090,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the asynchronous image-load operation is completed, been canceled, or raised an exception. - methods, and is false. If the image-load is canceled by calling the method the property of the will be set to true. If an exception or error occurs during the load process, it will be caught and the `Error` property of the will contain the exception information. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + methods, and is false. If the image-load is canceled by calling the method the property of the will be set to true. If an exception or error occurs during the load process, it will be caught and the `Error` property of the will contain the exception information. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1124,18 +1124,18 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the progress of an asynchronous image-loading operation has changed. - methods. The progress percentage of the image load is reported with the property of the . - - Handle the `LoadProgressChanged` event if you want to reflect the progress of an asynchronous image-loading operation in a or similar control. Use the property of the to update the progress value. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + methods. The progress percentage of the image load is reported with the property of the . + + Handle the `LoadProgressChanged` event if you want to reflect the progress of an asynchronous image-loading operation in a or similar control. Use the property of the to update the progress value. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1160,16 +1160,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1194,16 +1194,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1228,14 +1228,14 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1261,27 +1261,27 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - / `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + / `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1307,29 +1307,29 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + > [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1355,26 +1355,26 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1400,26 +1400,26 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1445,30 +1445,30 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1494,26 +1494,26 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1539,26 +1539,26 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1584,26 +1584,26 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1629,14 +1629,14 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1662,16 +1662,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1696,16 +1696,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1731,16 +1731,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1765,16 +1765,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1800,14 +1800,14 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1833,16 +1833,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1876,14 +1876,14 @@ MsgBox(CStr(PictureBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1908,18 +1908,18 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1956,14 +1956,14 @@ MsgBox(CStr(PictureBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1999,14 +1999,14 @@ MsgBox(CStr(PictureBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2031,16 +2031,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2065,16 +2065,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2099,18 +2099,18 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2135,16 +2135,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2170,46 +2170,46 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2235,46 +2235,46 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - `Validating` - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - `Validating` - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + `Validating` + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + `Validating` + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2300,16 +2300,16 @@ MsgBox(CStr(PictureBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/PrintDialogArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/PrintDialogArray.xml index 91ba28c4954..a0692ef1f5a 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/PrintDialogArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/PrintDialogArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -228,14 +228,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -260,16 +260,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -299,14 +299,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -335,19 +335,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -381,14 +381,14 @@ MsgBox(CStr(PrintDialogArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -424,14 +424,14 @@ MsgBox(CStr(PrintDialogArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -467,14 +467,14 @@ MsgBox(CStr(PrintDialogArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ProgressBarArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ProgressBarArray.xml index 69bd6202fc5..ff47b172864 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ProgressBarArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ProgressBarArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -226,14 +226,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,14 +258,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -290,18 +290,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,16 +326,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -366,16 +366,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -400,16 +400,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,14 +434,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -466,14 +466,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -498,16 +498,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -532,16 +532,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,14 +566,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -599,16 +599,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,16 +634,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -669,16 +669,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -704,16 +704,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -738,16 +738,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -774,14 +774,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -810,14 +810,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -842,16 +842,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -877,16 +877,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -916,14 +916,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -952,19 +952,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -989,16 +989,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1024,16 +1024,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1058,16 +1058,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1092,14 +1092,14 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1125,27 +1125,27 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control is clicked by the mouse. - - - / `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + / `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1171,26 +1171,26 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1216,26 +1216,26 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1261,30 +1261,30 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1310,26 +1310,26 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1355,26 +1355,26 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1400,26 +1400,26 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1445,14 +1445,14 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1478,16 +1478,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1512,16 +1512,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1546,16 +1546,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1581,14 +1581,14 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1614,16 +1614,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1657,14 +1657,14 @@ MsgBox(CStr(ProgressBarArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1689,18 +1689,18 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1726,16 +1726,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1760,16 +1760,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1805,14 +1805,14 @@ MsgBox(CStr(ProgressBarArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1848,14 +1848,14 @@ MsgBox(CStr(ProgressBarArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1880,16 +1880,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1914,18 +1914,18 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1950,16 +1950,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1985,16 +1985,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2019,46 +2019,46 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2084,46 +2084,46 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - `Validating` - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - `Validating` - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + `Validating` + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + `Validating` + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2149,16 +2149,16 @@ MsgBox(CStr(ProgressBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/RadioButtonArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/RadioButtonArray.xml index 13bb406e08a..7f65f7be23a 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/RadioButtonArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/RadioButtonArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -280,16 +280,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -314,16 +314,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -362,14 +362,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -394,16 +394,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -428,14 +428,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -460,16 +460,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -494,18 +494,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -530,16 +530,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -570,16 +570,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -604,16 +604,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -638,14 +638,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -670,14 +670,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,16 +702,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -736,16 +736,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -770,14 +770,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -803,16 +803,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,16 +838,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -873,16 +873,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -908,16 +908,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -942,34 +942,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -994,16 +994,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1028,16 +1028,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1064,14 +1064,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1100,14 +1100,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1132,16 +1132,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1167,16 +1167,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1206,14 +1206,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1242,19 +1242,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1279,24 +1279,24 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1322,28 +1322,28 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1369,24 +1369,24 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1412,16 +1412,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1447,34 +1447,34 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1500,16 +1500,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1534,16 +1534,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1568,14 +1568,14 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1601,29 +1601,29 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1649,26 +1649,26 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1694,26 +1694,26 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1739,30 +1739,30 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1788,26 +1788,26 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1833,26 +1833,26 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1878,26 +1878,26 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1923,14 +1923,14 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1956,16 +1956,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1990,16 +1990,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2025,16 +2025,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2059,16 +2059,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2094,14 +2094,14 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2127,16 +2127,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2170,14 +2170,14 @@ MsgBox(CStr(RadioButtonArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2202,18 +2202,18 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2239,16 +2239,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2284,14 +2284,14 @@ MsgBox(CStr(RadioButtonArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2327,14 +2327,14 @@ MsgBox(CStr(RadioButtonArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2359,16 +2359,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2393,18 +2393,18 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2429,16 +2429,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2464,16 +2464,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2498,16 +2498,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2532,16 +2532,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2566,46 +2566,46 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2631,46 +2631,46 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2696,16 +2696,16 @@ MsgBox(CStr(RadioButtonArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/RichTextBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/RichTextBoxArray.xml index e6d9aca298e..67eba9144a8 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/RichTextBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/RichTextBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -294,14 +294,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,16 +326,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,14 +360,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -392,18 +392,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -428,16 +428,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -462,14 +462,14 @@ Occurs when contents within the control are resized. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -500,16 +500,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -534,16 +534,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -568,14 +568,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,14 +600,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -632,16 +632,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -666,16 +666,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -700,14 +700,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -732,16 +732,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -766,14 +766,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -798,16 +798,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -832,16 +832,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -868,14 +868,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -904,14 +904,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -936,16 +936,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -971,16 +971,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1009,14 +1009,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1041,14 +1041,14 @@ Occurs when the user clicks the horizontal scroll bar of the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1073,14 +1073,14 @@ Occurs when the user switches input methods on an Asian version of the Windows operating system. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1105,16 +1105,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1143,19 +1143,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1180,24 +1180,24 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1223,28 +1223,28 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1270,24 +1270,24 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1313,16 +1313,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1348,34 +1348,34 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1401,16 +1401,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the user clicks on a link within the text of the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1435,16 +1435,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1469,16 +1469,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1503,16 +1503,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1537,29 +1537,29 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1584,29 +1584,29 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1632,29 +1632,29 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1680,26 +1680,26 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1725,26 +1725,26 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1770,30 +1770,30 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1819,26 +1819,26 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1864,26 +1864,26 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1909,26 +1909,26 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1954,14 +1954,14 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1987,16 +1987,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2021,16 +2021,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2055,16 +2055,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the user attempts to modify protected text in the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2089,16 +2089,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2124,16 +2124,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2158,16 +2158,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2201,14 +2201,14 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2233,18 +2233,18 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2270,16 +2270,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2304,16 +2304,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the selection of text within the control has changed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2349,14 +2349,14 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2392,14 +2392,14 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2424,16 +2424,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2458,18 +2458,18 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2494,16 +2494,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2529,16 +2529,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2563,16 +2563,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2597,16 +2597,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2631,46 +2631,46 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2696,46 +2696,46 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2761,16 +2761,16 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2795,14 +2795,14 @@ MsgBox(CStr(RichTextBoxArray(1).Text)) Occurs when the user clicks the vertical scroll bars of the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/SRDescriptionAttribute.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/SRDescriptionAttribute.xml index e5f9defd065..da083e392ff 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/SRDescriptionAttribute.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/SRDescriptionAttribute.xml @@ -31,13 +31,13 @@ Provides an attribute for use in upgrading Visual Basic 6.0 applications to Visual Basic. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -62,13 +62,13 @@ A that contains the description. Initializes an instance of an . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -93,13 +93,13 @@ Gets the string that contains the description for an . A that contains the description. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/SaveFileDialogArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/SaveFileDialogArray.xml index 3c99dec20b4..c33466d49b1 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/SaveFileDialogArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/SaveFileDialogArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -190,14 +190,14 @@ Occurs when the user clicks on the or button on a dialog box. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,14 +224,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -260,14 +260,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,14 +292,14 @@ Occurs when the user clicks the button on a dialog box. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -328,14 +328,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -364,19 +364,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -410,14 +410,14 @@ MsgBox(CStr(SaveFileDialogArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -453,14 +453,14 @@ MsgBox(CStr(SaveFileDialogArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -496,14 +496,14 @@ MsgBox(CStr(SaveFileDialogArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ScaleMode.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ScaleMode.xml index faf8d0c5066..2dbde215164 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ScaleMode.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ScaleMode.xml @@ -22,14 +22,14 @@ Provides constants for compatibility with the constants in Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ShiftConstants.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ShiftConstants.xml index 158039f306a..c28c278d792 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ShiftConstants.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ShiftConstants.xml @@ -22,14 +22,14 @@ Provides constants for compatibility with the shift parameter mask constants in Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusBarArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusBarArray.xml index 36abd3f442b..a8f160e16a0 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusBarArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusBarArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,16 +224,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,14 +258,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -290,18 +290,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,16 +326,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -366,16 +366,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -400,16 +400,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when a new control is added to the . - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,16 +468,16 @@ Occurs when a control is removed from the . - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -502,16 +502,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -536,16 +536,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -570,14 +570,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -602,14 +602,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -635,16 +635,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -670,16 +670,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -705,16 +705,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -740,16 +740,16 @@ Occurs when a visual aspect of an owner-drawn control changes. - control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -775,16 +775,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -809,14 +809,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -841,16 +841,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -877,14 +877,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -913,14 +913,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -945,16 +945,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -979,16 +979,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1018,14 +1018,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1054,19 +1054,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1091,24 +1091,24 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1134,28 +1134,28 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1181,24 +1181,24 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1224,16 +1224,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1259,34 +1259,34 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1312,16 +1312,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1346,16 +1346,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1380,29 +1380,29 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1427,29 +1427,29 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1475,29 +1475,29 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1523,26 +1523,26 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1568,26 +1568,26 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1613,30 +1613,30 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1662,26 +1662,26 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1707,26 +1707,26 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1752,26 +1752,26 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1797,14 +1797,14 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1830,16 +1830,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1864,16 +1864,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when a object on a control is clicked. - control is clicked. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control is clicked. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1899,16 +1899,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1933,16 +1933,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1968,14 +1968,14 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2001,16 +2001,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2044,14 +2044,14 @@ MsgBox(CStr(StatusBarArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2076,18 +2076,18 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2113,16 +2113,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2158,14 +2158,14 @@ MsgBox(CStr(StatusBarArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2201,14 +2201,14 @@ MsgBox(CStr(StatusBarArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2233,16 +2233,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2267,18 +2267,18 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2303,16 +2303,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2338,16 +2338,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2372,16 +2372,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2406,16 +2406,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2440,46 +2440,46 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2505,46 +2505,46 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2570,16 +2570,16 @@ MsgBox(CStr(StatusBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusStripArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusStripArray.xml index 17cbd1aa125..b87261c33d9 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusStripArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/StatusStripArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -280,14 +280,14 @@ Occurs when the user begins to drag the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -312,16 +312,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,14 +360,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -392,14 +392,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -424,18 +424,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -460,16 +460,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -500,16 +500,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -534,16 +534,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -568,16 +568,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -602,14 +602,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,14 +634,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -667,16 +667,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,16 +702,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -737,16 +737,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -772,16 +772,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -806,14 +806,14 @@ Occurs when the user stops dragging the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,14 +838,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -870,16 +870,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -906,14 +906,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -942,14 +942,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -974,16 +974,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1008,16 +1008,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1047,14 +1047,14 @@ A . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1079,16 +1079,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1117,19 +1117,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1154,14 +1154,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when a new is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1186,14 +1186,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the is clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1218,14 +1218,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when a is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1250,24 +1250,24 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1293,28 +1293,28 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1340,24 +1340,24 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1383,16 +1383,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1418,14 +1418,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the layout of the is complete. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1451,16 +1451,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1485,34 +1485,34 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1538,16 +1538,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1572,16 +1572,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1606,29 +1606,29 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1653,29 +1653,29 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1701,29 +1701,29 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1749,26 +1749,26 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1794,26 +1794,26 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1839,30 +1839,30 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1888,26 +1888,26 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1933,26 +1933,26 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1978,26 +1978,26 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2023,14 +2023,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2056,14 +2056,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2089,14 +2089,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the move handle is painted. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2121,16 +2121,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2155,16 +2155,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2190,16 +2190,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2225,16 +2225,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2268,14 +2268,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2300,18 +2300,18 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2337,16 +2337,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2371,14 +2371,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the user or code scrolls through the client area. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2414,14 +2414,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2457,14 +2457,14 @@ MsgBox(CStr(StatusStripArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2489,16 +2489,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2523,18 +2523,18 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2559,16 +2559,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2594,16 +2594,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2628,16 +2628,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2662,16 +2662,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2696,46 +2696,46 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2761,46 +2761,46 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2826,16 +2826,16 @@ MsgBox(CStr(StatusStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/TabControlArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/TabControlArray.xml index 1db6e536a5b..09987edff97 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/TabControlArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/TabControlArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,16 +224,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,14 +258,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -290,18 +290,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -326,16 +326,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -366,16 +366,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -400,16 +400,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -434,16 +434,16 @@ Occurs when a new control is added to the . - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,16 +468,16 @@ Occurs when a control is removed from the . - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -502,16 +502,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -536,28 +536,28 @@ Occurs when a tab is deselected. - , the following events occur in the following order. - - - - `Deselected` - - - - - - These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . - - The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + , the following events occur in the following order. + + + + `Deselected` + + + + + + These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . + + The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -582,28 +582,28 @@ Occurs before a tab is deselected, enabling a handler to cancel the tab change. - , the following events occur in the following order. - - `Deselecting` - - - - - - - - These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . - - The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + , the following events occur in the following order. + + `Deselecting` + + + + + + + + These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . + + The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -628,16 +628,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -662,14 +662,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -694,14 +694,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -727,16 +727,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -762,16 +762,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -797,16 +797,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -832,18 +832,18 @@ Occurs when the needs to paint each of its tabs if the property is set to . - property to , the raises the `DrawItem` event whenever it needs to paint one of its tabs. To customize the appearance of the tabs, provide your own painting code in a handler for the `DrawItem` event. - - The does not support variable tab sizes with owner drawing. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property to , the raises the `DrawItem` event whenever it needs to paint one of its tabs. To customize the appearance of the tabs, provide your own painting code in a handler for the `DrawItem` event. + + The does not support variable tab sizes with owner drawing. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -868,16 +868,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -902,14 +902,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -934,16 +934,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -970,14 +970,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1006,14 +1006,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1038,16 +1038,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1072,16 +1072,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1111,14 +1111,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1143,16 +1143,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1181,19 +1181,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1218,24 +1218,24 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1261,28 +1261,28 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1308,24 +1308,24 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1351,16 +1351,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1386,34 +1386,34 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1439,16 +1439,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1473,16 +1473,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1507,29 +1507,29 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1554,29 +1554,29 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1602,29 +1602,29 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1650,26 +1650,26 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1695,26 +1695,26 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1740,30 +1740,30 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1789,26 +1789,26 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1834,26 +1834,26 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1879,26 +1879,26 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1924,14 +1924,14 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1957,16 +1957,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1991,16 +1991,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2025,16 +2025,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2060,14 +2060,14 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2093,16 +2093,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2136,14 +2136,14 @@ MsgBox(CStr(TabControlArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2168,18 +2168,18 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2205,16 +2205,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2239,16 +2239,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2273,28 +2273,28 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when a tab is selected. - , the following events occur in the following order. - - - - - - - - `Selected` - - These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . - - The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + , the following events occur in the following order. + + + + + + + + `Selected` + + These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . + + The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2319,16 +2319,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the property has changed. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2353,28 +2353,28 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs before a tab is selected, enabling a handler to cancel the tab change. - , the following events occur in the following order. - - - - - - `Selecting` - - - - These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . - - The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + , the following events occur in the following order. + + + + + + `Selecting` + + + + These events let you perform tasks such as canceling a tab change if a is in an invalid state or updating the state of a newly displayed . + + The current tab changes when the user clicks a tab, when you call the or method, or when you change the value of the or property. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2410,14 +2410,14 @@ MsgBox(CStr(TabControlArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2453,14 +2453,14 @@ MsgBox(CStr(TabControlArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2485,16 +2485,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2519,18 +2519,18 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2555,16 +2555,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2590,16 +2590,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2624,16 +2624,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2658,46 +2658,46 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2723,46 +2723,46 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2788,16 +2788,16 @@ MsgBox(CStr(TabControlArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/TextBoxArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/TextBoxArray.xml index 45bebf27a31..1e81668945d 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/TextBoxArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/TextBoxArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -184,16 +184,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -218,16 +218,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -252,16 +252,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -286,16 +286,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -334,14 +334,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -366,16 +366,16 @@ Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -400,14 +400,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -432,18 +432,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -468,16 +468,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -508,16 +508,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -542,16 +542,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -576,14 +576,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -608,14 +608,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -640,16 +640,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -674,16 +674,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -708,14 +708,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -740,14 +740,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -773,16 +773,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -808,16 +808,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -843,16 +843,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -878,16 +878,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -912,14 +912,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -944,16 +944,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -978,16 +978,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1014,14 +1014,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1050,14 +1050,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1082,16 +1082,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1116,16 +1116,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1151,16 +1151,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1189,14 +1189,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1221,16 +1221,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1259,19 +1259,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1296,24 +1296,24 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1339,28 +1339,28 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1386,24 +1386,24 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1429,16 +1429,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1464,34 +1464,34 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1517,16 +1517,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1551,16 +1551,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1585,16 +1585,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1619,29 +1619,29 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1666,29 +1666,29 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1714,29 +1714,29 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1762,26 +1762,26 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1807,26 +1807,26 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1852,30 +1852,30 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1901,26 +1901,26 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1946,26 +1946,26 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1991,26 +1991,26 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2036,14 +2036,14 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2069,16 +2069,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2103,16 +2103,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2137,16 +2137,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2172,14 +2172,14 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2205,16 +2205,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2239,16 +2239,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2282,14 +2282,14 @@ MsgBox(CStr(TextBoxArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2314,18 +2314,18 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2351,16 +2351,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2396,14 +2396,14 @@ MsgBox(CStr(TextBoxArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2439,14 +2439,14 @@ MsgBox(CStr(TextBoxArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2471,16 +2471,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2505,18 +2505,18 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2541,16 +2541,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2576,16 +2576,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2610,16 +2610,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2644,16 +2644,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2678,16 +2678,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2712,46 +2712,46 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2777,46 +2777,46 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2842,16 +2842,16 @@ MsgBox(CStr(TextBoxArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/TimerArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/TimerArray.xml index 14538c15c9a..20c2eb1ad5d 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/TimerArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/TimerArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -228,14 +228,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -264,14 +264,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -300,19 +300,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -346,14 +346,14 @@ MsgBox(CStr(TimerArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -389,14 +389,14 @@ MsgBox(CStr(TimerArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -432,14 +432,14 @@ MsgBox(CStr(TimerArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -464,14 +464,14 @@ MsgBox(CStr(TimerArray(1).Text)) Occurs when the specified timer interval has elapsed and the timer is enabled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolBarArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolBarArray.xml index 3b05cc01b1b..7440006934a 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolBarArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolBarArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,14 +212,14 @@ Occurs when a on the is clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -244,14 +244,14 @@ Occurs when a drop-down style or its down arrow is clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -290,14 +290,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -322,16 +322,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -356,14 +356,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -388,18 +388,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -424,16 +424,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -464,16 +464,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -498,16 +498,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -532,16 +532,16 @@ Occurs when a new control is added to the . - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -566,16 +566,16 @@ Occurs when a control is removed from the . - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -600,16 +600,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,16 +634,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -668,14 +668,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -700,14 +700,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -733,16 +733,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -768,16 +768,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -803,16 +803,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,16 +838,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -872,14 +872,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -904,16 +904,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -940,14 +940,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -976,14 +976,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1008,16 +1008,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1042,16 +1042,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1081,14 +1081,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1117,19 +1117,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1154,24 +1154,24 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1197,28 +1197,28 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1244,24 +1244,24 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1287,16 +1287,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1322,34 +1322,34 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1375,16 +1375,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1409,16 +1409,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1443,29 +1443,29 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1490,29 +1490,29 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1538,29 +1538,29 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1586,26 +1586,26 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1631,26 +1631,26 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1676,30 +1676,30 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1725,26 +1725,26 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1770,26 +1770,26 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1815,26 +1815,26 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1860,14 +1860,14 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1893,16 +1893,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1927,16 +1927,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1961,16 +1961,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1996,14 +1996,14 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2029,16 +2029,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2072,14 +2072,14 @@ MsgBox(CStr(ToolBarArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2104,18 +2104,18 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2152,14 +2152,14 @@ MsgBox(CStr(ToolBarArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2195,14 +2195,14 @@ MsgBox(CStr(ToolBarArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2227,16 +2227,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2261,18 +2261,18 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2297,16 +2297,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2332,16 +2332,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2366,16 +2366,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2400,46 +2400,46 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2465,46 +2465,46 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2530,16 +2530,16 @@ MsgBox(CStr(ToolBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripArray.xml index c12d20820f2..d3f9beee6dc 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,16 +178,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -212,16 +212,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -246,16 +246,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -280,14 +280,14 @@ Occurs when the user starts to drag the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -312,16 +312,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,14 +360,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -392,14 +392,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -424,18 +424,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -460,16 +460,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -500,16 +500,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -534,16 +534,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -568,16 +568,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -602,14 +602,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -634,14 +634,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -667,16 +667,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,16 +702,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -737,16 +737,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -772,16 +772,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -806,14 +806,14 @@ Occurs when the user stops dragging the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -838,14 +838,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -870,16 +870,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -906,14 +906,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -942,14 +942,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -974,16 +974,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1008,16 +1008,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1047,14 +1047,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1079,16 +1079,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1117,19 +1117,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1154,14 +1154,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when a new is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1186,14 +1186,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the is clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1218,14 +1218,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when a is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1250,24 +1250,24 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1293,28 +1293,28 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1340,24 +1340,24 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1383,16 +1383,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1418,14 +1418,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the layout of the is complete. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1451,16 +1451,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1485,34 +1485,34 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1538,16 +1538,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1572,16 +1572,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1606,29 +1606,29 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1653,29 +1653,29 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1701,29 +1701,29 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1749,26 +1749,26 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1794,26 +1794,26 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1839,30 +1839,30 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1888,26 +1888,26 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1933,26 +1933,26 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1978,26 +1978,26 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2023,14 +2023,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2056,16 +2056,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2090,14 +2090,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2123,14 +2123,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the move handle is painted. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2156,16 +2156,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2190,16 +2190,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2225,16 +2225,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2260,16 +2260,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2303,14 +2303,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2335,18 +2335,18 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2372,16 +2372,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2406,14 +2406,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the user or code scrolls through the client area. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2449,14 +2449,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2492,14 +2492,14 @@ MsgBox(CStr(ToolStripArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2524,16 +2524,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2558,18 +2558,18 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2594,16 +2594,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2629,16 +2629,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2663,16 +2663,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2697,16 +2697,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2731,46 +2731,46 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2796,46 +2796,46 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2861,16 +2861,16 @@ MsgBox(CStr(ToolStripArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripMenuItemArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripMenuItemArray.xml index 5424614f40d..d73f930e4f5 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripMenuItemArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ToolStripMenuItemArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,16 +224,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,16 +258,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -292,18 +292,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -328,14 +328,14 @@ Occurs when the has changed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -360,14 +360,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -392,16 +392,16 @@ Occurs when the drop-down part of the is no longer visible. - from changes you made in response to the event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + from changes you made in response to the event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -426,14 +426,14 @@ Occurs when the is clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -458,14 +458,14 @@ Occurs when the has opened. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -490,14 +490,14 @@ Occurs as the is opening. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -522,16 +522,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -556,16 +556,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -592,14 +592,14 @@ Overrides . The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -628,14 +628,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -664,14 +664,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -700,19 +700,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -737,16 +737,16 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -771,26 +771,26 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -816,26 +816,26 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -861,30 +861,30 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -910,26 +910,26 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -955,26 +955,26 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1000,26 +1000,26 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1045,14 +1045,14 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the property changes. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1077,14 +1077,14 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the item is redrawn. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1109,16 +1109,16 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1153,14 +1153,14 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) A . Not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1185,16 +1185,16 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1230,14 +1230,14 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1273,14 +1273,14 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1305,16 +1305,16 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1339,16 +1339,16 @@ MsgBox(CStr(ToolStripMenuItemArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/TreeViewArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/TreeViewArray.xml index 70f746d5c9b..0ab859acca5 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/TreeViewArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/TreeViewArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs after the tree node check box is selected. - property from within a or `AfterCheck` event handler causes the event to be raised multiple times and can result in unexpected behavior. To prevent the event from being raised multiple times, add logic to your event handler that only executes your recursive code if the `Action` property of the is not set to . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property from within a or `AfterCheck` event handler causes the event to be raised multiple times and can result in unexpected behavior. To prevent the event from being raised multiple times, add logic to your event handler that only executes your recursive code if the `Action` property of the is not set to . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -178,14 +178,14 @@ Occurs after the tree node is collapsed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -210,14 +210,14 @@ Occurs after the tree node is expanded. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -242,16 +242,16 @@ Occurs when the label for an item is edited by the user. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -276,16 +276,16 @@ Occurs after the tree node is selected. - event and test the property. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + event and test the property. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -310,16 +310,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -344,14 +344,14 @@ Occurs before the tree node check box is checked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -376,14 +376,14 @@ Occurs before the tree node is collapsed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -408,14 +408,14 @@ Occurs before the tree node is expanded. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -440,14 +440,14 @@ Occurs before the tree node label text is edited. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -472,14 +472,14 @@ Occurs before the tree node is selected. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -504,16 +504,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -552,14 +552,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -584,16 +584,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -618,14 +618,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -650,18 +650,18 @@ Occurs when a in a is clicked. - to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. - - A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + to its event handler. Therefore it only indicates that a click has occurred. If you need more specific mouse information (button, number of clicks, wheel rotation, or location), use the event. However, the event will not be raised if the click is caused by action other than that of the mouse, such as pressing the ENTER key. + + A double-click is determined by the mouse settings of the user's operating system. The user can set the time between clicks of a mouse button that should be considered a double-click instead of two clicks. The `Click` event is raised every time that a control is double-clicked. For example, if you have event handlers for the `Click` and events of a control, the `Click` and events are raised when the control is double-clicked and both methods are called. If a control is double-clicked and that control does not support the event, the `Click` event might be raised two times. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -686,16 +686,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -726,16 +726,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -760,16 +760,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -794,14 +794,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -826,14 +826,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -858,16 +858,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -892,16 +892,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -926,14 +926,14 @@ Occurs when a control in a is double-clicked. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -958,14 +958,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -991,16 +991,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1026,16 +1026,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1061,16 +1061,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1096,16 +1096,16 @@ Occurs when a is drawn and the property is set to a value other than . - control using owner drawing. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control using owner drawing. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1131,16 +1131,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1165,14 +1165,14 @@ Occurs when the control is entered. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1197,16 +1197,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1231,16 +1231,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1267,14 +1267,14 @@ Overrides . This method must be overridden. The class is the base class for all control arrays that are used in applications upgraded from Visual Basic 6.0. Because this class is not typically used to create an instance of the class, this method is usually not called directly but is instead called by a derived class. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1303,14 +1303,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1335,16 +1335,16 @@ Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1369,16 +1369,16 @@ Occurs when the user requests help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1408,14 +1408,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1440,16 +1440,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1478,19 +1478,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1515,14 +1515,14 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the user starts dragging a node. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1547,24 +1547,24 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1590,28 +1590,28 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `KeyPress` + + + + The `KeyPress` event is not raised by noncharacter keys; however, the noncharacter keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1637,24 +1637,24 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1680,16 +1680,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1715,34 +1715,34 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1768,16 +1768,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1802,16 +1802,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1836,29 +1836,29 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control loses or gains mouse capture. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate an event instead of the second `MouseClick` event. + > [!NOTE] -> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - +> events are logically higher-level events of a control. They are often raised by other actions, such as pressing the ENTER key when the control has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1883,29 +1883,29 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control is clicked by the mouse. - - - - - `MouseClick` - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + `MouseClick` + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a event instead of the second `MouseClick` event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1931,29 +1931,29 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control is double-clicked by the mouse. - - - - - - - - - Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. - -> [!NOTE] -> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + + + + + Two clicks that occur close enough in time, as determined by the mouse settings of the user's operating system, will generate a `DoubleClick` event instead of the second event. + +> [!NOTE] +> events are logically higher-level events of a shape. They are often raised by other actions, such as pressing the ENTER key when the shape has focus. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1979,26 +1979,26 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is pressed. - - - - - / `MouseDown` / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / `MouseDown` / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2024,26 +2024,26 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2069,30 +2069,30 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2118,26 +2118,26 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2163,26 +2163,26 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the mouse pointer is moved over the control. - - - `MouseMove` - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + `MouseMove` + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2208,26 +2208,26 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the mouse pointer is over the control and a mouse button is released. - - - - - / / - - `MouseUp` - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + + + + + / / + + `MouseUp` + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2253,14 +2253,14 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2286,16 +2286,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the user clicks a with the mouse. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2320,16 +2320,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the user double-clicks a with the mouse. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2354,16 +2354,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the mouse hovers over a . - , the `NodeMouseHover` event will occur before the event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + , the `NodeMouseHover` event will occur before the event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2388,16 +2388,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2422,16 +2422,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2456,16 +2456,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2491,14 +2491,14 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2524,16 +2524,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2567,14 +2567,14 @@ MsgBox(CStr(TreeViewArray(1).Text)) A . Not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2599,18 +2599,18 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2636,16 +2636,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2670,16 +2670,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2715,14 +2715,14 @@ MsgBox(CStr(TreeViewArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2758,14 +2758,14 @@ MsgBox(CStr(TreeViewArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2790,16 +2790,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2824,18 +2824,18 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2860,16 +2860,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2895,16 +2895,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2929,16 +2929,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2963,46 +2963,46 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3028,46 +3028,46 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - -> [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + +> [!NOTE] +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -3093,16 +3093,16 @@ MsgBox(CStr(TreeViewArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/UNAME.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/UNAME.xml index 31667687c45..39b384643fa 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/UNAME.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/UNAME.xml @@ -27,13 +27,13 @@ Provides a that represents a pointer to a Name property in an application that has been upgraded from Visual Basic 6.0. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -58,13 +58,13 @@ Contains a for the internal structure. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/UpdateMode.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/UpdateMode.xml index 7a427c4658b..3ef8b0112e6 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/UpdateMode.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/UpdateMode.xml @@ -26,14 +26,14 @@ Provides constants for compatibility with the Visual Basic 6.0 method. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/VScrollBarArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/VScrollBarArray.xml index 7ea8e28781a..d6ace3c3676 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/VScrollBarArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/VScrollBarArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -144,16 +144,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -192,14 +192,14 @@ if is a member of the control array; otherwise, . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,16 +224,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -258,14 +258,14 @@ Occurs when the focus or keyboard user interface (UI) cues change. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -290,16 +290,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -330,16 +330,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -364,16 +364,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -398,14 +398,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -430,14 +430,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -462,16 +462,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -496,16 +496,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -530,14 +530,14 @@ Occurs when a drag-and-drop operation is completed. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -563,16 +563,16 @@ Occurs when an object is dragged into the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -598,16 +598,16 @@ Occurs when an object is dragged out of the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -633,16 +633,16 @@ Occurs when an object is dragged over the control's bounds. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -668,16 +668,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -702,34 +702,34 @@ Occurs when the control is entered. - or method, focus events occur in the following order: - - `Enter` - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - `Enter` - - - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + `Enter` + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + `Enter` + + + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -756,14 +756,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -792,19 +792,19 @@ Gets the index of a in a . A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -829,16 +829,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs during a drag operation. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -864,16 +864,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the user requests Help for a control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -903,14 +903,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) A control. Gets a value that determines whether a control is a member of a . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -939,19 +939,19 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -976,24 +976,24 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1019,28 +1019,28 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when a key is pressed and the control has focus. - - - `KeyPress` - - - - The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. - - Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + `KeyPress` + + + + The `KeyPress` event is not raised by non-character keys; however, the non-character keys do raise the and events. + + Use the property to sample keystrokes at run time and to consume or modify a subset of common keystrokes. + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1066,24 +1066,24 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when a key is released and the control has focus. - - - - - `KeyUp` - - To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + `KeyUp` + + To handle keyboard events only at the form level and not enable controls to receive keyboard events, set the property in the form's event-handling method to `true`. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1109,16 +1109,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when a control should reposition its child controls. - and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + and methods. Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. For example, if you resize and move a control, each operation would raise a `Layout` event. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1144,34 +1144,34 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the input focus leaves the control. - or method, focus events occur in the following order: - - - - - - `Leave` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - `Leave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or method, focus events occur in the following order: + + + + + + `Leave` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + `Leave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1197,16 +1197,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1231,16 +1231,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1265,14 +1265,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control loses or gains mouse capture. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1298,26 +1298,26 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the mouse pointer enters the control. - - - / / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + / / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1343,32 +1343,32 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the mouse pointer rests on the control. - property. - - The `MouseHover` event is defined and detected in connection with the and properties. - - Mouse events occur in the following order: - - - - - - `MouseHover` - - / - - - - - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property. + + The `MouseHover` event is defined and detected in connection with the and properties. + + Mouse events occur in the following order: + + + + + + `MouseHover` + + / + + + + + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1394,26 +1394,26 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the mouse pointer leaves the control. - - - - - / / - - - - `MouseLeave` - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + + + + + / / + + + + `MouseLeave` + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1439,14 +1439,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1472,16 +1472,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1506,16 +1506,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1540,16 +1540,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when an is providing Help to accessibility applications. - class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + class to enable users to invoke Help on your accessible object by pressing the F1 key. The gives you complete information in the . + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1575,14 +1575,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs during a drag-and-drop operation and enables the drag source to determine whether the drag-and-drop operation should be canceled. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1608,16 +1608,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1651,14 +1651,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1683,18 +1683,18 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1720,14 +1720,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the user scrolls the control. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1763,14 +1763,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1806,14 +1806,14 @@ MsgBox(CStr(VScrollBarArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1838,16 +1838,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1872,18 +1872,18 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control style changes. - flags have been added or changed. - - This event is raised if the control style is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + flags have been added or changed. + + This event is raised if the control style is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1908,16 +1908,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1943,16 +1943,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1977,16 +1977,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2011,46 +2011,46 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2076,46 +2076,46 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2141,16 +2141,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -2175,16 +2175,16 @@ MsgBox(CStr(VScrollBarArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/WebBrowserArray.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/WebBrowserArray.xml index 07fc6fa7925..ef48dab503d 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/WebBrowserArray.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/WebBrowserArray.xml @@ -31,14 +31,14 @@ Provides a control array of controls. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -74,14 +74,14 @@ Initializes a new instance of the class. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -112,14 +112,14 @@ The where the control array will be hosted. Initializes a new instance of the class, specifying its container. - , you must also call the method to create the initial element in the array. - + , you must also call the method to create the initial element in the array. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -158,14 +158,14 @@ if is a member of the control array; otherwise . - control is the base element of the control array from which the other elements were cloned. - + control is the base element of the control array from which the other elements were cloned. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -190,16 +190,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -224,16 +224,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -264,16 +264,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -298,16 +298,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -332,14 +332,14 @@ Occurs when a new control is added to the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -364,14 +364,14 @@ Occurs when a control is removed from the . - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -396,16 +396,16 @@ Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -430,36 +430,36 @@ Occurs when the control finishes loading a document. - control navigates to a new document whenever one of the following properties is set or methods is called: - -- - -- - -- - -- - -- - -- - -- - -- - - Handle the `DocumentCompleted` event to receive notification when the new document finishes loading. When the `DocumentCompleted` event occurs, the new document is fully loaded, which means you can access its contents through the , , or property. - - To receive notification before navigation starts, handle the event. Handling this event lets you cancel navigation if certain conditions have not been met, for example, when the user has not completely filled out a form. Handle the event to receive notification when the control finishes navigation and has begun loading the document at the new location. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control navigates to a new document whenever one of the following properties is set or methods is called: + +- + +- + +- + +- + +- + +- + +- + +- + + Handle the `DocumentCompleted` event to receive notification when the new document finishes loading. When the `DocumentCompleted` event occurs, the new document is fully loaded, which means you can access its contents through the , , or property. + + To receive notification before navigation starts, handle the event. Handling this event lets you cancel navigation if certain conditions have not been met, for example, when the user has not completely filled out a form. Handle the event to receive notification when the control finishes navigation and has begun loading the document at the new location. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -484,14 +484,14 @@ Occurs when the control downloads a file. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -518,14 +518,14 @@ Overrides . The type of a control in a control array. - method instead. - + method instead. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -554,14 +554,14 @@ Gets the index of a in a . A that represents the index of the specified . - . - + . + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -590,14 +590,14 @@ An . Overrides . - method. - + method. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -626,19 +626,19 @@ Gets a specific element of a by index. Read-only. A at the specified in the control array. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -663,16 +663,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -697,16 +697,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -731,14 +731,14 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the control is moved. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -764,36 +764,36 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the control has navigated to a new document and has begun loading it. - control navigates to a new document whenever one of the following properties is set or methods is called: - -- - -- - -- - -- - -- - -- - -- - -- - - Handle the `Navigated` event to receive notification when the control has navigated to a new document. When the `Navigated` event occurs, the new document has begun loading, which means you can access the loaded content through the , , and properties. Handle the event to receive notification when the control finishes loading the new document. - - You can also receive notification before navigation starts by handling the event. Handling this event lets you cancel navigation if certain conditions have not been met, for example, the user has not filled out a form. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control navigates to a new document whenever one of the following properties is set or methods is called: + +- + +- + +- + +- + +- + +- + +- + +- + + Handle the `Navigated` event to receive notification when the control has navigated to a new document. When the `Navigated` event occurs, the new document has begun loading, which means you can access the loaded content through the , , and properties. Handle the event to receive notification when the control finishes loading the new document. + + You can also receive notification before navigation starts by handling the event. Handling this event lets you cancel navigation if certain conditions have not been met, for example, the user has not filled out a form. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -818,36 +818,36 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs before the control navigates to a new document. - control navigates to a new document whenever one of the following properties is set or methods is called: - -- - -- - -- - -- - -- - -- - -- - -- - - You can handle the `Navigating` event to cancel navigation if certain conditions have not been met, for example, when the user has not completely filled out a form. To cancel navigation, set the `Cancel` property of the object passed to the event handler to `true`. You can also use this object to retrieve the URL of the new document through the property. If the new document will be displayed in a Web page frame, you can retrieve the name of the frame through the property. - - Handle the event to receive notification when the control finishes navigation and has begun loading the document at the new location. Handle the event to receive notification when the control finishes loading the new document. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control navigates to a new document whenever one of the following properties is set or methods is called: + +- + +- + +- + +- + +- + +- + +- + +- + + You can handle the `Navigating` event to cancel navigation if certain conditions have not been met, for example, when the user has not completely filled out a form. To cancel navigation, set the `Cancel` property of the object passed to the event handler to `true`. You can also use this object to retrieve the URL of the new document through the property. If the new document will be displayed in a Web page frame, you can retrieve the name of the frame through the property. + + Handle the event to receive notification when the control finishes navigation and has begun loading the document at the new location. Handle the event to receive notification when the control finishes loading the new document. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -872,18 +872,18 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs before a new browser window is opened. - control opens a separate browser window when the appropriate overload of the method is called or when the user clicks **Open in New Window** on the browser shortcut menu when the mouse pointer hovers over a hyperlink. You can disable the shortcut menu by setting the property to `false`. - - The `NewWindow` event occurs before the new browser window is opened. You can handle this event, for example, to prevent the window from opening when certain conditions have not been met. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + control opens a separate browser window when the appropriate overload of the method is called or when the user clicks **Open in New Window** on the browser shortcut menu when the mouse pointer hovers over a hyperlink. You can disable the shortcut menu by setting the property to `false`. + + The `NewWindow` event occurs before the new browser window is opened. You can handle this event, for example, to prevent the window from opening when certain conditions have not been met. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -908,16 +908,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the control's property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -942,16 +942,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the control has updated information about the download progress of a document that it is navigating to. - property to determine the number of bytes that have been downloaded successfully. Use the property to determine the total number of bytes available for downloading. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property to determine the number of bytes that have been downloaded successfully. Use the property to determine the total number of bytes available for downloading. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -976,16 +976,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the value of the property changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1019,14 +1019,14 @@ MsgBox(CStr(WebBrowserArray(1).Text)) A . The method is not supported in the class. - [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1051,18 +1051,18 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the control is resized. - of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). - - To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + of the resized control, you can cast the `sender` parameter of the data to a and get its property (or and properties individually). + + To handle custom layouts, use the event instead of the `Resize` event. The event is raised in response to a `Resize` event, but also in response to other changes that affect the layout of the control. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1099,14 +1099,14 @@ MsgBox(CStr(WebBrowserArray(1).Text)) A that represents the index of the specified . Sets the index of the initial in a . - method and specify the `Index`. - + method and specify the `Index`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1142,14 +1142,14 @@ MsgBox(CStr(WebBrowserArray(1).Text)) if is a member of this control array; otherwise, . - is a member of a different , `ShouldSerializeIndex` returns `false`. - + is a member of a different , `ShouldSerializeIndex` returns `false`. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1174,16 +1174,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1208,16 +1208,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the system colors change. - is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1243,46 +1243,46 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the control is finished validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - - - `Validated` - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - - - `Validated` - - If the property is set to `false`, the and `Validated` events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + + + `Validated` + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + + + `Validated` + + If the property is set to `false`, the and `Validated` events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1308,46 +1308,46 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the control is validating. - or methods, or by setting the property to the current form, focus events occur in the following order: - - - - - - - - `Validating` - - - - - - When you change the focus by using the mouse or by calling the method, focus events occur in the following order: - - - - - - - - - - `Validating` - - - - If the property is set to `false`, the and events are suppressed. - - If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + or methods, or by setting the property to the current form, focus events occur in the following order: + + + + + + + + `Validating` + + + + + + When you change the focus by using the mouse or by calling the method, focus events occur in the following order: + + + + + + + + + + `Validating` + + + + If the property is set to `false`, the and events are suppressed. + + If the property of the is set to `true` in the event delegate, all events that would usually occur after the event are suppressed. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> @@ -1373,16 +1373,16 @@ MsgBox(CStr(WebBrowserArray(1).Text)) Occurs when the property value changes. - property is changed by either a programmatic modification or user interaction. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - + property is changed by either a programmatic modification or user interaction. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Compatibility.VB6/ZOrderConstants.xml b/xml/Microsoft.VisualBasic.Compatibility.VB6/ZOrderConstants.xml index 1046cc7a7a6..09f40344d94 100644 --- a/xml/Microsoft.VisualBasic.Compatibility.VB6/ZOrderConstants.xml +++ b/xml/Microsoft.VisualBasic.Compatibility.VB6/ZOrderConstants.xml @@ -22,14 +22,14 @@ Provides constants for compatibility with the Visual Basic 6.0 method. - and functions. These constants enable code that has been upgraded from Visual Basic 6.0 to continue to run without additional modification. - + and functions. These constants enable code that has been upgraded from Visual Basic 6.0 to continue to run without additional modification. + > [!NOTE] -> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. - +> Functions and objects in the namespace are provided for use by the tools for upgrading from Visual Basic 6.0 to Visual Basic. In most cases, these functions and objects duplicate functionality that you can find in other namespaces in the .NET Framework. They are necessary only when the Visual Basic 6.0 code model differs significantly from the .NET Framework implementation. + ]]> diff --git a/xml/Microsoft.VisualBasic.Devices/Clock.xml b/xml/Microsoft.VisualBasic.Devices/Clock.xml index da45f005219..b3063b36641 100644 --- a/xml/Microsoft.VisualBasic.Devices/Clock.xml +++ b/xml/Microsoft.VisualBasic.Devices/Clock.xml @@ -30,18 +30,18 @@ Provides properties for accessing the current local time and Universal Coordinated Time (equivalent to Greenwich Mean Time) from the system clock. - @@ -119,30 +119,30 @@ Gets a object that contains the current local date and time on the computer, expressed as a UTC (GMT) time. A object that contains the current date and time expressed as UTC (GMT) time. - property. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - This example uses the `My.Computer.Clock.GmtTime` property to display the GMT time of the computer on which the code runs. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class1.vb" id="Snippet22"::: - + property. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + This example uses the `My.Computer.Clock.GmtTime` property to display the GMT time of the computer on which the code runs. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class1.vb" id="Snippet22"::: + ]]> @@ -183,30 +183,30 @@ Gets a object that contains the current local date and time on this computer. A object that contains the current local date and time. - property. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - This example uses the `My.Computer.Clock.LocalTime` property to display the local time of the computer on which the code runs. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class1.vb" id="Snippet21"::: - + property. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + This example uses the `My.Computer.Clock.LocalTime` property to display the local time of the computer on which the code runs. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class1.vb" id="Snippet21"::: + ]]> @@ -247,43 +247,43 @@ Gets the millisecond count from the computer's system timer. An containing the millisecond count from the computer's system timer. - [!CAUTION] -> When the value of the `TickCount` property reaches the maximum integer value (), it then jumps to the minimum integer value (), a negative number, and continues to increment. - - If the computer runs continuously, `TickCount` increments from zero to the maximum integer value in approximately 24.9 days. - - The `TickCount` property increments only when the operating system is running; it pauses when the computer goes into certain power-saving modes, such as standby or hibernation. The `TickCount` property is unrelated to the computer's clock setting. - - Use the property or property to obtain the current local date and time on this computer. - - The `My.Computer.Clock.TickCount` property has the same behavior as the property. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|**Yes**| -|Windows Service|**Yes**| -|Web Site|**Yes**| - - - -## Examples - The following example uses the `My.Computer.Clock.TickCount` property to run a task in a loop for a given number of seconds, even if the computer's system time changes while it runs. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class1.vb" id="Snippet20"::: - +> When the value of the `TickCount` property reaches the maximum integer value (), it then jumps to the minimum integer value (), a negative number, and continues to increment. + + If the computer runs continuously, `TickCount` increments from zero to the maximum integer value in approximately 24.9 days. + + The `TickCount` property increments only when the operating system is running; it pauses when the computer goes into certain power-saving modes, such as standby or hibernation. The `TickCount` property is unrelated to the computer's clock setting. + + Use the property or property to obtain the current local date and time on this computer. + + The `My.Computer.Clock.TickCount` property has the same behavior as the property. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|**Yes**| +|Windows Service|**Yes**| +|Web Site|**Yes**| + + + +## Examples + The following example uses the `My.Computer.Clock.TickCount` property to run a task in a loop for a given number of seconds, even if the computer's system time changes while it runs. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class1.vb" id="Snippet20"::: + ]]> diff --git a/xml/Microsoft.VisualBasic.Devices/Keyboard.xml b/xml/Microsoft.VisualBasic.Devices/Keyboard.xml index 290579db174..a0452c7d7ab 100644 --- a/xml/Microsoft.VisualBasic.Devices/Keyboard.xml +++ b/xml/Microsoft.VisualBasic.Devices/Keyboard.xml @@ -30,37 +30,37 @@ Provides properties for accessing the current state of the keyboard, such as what keys are currently pressed, and provides a method to send keystrokes to the active window. - @@ -138,30 +138,30 @@ if the ALT key is down; otherwise, . - property. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example uses the `My.Computer.Keyboard.AltKeyDown` property to determine if the computer's ALT key is down. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet23"::: - + property. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example uses the `My.Computer.Keyboard.AltKeyDown` property to determine if the computer's ALT key is down. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet23"::: + ]]> @@ -205,30 +205,30 @@ Gets a value that indicates whether CAPS LOCK is turned on. A value: if CAPS LOCK is turned on; otherwise, . - @@ -266,30 +266,30 @@ if a CTRL key is down; otherwise, . - property. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example uses the `My.Computer.Keyboard.CtrlKeyDown` property to determine if the computer's CTRL key is down. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet34"::: - + property. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example uses the `My.Computer.Keyboard.CtrlKeyDown` property to determine if the computer's CTRL key is down. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet34"::: + ]]> @@ -334,30 +334,30 @@ if NUM LOCK is on; otherwise, . - @@ -401,30 +401,30 @@ if SCROLL LOCK is on; otherwise, . - @@ -479,70 +479,70 @@ A that defines the keys to send. Sends one or more keystrokes to the active window, as if typed on the keyboard. - and methods. - - The `wait` argument is useful if the other application must finish before your application can continue. - + and methods. + + The `wait` argument is useful if the other application must finish before your application can continue. + > [!NOTE] -> Because there is no managed method to activate another application, you can either use this class within the current application, manually select the window to send the keys to, or use Windows API methods, such as `FindWindow` and `SetForegroundWindow`, to force focus on other applications. For more information, see [Walkthrough: Calling Windows APIs](/dotnet/visual-basic/programming-guide/com-interop/walkthrough-calling-windows-apis). - - The `keys` argument can specify any single key or any key combined with ALT, CTRL, or SHIFT (or any combination of those keys). Each key is represented by one or more characters, such as `a` for the character "a", or `{ENTER}` for the ENTER key. - - To combine a key with SHIFT, precede the key code with `+` (plus sign). To combine a key with CTRL, precede the key code with `^` (caret). To combine a key with ALT, precede the key code with `%` (percent sign). To specify repeating keys, use the form `{`*key number*`}`. You must put a space between *key* and *number*. For example, `{LEFT 42}` means "press the LEFT ARROW key 42 times"; `{h 10}` means "press 'h' 10 times." - - The following table lists the codes that can be used to specify characters that are not displayed when you press the corresponding key (such as ENTER or TAB). - -|Key|Code| -|-|-| -|BACKSPACE|{BACKSPACE} or {BS}| -|BREAK|{BREAK}| -|CAPS LOCK|{CAPSLOCK}| -|CLEAR|{CLEAR}| -|DELETE|{DELETE} or {DEL}| -|DOWN ARROW|{DOWN}| -|END|{END}| -|ENTER (numeric keypad)|{ENTER}| -|ENTER|~| -|ESC|{ESCAPE} or {ESC}| -|HELP|{HELP}| -|HOME|{HOME}| -|INS|{INSERT}| -|LEFT ARROW|{LEFT}| -|NUM LOCK|{NUMLOCK}| -|PAGE DOWN|{PGDN}| -|PAGE UP|{PGUP}| -|RETURN|{RETURN}| -|RIGHT ARROW|{RIGHT}| -|SCROLL LOCK|{SCROLLLOCK}| -|TAB|{TAB}| -|UP ARROW|{UP}| -|F1 through F15|{F1} through {F15}| - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - -## Examples +> Because there is no managed method to activate another application, you can either use this class within the current application, manually select the window to send the keys to, or use Windows API methods, such as `FindWindow` and `SetForegroundWindow`, to force focus on other applications. For more information, see [Walkthrough: Calling Windows APIs](/dotnet/visual-basic/programming-guide/com-interop/walkthrough-calling-windows-apis). + + The `keys` argument can specify any single key or any key combined with ALT, CTRL, or SHIFT (or any combination of those keys). Each key is represented by one or more characters, such as `a` for the character "a", or `{ENTER}` for the ENTER key. + + To combine a key with SHIFT, precede the key code with `+` (plus sign). To combine a key with CTRL, precede the key code with `^` (caret). To combine a key with ALT, precede the key code with `%` (percent sign). To specify repeating keys, use the form `{`*key number*`}`. You must put a space between *key* and *number*. For example, `{LEFT 42}` means "press the LEFT ARROW key 42 times"; `{h 10}` means "press 'h' 10 times." + + The following table lists the codes that can be used to specify characters that are not displayed when you press the corresponding key (such as ENTER or TAB). + +|Key|Code| +|-|-| +|BACKSPACE|{BACKSPACE} or {BS}| +|BREAK|{BREAK}| +|CAPS LOCK|{CAPSLOCK}| +|CLEAR|{CLEAR}| +|DELETE|{DELETE} or {DEL}| +|DOWN ARROW|{DOWN}| +|END|{END}| +|ENTER (numeric keypad)|{ENTER}| +|ENTER|~| +|ESC|{ESCAPE} or {ESC}| +|HELP|{HELP}| +|HOME|{HOME}| +|INS|{INSERT}| +|LEFT ARROW|{LEFT}| +|NUM LOCK|{NUMLOCK}| +|PAGE DOWN|{PGDN}| +|PAGE UP|{PGUP}| +|RETURN|{RETURN}| +|RIGHT ARROW|{RIGHT}| +|SCROLL LOCK|{SCROLLLOCK}| +|TAB|{TAB}| +|UP ARROW|{UP}| +|F1 through F15|{F1} through {F15}| + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + +## Examples This example uses the `My.Computer.Keyboard.SendKeys` method to send keystrokes to an external application, the Notepad application, started by the method. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet25"::: An exception is raised if an application with the requested process identifier cannot be found. - + The call to the method requires full trust ( class). - + ]]> A partial-trust situation exists in which the user lacks necessary permissions. @@ -588,70 +588,70 @@ The call to the method require Optional. A that specifies whether or not to wait for keystrokes to get processed before the application continues. by default. Sends one or more keystrokes to the active window, as if typed on the keyboard. - and methods. - - The `wait` argument is useful if the other application must finish before your application can continue. - + and methods. + + The `wait` argument is useful if the other application must finish before your application can continue. + > [!NOTE] -> Because there is no managed method to activate another application, you can either use this class within the current application, manually select the window to send the keys to, or use Windows API methods, such as `FindWindow` and `SetForegroundWindow`, to force focus on other applications. For more information, see [Walkthrough: Calling Windows APIs](/dotnet/visual-basic/programming-guide/com-interop/walkthrough-calling-windows-apis). - - The `keys` argument can specify any single key or any key combined with ALT, CTRL, or SHIFT (or any combination of those keys). Each key is represented by one or more characters, such as `a` for the character "a", or `{ENTER}` for the ENTER key. - - To combine a key with SHIFT, precede the key code with `+` (plus sign). To combine a key with CTRL, precede the key code with `^` (caret). To combine a key with ALT, precede the key code with `%` (percent sign). To specify repeating keys, use the form `{`*key number*`}`. You must put a space between *key* and *number*. For example, `{LEFT 42}` means "press the LEFT ARROW key 42 times"; `{h 10}` means "press 'h' 10 times." - - The following table lists the codes that can be used to specify characters that are not displayed when you press the corresponding key (such as ENTER or TAB). - -|Key|Code| -|-|-| -|BACKSPACE|{BACKSPACE} or {BS}| -|BREAK|{BREAK}| -|CAPS LOCK|{CAPSLOCK}| -|CLEAR|{CLEAR}| -|DELETE|{DELETE} or {DEL}| -|DOWN ARROW|{DOWN}| -|END|{END}| -|ENTER (numeric keypad)|{ENTER}| -|ENTER|~| -|ESC|{ESCAPE} or {ESC}| -|HELP|{HELP}| -|HOME|{HOME}| -|INS|{INSERT}| -|LEFT ARROW|{LEFT}| -|NUM LOCK|{NUMLOCK}| -|PAGE DOWN|{PGDN}| -|PAGE UP|{PGUP}| -|RETURN|{RETURN}| -|RIGHT ARROW|{RIGHT}| -|SCROLL LOCK|{SCROLLLOCK}| -|TAB|{TAB}| -|UP ARROW|{UP}| -|F1 through F15|{F1} through {F15}| - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| +> Because there is no managed method to activate another application, you can either use this class within the current application, manually select the window to send the keys to, or use Windows API methods, such as `FindWindow` and `SetForegroundWindow`, to force focus on other applications. For more information, see [Walkthrough: Calling Windows APIs](/dotnet/visual-basic/programming-guide/com-interop/walkthrough-calling-windows-apis). + + The `keys` argument can specify any single key or any key combined with ALT, CTRL, or SHIFT (or any combination of those keys). Each key is represented by one or more characters, such as `a` for the character "a", or `{ENTER}` for the ENTER key. + + To combine a key with SHIFT, precede the key code with `+` (plus sign). To combine a key with CTRL, precede the key code with `^` (caret). To combine a key with ALT, precede the key code with `%` (percent sign). To specify repeating keys, use the form `{`*key number*`}`. You must put a space between *key* and *number*. For example, `{LEFT 42}` means "press the LEFT ARROW key 42 times"; `{h 10}` means "press 'h' 10 times." + + The following table lists the codes that can be used to specify characters that are not displayed when you press the corresponding key (such as ENTER or TAB). + +|Key|Code| +|-|-| +|BACKSPACE|{BACKSPACE} or {BS}| +|BREAK|{BREAK}| +|CAPS LOCK|{CAPSLOCK}| +|CLEAR|{CLEAR}| +|DELETE|{DELETE} or {DEL}| +|DOWN ARROW|{DOWN}| +|END|{END}| +|ENTER (numeric keypad)|{ENTER}| +|ENTER|~| +|ESC|{ESCAPE} or {ESC}| +|HELP|{HELP}| +|HOME|{HOME}| +|INS|{INSERT}| +|LEFT ARROW|{LEFT}| +|NUM LOCK|{NUMLOCK}| +|PAGE DOWN|{PGDN}| +|PAGE UP|{PGUP}| +|RETURN|{RETURN}| +|RIGHT ARROW|{RIGHT}| +|SCROLL LOCK|{SCROLLLOCK}| +|TAB|{TAB}| +|UP ARROW|{UP}| +|F1 through F15|{F1} through {F15}| + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| ## Examples This example uses the `My.Computer.Keyboard.SendKeys` method to send keystrokes to an external application, the Notepad application, started by the method. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet25"::: An exception is raised if an application with the requested process identifier cannot be found. - + The call to the method requires full trust ( class). - + ]]> A partial-trust situation exists in which the user lacks necessary permissions. @@ -693,30 +693,30 @@ The call to the method require if a SHIFT key is down; otherwise, . - property. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example uses the `My.Computer.Keyboard.ShiftKeyDown` property to determine if one of the computer's SHIFT keys is down. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet47"::: - + property. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example uses the `My.Computer.Keyboard.ShiftKeyDown` property to determine if one of the computer's SHIFT keys is down. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet47"::: + ]]> diff --git a/xml/Microsoft.VisualBasic.Devices/Mouse.xml b/xml/Microsoft.VisualBasic.Devices/Mouse.xml index ce951608aa3..abcfa8ef362 100644 --- a/xml/Microsoft.VisualBasic.Devices/Mouse.xml +++ b/xml/Microsoft.VisualBasic.Devices/Mouse.xml @@ -30,30 +30,30 @@ Provides properties for getting information about the format and configuration of the mouse installed on the local computer. - Objects (Visual Basic) @@ -94,11 +94,11 @@ Initializes a new instance of the class. - Objects (Visual Basic) @@ -133,34 +133,34 @@ Gets a that indicates if the functionality of the left and right mouse buttons has been swapped. A with a value if the functionality of the left and right mouse buttons has been swapped; otherwise, . - property. - -- Provides information about the computer that runs the code. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example uses the `My.Computer.Mouse.ButtonsSwapped` property to determine if functionality of the left and right mouse buttons has been swapped. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet35"::: - + property. + +- Provides information about the computer that runs the code. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example uses the `My.Computer.Mouse.ButtonsSwapped` property to determine if functionality of the left and right mouse buttons has been swapped. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet35"::: + ]]> The computer has no mouse installed. @@ -196,34 +196,34 @@ Gets a that indicates if the mouse has a scroll wheel. A Boolean with value if the mouse has a scroll wheel; otherwise . - property. - - You should check the value of the `My.Computer.Mouse.WheelExists` property before attempting to access the property, which throws an exception if the mouse does not have a scroll wheel. - - The `My.Computer.Mouse.WheelExists` property provides information about the computer that runs the code. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example uses the `My.Computer.Mouse.WheelExists` property to determine if the mouse has a scroll wheel and how much to scroll when the mouse wheel is rotated. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet26"::: - + property. + + You should check the value of the `My.Computer.Mouse.WheelExists` property before attempting to access the property, which throws an exception if the mouse does not have a scroll wheel. + + The `My.Computer.Mouse.WheelExists` property provides information about the computer that runs the code. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example uses the `My.Computer.Mouse.WheelExists` property to determine if the mouse has a scroll wheel and how much to scroll when the mouse wheel is rotated. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet26"::: + ]]> The computer has no mouse installed. @@ -260,36 +260,36 @@ Gets a number that indicates how much to scroll when the mouse wheel is rotated one notch. An that indicates how much to scroll when the mouse wheel is rotated one notch. A positive value indicates scrolling by that number of lines, while a negative value indicates scrolling by one screen at a time. - property. - - Because this property throws an exception if the mouse does not have a scroll wheel, you should make sure a mouse has a scroll wheel by checking the `My.Computer.Mouse.WheelExists` property. - - This property provides information about the computer that runs the code. - -## Availability by Project Type - -|Project type|Available| -|-|-| -|Windows Application|**Yes**| -|Class Library|**Yes**| -|Console Application|**Yes**| -|Windows Control Library|**Yes**| -|Web Control Library|No| -|Windows Service|**Yes**| -|Web Site|No| - - - -## Examples - This example determines if the mouse has a scroll wheel and uses the `My.Computer.Mouse.WheelExists` property to determine how much to scroll when the mouse wheel is rotated. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet26"::: - + property. + + Because this property throws an exception if the mouse does not have a scroll wheel, you should make sure a mouse has a scroll wheel by checking the `My.Computer.Mouse.WheelExists` property. + + This property provides information about the computer that runs the code. + +## Availability by Project Type + +|Project type|Available| +|-|-| +|Windows Application|**Yes**| +|Class Library|**Yes**| +|Console Application|**Yes**| +|Windows Control Library|**Yes**| +|Web Control Library|No| +|Windows Service|**Yes**| +|Web Site|No| + + + +## Examples + This example determines if the mouse has a scroll wheel and uses the `My.Computer.Mouse.WheelExists` property to determine how much to scroll when the mouse wheel is rotated. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyComputer/VB/Class2.vb" id="Snippet26"::: + ]]> The mouse has no scroll wheel. diff --git a/xml/Microsoft.VisualBasic.Devices/Network.xml b/xml/Microsoft.VisualBasic.Devices/Network.xml index e55ac94680d..86c4b60d9ab 100644 --- a/xml/Microsoft.VisualBasic.Devices/Network.xml +++ b/xml/Microsoft.VisualBasic.Devices/Network.xml @@ -30,24 +30,24 @@ Provides a property, event, and methods for interacting with the network to which the computer is connected. - @@ -135,33 +135,33 @@ File name and path of the downloaded file. Downloads the specified remote file and saves it in the specified location. - method to instruct it to overwrite existing files, provide user credentials, or specify a specific timeout value. - - `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - + method to instruct it to overwrite existing files, provide user credentials, or specify a specific timeout value. + + `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + > [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -216,31 +216,31 @@ File name and path of the downloaded file. Downloads the specified remote file and saves it in the specified location. - method to instruct it to overwrite existing files, provide user credentials, or specify a specific timeout value. `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - + method to instruct it to overwrite existing files, provide user credentials, or specify a specific timeout value. `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + > [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -299,36 +299,36 @@ Password to authenticate. Default is an empty string, "". Downloads the specified remote file and saves it in the specified location. - method to instruct it to overwrite existing files or specify a specific timeout value. - - `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - + method to instruct it to overwrite existing files or specify a specific timeout value. + + `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + > [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -387,36 +387,36 @@ Password to authenticate. Default is an empty string, "". Downloads the specified remote file and saves it in the specified location. - method to instruct it to overwrite existing files or specify a specific timeout value. - - `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - + method to instruct it to overwrite existing files or specify a specific timeout value. + + `DownloadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + > [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -484,38 +484,38 @@ to overwrite existing files; otherwise . Default is . Downloads the specified remote file and saves it in the specified location. - [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -585,38 +585,38 @@ to overwrite existing files; otherwise . Default is . Downloads the specified remote file and saves it in the specified location. - [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -685,38 +685,38 @@ Specifies behavior when the user clicks **Cancel** or **No** on the dialog box shown as a result of set to . Default is . Downloads the specified remote file and saves it in the specified location. - [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -785,38 +785,38 @@ to overwrite existing files; otherwise . Default is . Downloads the specified remote file and saves it in the specified location. - [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -881,38 +881,38 @@ Specifies behavior when the user clicks **Cancel** or **No** on the dialog box shown as a result of ShowUI set to . Default is . Downloads the specified remote file and saves it in the specified location. - [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -977,38 +977,38 @@ Specifies behavior when the user clicks **Cancel** or **No** on the dialog box shown as a result of ShowUI set to . Default is . Downloads the specified remote file and saves it in the specified location. - [!NOTE] -> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. - +> The `DownloadFile` method does not send optional HTTP headers. Some servers may return 500 (Internal Server Error) if the optional user agent header is missing. To send optional headers, you must construct a request using the class. + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. - -|To|See| -|-|-| -|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| - - - -## Examples - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: - - This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.DownloadFile` method. + +|To|See| +|-|-| +|Download a file|[How to: Download a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-download-a-file)| + + + +## Examples + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet7"::: + + This example downloads the file `WineList.txt` from `http://www.cohowinery.com/downloads` and saves it to `C:\Documents and Settings\All Users\Documents`, specifying a timeout interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -1055,24 +1055,24 @@ if the computer is connected to a network; otherwise . - . - - The following table lists examples of tasks involving the `My.Computer.Network.IsAvailable` property. - -|To|See| -|-|-| -|Check whether a computer is connected to a network|[How to: Check Connection Status](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-check-connection-status)| - - - -## Examples - This example checks the property's status and reports it. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet1"::: - + . + + The following table lists examples of tasks involving the `My.Computer.Network.IsAvailable` property. + +|To|See| +|-|-| +|Check whether a computer is connected to a network|[How to: Check Connection Status](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-check-connection-status)| + + + +## Examples + This example checks the property's status and reports it. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet1"::: + ]]> Objects (Visual Basic) @@ -1106,27 +1106,27 @@ Occurs when the network availability changes. - property of the `e` parameter to get the new state of the network connection. To get the current state of the network connection, use the property. - - In a Windows Forms application, this event is raised on the application's main thread with the other user-interface events. This allows the event handler to access directly the application's user interface. However, if the application is busy handling another user-interface event when this event is raised, this event cannot be processed until the other event handler finishes or calls the method. - - You cannot use the `Handles` statement to handle the `NetworkAvailabilityChanged` event; you must use the `AddHandler` statement. - - In Windows Forms applications, the `MyApplication` object exposes a `NetworkAvailabilityChanged` event that provides the same functionality as this event, but you can handle it with the `Handles` statement. - + property of the `e` parameter to get the new state of the network connection. To get the current state of the network connection, use the property. + + In a Windows Forms application, this event is raised on the application's main thread with the other user-interface events. This allows the event handler to access directly the application's user interface. However, if the application is busy handling another user-interface event when this event is raised, this event cannot be processed until the other event handler finishes or calls the method. + + You cannot use the `Handles` statement to handle the `NetworkAvailabilityChanged` event; you must use the `AddHandler` statement. + + In Windows Forms applications, the `MyApplication` object exposes a `NetworkAvailabilityChanged` event that provides the same functionality as this event, but you can handle it with the `Handles` statement. + > [!NOTE] -> Many network hubs provide a network connection, even if the hub is disconnected from a larger network. Consequently, for wired connections, this event indicates a change in the connection between the computer and a hub. - -## Examples - This example uses the `My.Computer.Network.NetworkAvailabilityChanged` event to update the user interface of a form or control. - - This code should to be in a form or control that has a named `Label1`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet50"::: - +> Many network hubs provide a network connection, even if the hub is disconnected from a larger network. Consequently, for wired connections, this event indicates a change in the connection between the computer and a hub. + +## Examples + This example uses the `My.Computer.Network.NetworkAvailabilityChanged` event to update the user interface of a form or control. + + This code should to be in a form or control that has a named `Label1`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyApplication/VB/Form1.vb" id="Snippet50"::: + ]]> @@ -1185,28 +1185,28 @@ if the operation was successful; otherwise . - No network connection is available. @@ -1249,28 +1249,28 @@ if the operation was successful; otherwise . - No network connection is available. @@ -1315,28 +1315,28 @@ if the operation was successful; otherwise . - No network connection is available. @@ -1381,28 +1381,28 @@ if the operation was successful; otherwise . - No network connection is available. @@ -1460,30 +1460,30 @@ URL, IP address, or URI of destination server. Sends the specified file to the specified host address. - method to provide user credentials or specify a specific timeout value. - - `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - + method to provide user credentials or specify a specific timeout value. + + `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> The source file path is not valid. @@ -1540,30 +1540,30 @@ URL, IP address, or URI of destination server. Sends the specified file to the specified host address. - method to provide user credentials or specify a specific timeout value. - - `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - + method to provide user credentials or specify a specific timeout value. + + `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> The source file path is not valid. @@ -1624,33 +1624,33 @@ Password to authenticate. Default is an empty string: "". Sends the specified file to the specified host address. - method to specify a specific timeout value. - - `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - + method to specify a specific timeout value. + + `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -1712,33 +1712,33 @@ Password to authenticate. Default is an empty string: "". Sends the specified file to the specified host address. - method to specify a specific timeout value. - - `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). - + method to specify a specific timeout value. + + `My.Computer.Network.UploadFile` outputs trace information when you enable network tracing in your application. For more information, see [Enabling Network Tracing](/dotnet/framework/network-programming/enabling-network-tracing). + > [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -1803,35 +1803,35 @@ Timeout interval in milliseconds. Default is 100 seconds. Sends the specified file to the specified host address. - [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -1898,35 +1898,35 @@ Timeout interval in milliseconds. Default is 100 seconds. Sends the specified file to the specified host address. - [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -1987,35 +1987,35 @@ Action to be taken when the user clicks **Cancel**. Default is . Sends the specified file to the specified host address. - [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -2082,35 +2082,35 @@ Timeout interval in milliseconds. Default is 100 seconds. Sends the specified file to the specified host address. - [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -2172,35 +2172,35 @@ Action to be taken when the user clicks **Cancel**. Default is . Sends the specified file to the specified host address. - [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -2262,35 +2262,35 @@ Action to be taken when the user clicks **Cancel**. Default is . Sends the specified file to the specified host address. - [!NOTE] -> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. - - The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. - -|To|See| -|-|-| -|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| - - - -## Examples - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: - - This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: - +> The FTP protocol sends information, including passwords, in plain text and should not be used for transmitting sensitive information. + + The following table lists an example of a task involving the `My.Computer.Network.UploadFile` method. + +|To|See| +|-|-| +|Upload a file|[How to: Upload a File](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-upload-a-file)| + + + +## Examples + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet2"::: + + This example uploads the file `Order.txt` to `http://www.cohowinery.com/uploads` without supplying a user name or password, shows the progress of the upload, and has a time-out interval of 500 milliseconds. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMyNetwork/VB/Class1.vb" id="Snippet3"::: + ]]> diff --git a/xml/Microsoft.VisualBasic.Devices/Ports.xml b/xml/Microsoft.VisualBasic.Devices/Ports.xml index 1aaf012ae6b..6439d018fc1 100644 --- a/xml/Microsoft.VisualBasic.Devices/Ports.xml +++ b/xml/Microsoft.VisualBasic.Devices/Ports.xml @@ -605,9 +605,9 @@ This example requires: -- A reference to the namespace. +- A reference to the namespace. -- That your form have a control named `ListBox1`. +- That your form have a control named `ListBox1`. For more information, see [How to: Show Available Serial Ports](/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-show-available-serial-ports). diff --git a/xml/Microsoft.VisualBasic.FileIO/FileSystem.xml b/xml/Microsoft.VisualBasic.FileIO/FileSystem.xml index e33b1593cf5..8ff7d8884fc 100644 --- a/xml/Microsoft.VisualBasic.FileIO/FileSystem.xml +++ b/xml/Microsoft.VisualBasic.FileIO/FileSystem.xml @@ -3611,7 +3611,7 @@ The `OpenTextFileWriter` method opens and initializes a stream for a file and then returns the object for that stream. You can write to the steam as many times as necessary and then close it when you are finished. > [!NOTE] -> You must call the method on the object to make sure that all data is correctly written to the underlying stream. +> You must call the method on the object to make sure that all data is correctly written to the underlying stream. If you are writing only a few strings to a file, it might be simpler to use the method. @@ -3685,7 +3685,7 @@ The `OpenTextFileWriter` method opens and initializes a stream for a file and then returns the object for that stream. You can write to the steam as many times as necessary and then close it when you are finished. > [!NOTE] -> You must call the method on the object to make sure that all data is correctly written to the underlying stream. +> You must call the method on the object to make sure that all data is correctly written to the underlying stream. If you are writing only a few strings to a file, it might be simpler to use the method. @@ -4138,7 +4138,7 @@ If the specified path, excluding the file name, is not valid, a exception will be thrown. If the path is valid but the file does not exist, the file is created. > [!NOTE] -> The `WriteAllBytes` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllBytes` method is simpler than code that uses a object. However, if you are adding data to a file using a loop, a object can provide better performance because you only have to open and close the file once. +> The `WriteAllBytes` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllBytes` method is simpler than code that uses a object. However, if you are adding data to a file using a loop, a object can provide better performance because you only have to open and close the file once. The following table lists an example of a task involving the `My.Computer.FileSystem.WriteAllBytes` method. @@ -4225,7 +4225,7 @@ If the specified encoding does not match the existing encoding of the file, the specified coding is ignored. > [!NOTE] -> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. +> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. The following table lists examples of tasks involving the `My.Computer.FileSystem.WriteAllText` method. @@ -4310,7 +4310,7 @@ If the specified encoding does not match the existing encoding of the file, the specified coding is ignored. > [!NOTE] -> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. +> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. The following table lists examples of tasks involving the `My.Computer.FileSystem.WriteAllText` method. diff --git a/xml/Microsoft.VisualBasic.FileIO/TextFieldParser.xml b/xml/Microsoft.VisualBasic.FileIO/TextFieldParser.xml index 704618a00a5..d48c6c5cdc9 100644 --- a/xml/Microsoft.VisualBasic.FileIO/TextFieldParser.xml +++ b/xml/Microsoft.VisualBasic.FileIO/TextFieldParser.xml @@ -39,28 +39,28 @@ Provides methods and properties for parsing structured text files. - @@ -113,11 +113,11 @@ . The stream to be parsed. Initializes a new instance of the class. - @@ -164,11 +164,11 @@ . The stream to be parsed. Initializes a new instance of the class. - @@ -213,11 +213,11 @@ . The complete path of the file to be parsed. Initializes a new instance of the class. - @@ -265,14 +265,14 @@ . The character encoding to use if encoding is not determined from file. Default is . Initializes a new instance of the class. - [!CAUTION] -> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. - +> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. + ]]> @@ -322,14 +322,14 @@ . The character encoding to use if encoding is not determined from file. Default is . Initializes a new instance of the class. - [!CAUTION] -> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. - +> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. + ]]> @@ -380,16 +380,16 @@ . Indicates whether to look for byte order marks at the beginning of the file. Default is . Initializes a new instance of the class. - [!CAUTION] -> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. - +> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. + ]]> @@ -442,16 +442,16 @@ . Indicates whether to look for byte order marks at the beginning of the file. Default is . Initializes a new instance of the class. - [!CAUTION] -> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. - +> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. + ]]> @@ -505,16 +505,16 @@ . Indicates whether to leave open when the object is closed. Default is . Initializes a new instance of the class. - [!CAUTION] -> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. - +> When you compile a set of characters with a particular cultural setting and retrieve those same characters with a different cultural setting, the characters might not be interpretable and could cause an exception to be thrown. + ]]> @@ -570,13 +570,13 @@ Closes the current object. - @@ -630,20 +630,20 @@ Defines comment tokens. A comment token is a string that, when placed at the beginning of a line, indicates that the line is a comment and should be ignored by the parser. A string array that contains all of the comment tokens for the object. - A comment token includes white space. @@ -696,26 +696,26 @@ Defines the delimiters for a text file. A string array that contains all of the field delimiters for the object. - property is set to `FieldType.Delimited`. - - Defining the delimiters for a text file can also be accomplished with the method. - - The following table lists an example of a task involving the `Delimiters` property. - -|To|See| -|--------|---------| -|Read from a delimited text file|[How to: Read From Comma-Delimited Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-comma-delimited-text-files)| - - - -## Examples - This example specifies that the delimiter for the `TextFieldParser` object, `FileReader`, is a comma (,). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet9"::: - + property is set to `FieldType.Delimited`. + + Defining the delimiters for a text file can also be accomplished with the method. + + The following table lists an example of a task involving the `Delimiters` property. + +|To|See| +|--------|---------| +|Read from a delimited text file|[How to: Read From Comma-Delimited Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-comma-delimited-text-files)| + + + +## Examples + This example specifies that the delimiter for the `TextFieldParser` object, `FileReader`, is a comma (,). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet9"::: + ]]> A delimiter value is set to a newline character, an empty string, or . @@ -842,25 +842,25 @@ if there is no more data to read; otherwise, . - @@ -904,27 +904,27 @@ Returns the line that caused the most recent exception. The line that caused the most recent exception. - exceptions have been thrown, an empty string is returned. - - The property can be used to display the number of the line that caused the exception. - - The following table lists examples of tasks involving the `ErrorLine` property. - -|To|See| -|--------|---------| -|Read from a delimited file|[How to: Read From Comma-Delimited Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-comma-delimited-text-files)| -|Read from a fixed-width file|[How to: Read From Fixed-width Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-fixed-width-text-files)| - - - -## Examples - This example uses the `ErrorLine` property to display the line causing the current exception. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet1"::: - + exceptions have been thrown, an empty string is returned. + + The property can be used to display the number of the line that caused the exception. + + The following table lists examples of tasks involving the `ErrorLine` property. + +|To|See| +|--------|---------| +|Read from a delimited file|[How to: Read From Comma-Delimited Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-comma-delimited-text-files)| +|Read from a fixed-width file|[How to: Read From Fixed-width Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-fixed-width-text-files)| + + + +## Examples + This example uses the `ErrorLine` property to display the line causing the current exception. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet1"::: + ]]> @@ -973,27 +973,27 @@ Returns the number of the line that caused the most recent exception. The number of the line that caused the most recent exception. - exceptions have been thrown, -1 is returned. - - The property can be used to display the number of the line that caused the exception. Blank lines and comments are not ignored when determining the line number. - - The following table lists examples of tasks involving the `ErrorLineNumber` property. - -|To|See| -|--------|---------| -|Read from a delimited file|[How to: Read From Comma-Delimited Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-comma-delimited-text-files)| -|Read from a fixed-width file|[How to: Read From Fixed-width Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-fixed-width-text-files)| - - - -## Examples - This example uses the `ErrorLineNumber` property to display the location of the line causing the current exception. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet3"::: - + exceptions have been thrown, -1 is returned. + + The property can be used to display the number of the line that caused the exception. Blank lines and comments are not ignored when determining the line number. + + The following table lists examples of tasks involving the `ErrorLineNumber` property. + +|To|See| +|--------|---------| +|Read from a delimited file|[How to: Read From Comma-Delimited Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-comma-delimited-text-files)| +|Read from a fixed-width file|[How to: Read From Fixed-width Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-fixed-width-text-files)| + + + +## Examples + This example uses the `ErrorLineNumber` property to display the location of the line causing the current exception. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -1047,26 +1047,26 @@ Denotes the width of each column in the text file being parsed. An integer array that contains the width of each column in the text file that is being parsed. - property is set to `FieldType.FixedWidth`. If the last entry in the array is less than or equal to zero, the field is assumed to be of variable width. - - The method can also be used to set field widths. - - The following table lists examples of tasks involving the `FieldWidths` property. - -|To|See| -|--------|---------| -|Read from a fixed-width text file|[How to: Read From Fixed-width Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-fixed-width-text-files)| - - - -## Examples - This example reads the file `ParserText.txt`, specifying the widths; the first column is 5 characters wide, the second is 10, the third is 11, and the fourth is of variable width - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet16"::: - + property is set to `FieldType.FixedWidth`. If the last entry in the array is less than or equal to zero, the field is assumed to be of variable width. + + The method can also be used to set field widths. + + The following table lists examples of tasks involving the `FieldWidths` property. + +|To|See| +|--------|---------| +|Read from a fixed-width text file|[How to: Read From Fixed-width Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-fixed-width-text-files)| + + + +## Examples + This example reads the file `ParserText.txt`, specifying the widths; the first column is 5 characters wide, the second is 10, the third is 11, and the fourth is of variable width + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrTextFieldParser/VB/Class1.vb" id="Snippet16"::: + ]]> A width value in any location other than the last entry of the array is less than or equal to zero. @@ -1162,22 +1162,22 @@ if fields are enclosed in quotation marks; otherwise, . - @@ -1221,20 +1221,20 @@ Returns the current line number, or returns -1 if no more characters are available in the stream. The current line number. - @@ -1278,30 +1278,30 @@ Reads the specified number of characters without advancing the cursor. A string that contains the specified number of characters read. - @@ -1352,29 +1352,29 @@ Reads all fields on the current line, returns them as an array of strings, and advances the cursor to the next line containing data. An array of strings that contains field values for the current line. - A field cannot be parsed by using the specified format. @@ -1430,24 +1430,24 @@ Returns the current line as a string and advances the cursor to the next line. The current line from the file or stream. - @@ -1497,24 +1497,24 @@ Reads the remainder of the text file and returns it as a string. The remaining text from the file or stream. - @@ -1577,28 +1577,28 @@ Array of type . Sets the delimiters for the reader to the specified values, and sets the field type to . - A delimiter is zero-length. @@ -1658,34 +1658,34 @@ Array of . Sets the delimiters for the reader to the specified values. - @@ -1767,30 +1767,30 @@ This member is an explicit interface member implementation. It can be used only Indicates whether the file to be parsed is delimited or fixed-width. A value that indicates whether the file to be parsed is delimited or fixed-width. - @@ -1845,18 +1845,18 @@ This member is an explicit interface member implementation. It can be used only if leading and trailing white space should be trimmed from field values; otherwise, . - diff --git a/xml/Microsoft.VisualBasic.Logging/FileLogTraceListener.xml b/xml/Microsoft.VisualBasic.Logging/FileLogTraceListener.xml index e22422d670b..5c10420976a 100644 --- a/xml/Microsoft.VisualBasic.Logging/FileLogTraceListener.xml +++ b/xml/Microsoft.VisualBasic.Logging/FileLogTraceListener.xml @@ -32,98 +32,98 @@ Provides a simple listener that directs logging output to file. - class provides automated maintenance capabilities to archive log files as needed, on a daily or per-application basis. This automatic archival functionality helps reduce the maintenance responsibilities of developers and administrators. - + class provides automated maintenance capabilities to archive log files as needed, on a daily or per-application basis. This automatic archival functionality helps reduce the maintenance responsibilities of developers and administrators. + An instance of can be added to the or collections to redirect output from logging to a text file. Instances of this class can also be added to `My.Application.Log` or `My.Log` (for Web applications) in Visual Basic applications. For more information, see [Walkthrough: Changing Where My.Application.Log Writes Information](/dotnet/visual-basic/developing-apps/programming/log-info/walkthrough-changing-where-my-application-log-writes-information). - - The main features of this class are: - -1. *Archival functionality*. The log files generated by this class are named according to the base name and the date, along with a number to distinguish the log file from successive versions of the log. New log files are created on an as-needed basis. - - The explicit form of the file name is `baseName`[-`dateStamp`][-`version`].log, where: - - - The `baseName` part is the fundamental log name, specified by the property. - - - The `dateStamp` part has the format "YYYY-MM-DD", and it is shown when is or . - - - If more than one log file is needed with the same `baseName` and `dateStamp`, the `version` part, a positive `Integer`, is added to the file name. - -2. *Multiple class instances*. If an instance of the class writes to a file that is in use: - - - The class shares the file if it is being used by another instance of the class in the same process. - - - The class creates a new log file using the next available name if the file is being used by another process. - -3. *Thread safety*. The class is thread safe. This allows you to safely write messages to the log from multiple threads without using locks. - - **Log-File Location** - -- The property takes a enumeration to specify one of the typical directories to write the log file to. - -- To write the log to another location, set the property to that location. - - **Log-File Name** - -- The base name for the log file is specified by the property. - -- The current log file name can be read from the property. It is derived from several other properties and the current state of the logs in the file system. - - **Log Maintenance** - -- The minimum frequency for creating new log files is determined by the property. When the value is or , a new log file is created at least once every day or week, and a date stamp is incorporated into the name. - -- The maximum size (in bytes) of the log file is determined by the property. If the log file size exceeds this size, additional messages written to the log are discarded and, depending on the property, an exception is thrown. - -- The property determines how much free space (in bytes) must be available. This helps ensure that the class will not consume all available disk space. Use the property to specify the behavior of log writes when there are less than bytes free. - - **Log-File Output Settings** - -- The property specifies whether the underlying stream should be flushed automatically after each write to the log file. - -- The property specifies whether to append messages to the current log file, if allowed, or write them to a new log file. - -- The property specifies the string to use for delimiting the fields within a log message. - -- The property specifies the encoding to use when creating a new log file. - - **Log-File Output** - -- The and methods write messages to the log file. These methods check the property, along with any existing logs with the same base name to determine if a new log should be created. - -- The method flushes any messages currently in the output buffer to the log file. - -- The method closes the log file so that it can be used by other processes. - - **Enabling Output** - - You must enable tracing or debugging to use a trace listener. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. - -- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. - -- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. - + + The main features of this class are: + +1. *Archival functionality*. The log files generated by this class are named according to the base name and the date, along with a number to distinguish the log file from successive versions of the log. New log files are created on an as-needed basis. + + The explicit form of the file name is `baseName`[-`dateStamp`][-`version`].log, where: + + - The `baseName` part is the fundamental log name, specified by the property. + + - The `dateStamp` part has the format "YYYY-MM-DD", and it is shown when is or . + + - If more than one log file is needed with the same `baseName` and `dateStamp`, the `version` part, a positive `Integer`, is added to the file name. + +2. *Multiple class instances*. If an instance of the class writes to a file that is in use: + + - The class shares the file if it is being used by another instance of the class in the same process. + + - The class creates a new log file using the next available name if the file is being used by another process. + +3. *Thread safety*. The class is thread safe. This allows you to safely write messages to the log from multiple threads without using locks. + + **Log-File Location** + +- The property takes a enumeration to specify one of the typical directories to write the log file to. + +- To write the log to another location, set the property to that location. + + **Log-File Name** + +- The base name for the log file is specified by the property. + +- The current log file name can be read from the property. It is derived from several other properties and the current state of the logs in the file system. + + **Log Maintenance** + +- The minimum frequency for creating new log files is determined by the property. When the value is or , a new log file is created at least once every day or week, and a date stamp is incorporated into the name. + +- The maximum size (in bytes) of the log file is determined by the property. If the log file size exceeds this size, additional messages written to the log are discarded and, depending on the property, an exception is thrown. + +- The property determines how much free space (in bytes) must be available. This helps ensure that the class will not consume all available disk space. Use the property to specify the behavior of log writes when there are less than bytes free. + + **Log-File Output Settings** + +- The property specifies whether the underlying stream should be flushed automatically after each write to the log file. + +- The property specifies whether to append messages to the current log file, if allowed, or write them to a new log file. + +- The property specifies the string to use for delimiting the fields within a log message. + +- The property specifies the encoding to use when creating a new log file. + + **Log-File Output** + +- The and methods write messages to the log file. These methods check the property, along with any existing logs with the same base name to determine if a new log should be created. + +- The method flushes any messages currently in the output buffer to the log file. + +- The method closes the log file so that it can be used by other processes. + + **Enabling Output** + + You must enable tracing or debugging to use a trace listener. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. + +- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. + +- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. + In .NET Framework apps, you can set the level of your listener by editing the configuration file for your application. Within this file, you can add a listener, set its type and set its parameters, remove a listener, or clear all the listeners previously set by the application. The configuration file should be formatted like the following example. - -```xml - - - - - - - + +```xml + + + + + + + ``` For this example to run, you must provide the fully qualified assembly name. For information about how to obtain the fully qualified assembly name, see [Assembly Names](/dotnet/standard/assembly/names). - + ]]> @@ -174,13 +174,13 @@ For this example to run, you must provide the fully qualified assembly name. For Initializes a new instance of the class with the default name. - class to FileLogTraceListener. - - You can access the instance name through the property. - + class to FileLogTraceListener. + + You can access the instance name through the property. + ]]> @@ -219,13 +219,13 @@ For this example to run, you must provide the fully qualified assembly name. For . The name of the instance object. Initializes a new instance of the class with the supplied name. - class to `name`. - - You can access the instance name through the property. - + class to `name`. + + You can access the instance name through the property. + ]]> @@ -270,9 +270,9 @@ For this example to run, you must provide the fully qualified assembly name. For , with indicating that the output is appended to the current file, and indicating that output is written to a new file. The default setting for this property is . - property is `True`, the log file is opened in mode, to keep existing logs. The current writing position starts at the end of the file, so that any new logs are appended to the end of the file. @@ -280,11 +280,11 @@ When the `Append` property is `False`, the log file is opened in name. - +- The output file is locked by another process. A new log file is created with a version number that is incorporated into the name. + - The current file size is greater than what the property allows. Additional messages are discarded. Depending on the property, an exception is thrown. - -- The existing file name is out of date according to the log-creation schedule specified by the property. A new log file is created. The date stamp is incorporated into the name. + +- The existing file name is out of date according to the log-creation schedule specified by the property. A new log file is created. The date stamp is incorporated into the name. ]]> @@ -328,11 +328,11 @@ This behavior is overridden in the following scenarios: , with indicating that the stream is flushed after every write; otherwise the log entries are buffered and written more efficiently. The default setting for this property is . - property provides the best performance for most applications, because it is more efficient to write multiple messages to the log file at one time. You can use the method to flush any messages currently in the log file's output buffer. You can also use the method, which implicitly flushes the stream before closing the log file. - + property provides the best performance for most applications, because it is more efficient to write multiple messages to the log file at one time. You can use the method to flush any messages currently in the log file's output buffer. You can also use the method, which implicitly flushes the stream before closing the log file. + ]]> @@ -369,23 +369,23 @@ This behavior is overridden in the following scenarios: . The base name for the log files. The default is the application's product name. - property determines the base name for the log files that the class writes to. - - The property gives the current full log-file name. It is generated according to the log path, the base name, the date, and a number to distinguish it from different versions of the log. New log files are created on an as-needed basis. - - The explicit form of the full log file name is `path`\\`baseName`[-`dateStamp`][-`iteration`].log, where - -- The `path` part is determined by the property and, if that property value is set to , the property. - -- The `baseName` part is the fundamental log name, specified by the property. - -- The `dateStamp` part has the format "YYYY-MM-DD", and it is shown when is set to or . - -- If more than one log file is needed with the same `baseName` and `dateStamp`, the `iteration` part, a positive `Integer`, is added to the file name. - + property determines the base name for the log files that the class writes to. + + The property gives the current full log-file name. It is generated according to the log path, the base name, the date, and a number to distinguish it from different versions of the log. New log files are created on an as-needed basis. + + The explicit form of the full log file name is `path`\\`baseName`[-`dateStamp`][-`iteration`].log, where + +- The `path` part is determined by the property and, if that property value is set to , the property. + +- The `baseName` part is the fundamental log name, specified by the property. + +- The `dateStamp` part has the format "YYYY-MM-DD", and it is shown when is set to or . + +- If more than one log file is needed with the same `baseName` and `dateStamp`, the `iteration` part, a positive `Integer`, is added to the file name. + ]]> @@ -430,11 +430,11 @@ This behavior is overridden in the following scenarios: Closes the underlying stream for the current log file and releases any resources associated with the current stream. - method explicitly, because the class manages the underlying steam. - + method explicitly, because the class manages the underlying steam. + ]]> @@ -475,13 +475,13 @@ This behavior is overridden in the following scenarios: , which is the name of the log-file directory. The default setting for this property is the user's directory for application data. - property is set, it also sets the property to . - - The property will throw an exception if the directory cannot be resolved. - + property is set, it also sets the property to . + + The property will throw an exception if the directory cannot be resolved. + ]]> @@ -517,11 +517,11 @@ This behavior is overridden in the following scenarios: , which is the delimiter used for fields within a log message. The default setting for this property is the TAB character. - property allows you to change the default delimiter. - + property allows you to change the default delimiter. + ]]> @@ -562,13 +562,13 @@ This behavior is overridden in the following scenarios: . Determines what to do when attempting to write to the log file and there is less free disk space available than specified by the property, or if the log file size is greater than what the property allows. The default value is . - property is set to , the log messages are silently discarded if there is not enough reserved disk space. This is the default behavior, and it prevents simple applications from failing if the disk gets too full. - - More robust applications can set the property to , and add `Try...Catch` blocks around all code that writes to the log. - + property is set to , the log messages are silently discarded if there is not enough reserved disk space. This is the default behavior, and it prevents simple applications from failing if the disk gets too full. + + More robust applications can set the property to , and add `Try...Catch` blocks around all code that writes to the log. + ]]> @@ -610,17 +610,17 @@ This behavior is overridden in the following scenarios: releases both managed and unmanaged resources; releases only unmanaged resources. Closes the underlying stream and optionally releases the managed resources. - references. This method invokes the `Dispose` method of each referenced object. - + references. This method invokes the `Dispose` method of each referenced object. + ]]> - can be called multiple times by other objects. When overriding , be careful not to reference objects that have been previously disposed of in an earlier call to . - + can be called multiple times by other objects. When overriding , be careful not to reference objects that have been previously disposed of in an earlier call to . + This method calls the method of the base class, . @@ -655,11 +655,11 @@ This behavior is overridden in the following scenarios: , which is the encoding to use when creating a new log file. The default value of this property is . - property. - + property. + ]]> @@ -696,11 +696,11 @@ This behavior is overridden in the following scenarios: Flushes the underlying stream that writes to the current log file. - method to write all buffered data to the current log file. - + method to write all buffered data to the current log file. + ]]> @@ -741,21 +741,21 @@ This behavior is overridden in the following scenarios: , which is the current full log-file name. - property gives the current full log-file name. It is generated according to the log path, the base name, the date, and a number to distinguish it from different versions of the log. New log files are created on an as-needed basis. - - The explicit form of the full log-file name is `path`\\`baseName`[-`dateStamp`][-`iteration`].log, where: - -- The `path` part is determined by the property and, if that property value is set to , the property. - -- The `baseName` part is the fundamental log name, specified by the property. - -- The `dateStamp` part has the format YYYY-MM-DD, and it is shown when is or . - -- If more than one log file is needed with the same `baseName` and `dateStamp`, the `iteration` part, a positive `Integer`, is added to the file name. - + property gives the current full log-file name. It is generated according to the log path, the base name, the date, and a number to distinguish it from different versions of the log. New log files are created on an as-needed basis. + + The explicit form of the full log-file name is `path`\\`baseName`[-`dateStamp`][-`iteration`].log, where: + +- The `path` part is determined by the property and, if that property value is set to , the property. + +- The `baseName` part is the fundamental log name, specified by the property. + +- The `dateStamp` part has the format YYYY-MM-DD, and it is shown when is or . + +- If more than one log file is needed with the same `baseName` and `dateStamp`, the `iteration` part, a positive `Integer`, is added to the file name. + ]]> @@ -796,11 +796,11 @@ This behavior is overridden in the following scenarios: array containing the XML configuration attributes recognized by this listener. - can be used in the XML configuration file for controlling the behavior of an instance of the class. Using any other attribute causes a configuration exception. - + can be used in the XML configuration file for controlling the behavior of an instance of the class. Using any other attribute causes a configuration exception. + ]]> @@ -842,11 +842,11 @@ This behavior is overridden in the following scenarios: . Use if the host identifier should be included; otherwise use . The default value is . - and methods. - + and methods. + ]]> @@ -883,19 +883,19 @@ This behavior is overridden in the following scenarios: , which is the location for the log file. The default value is . - property to set the log path to one of the predefined paths, determined by the enumeration values. - -|**Location value**|**Path**| -|------------------------|--------------| -||The path for the application data that is shared among all users, with the format:

`BasePath`\\`CompanyName`\\`ProductName`\\`ProductVersion`

A typical value for `BasePath` is:

C:\Documents and Settings\All Users\Application Data

The values of `CompanyName`, `ProductName`, and `ProductVersion` come from the assembly.| -||The path for the executable file that started the application.| -||The path for the application data of a user, with the format:

`BasePath`\\`CompanyName`\\`ProductName`\\`ProductVersion`

A typical value for `BasePath` is:

C:\Documents and Settings\\`username`\Application Data

The values of `CompanyName`, `ProductName`, and `ProductVersion` come form the assembly.| -||The path of the current system's temporary folder.| -||If the string specified by is not empty, then use it as the path; otherwise use the path for the application data of a user.| - + property to set the log path to one of the predefined paths, determined by the enumeration values. + +|**Location value**|**Path**| +|------------------------|--------------| +||The path for the application data that is shared among all users, with the format:

`BasePath`\\`CompanyName`\\`ProductName`\\`ProductVersion`

A typical value for `BasePath` is:

C:\Documents and Settings\All Users\Application Data

The values of `CompanyName`, `ProductName`, and `ProductVersion` come from the assembly.| +||The path for the executable file that started the application.| +||The path for the application data of a user, with the format:

`BasePath`\\`CompanyName`\\`ProductName`\\`ProductVersion`

A typical value for `BasePath` is:

C:\Documents and Settings\\`username`\Application Data

The values of `CompanyName`, `ProductName`, and `ProductVersion` come form the assembly.| +||The path of the current system's temporary folder.| +||If the string specified by is not empty, then use it as the path; otherwise use the path for the application data of a user.| + ]]>
@@ -931,19 +931,19 @@ This behavior is overridden in the following scenarios: . This indicates which date to include in the log-file names. The default value is . - enumeration values to the property to specify which date to include in the names of the log files. - - The format of the date is YYYY-MM-DD. For more information on the format of the log file name, see . - -|**LogFileCreationSchedule value**|**Date in the log file name**| -|---------------------------------------|-----------------------------------| -||Include the current date in the log file name.| -||Do not include the date in the log file name.| -||Include the first day of the current week in the log file name.

The week starts on Saturday.| - + enumeration values to the property to specify which date to include in the names of the log files. + + The format of the date is YYYY-MM-DD. For more information on the format of the log file name, see . + +|**LogFileCreationSchedule value**|**Date in the log file name**| +|---------------------------------------|-----------------------------------| +||Include the current date in the log file name.| +||Do not include the date in the log file name.| +||Include the first day of the current week in the log file name.

The week starts on Saturday.| + ]]>
@@ -986,13 +986,13 @@ This behavior is overridden in the following scenarios: . This is the maximum allowed log-file size, in bytes. The default value is 5000000. - class attempts to write a message to the log, the message is discarded and the failure is either silent or an exception is thrown depending on the value of the property. Otherwise, the message is written to the log, if the amount of free disk space (in bytes) is less than . - + class attempts to write a message to the log, the message is discarded and the failure is either silent or an exception is thrown depending on the value of the property. Otherwise, the message is written to the log, if the amount of free disk space (in bytes) is less than . + ]]> When this property is set to a value less than 1000. @@ -1035,13 +1035,13 @@ This behavior is overridden in the following scenarios: . This is the amount of free disk space necessary. The default value is 10000000. - class attempts to write a message to the log, the message is discarded and the failure is either silent or an exception is thrown depending on the value of the property. Otherwise, the message is written to the log, if the log file size (in bytes) is greater than . - + class attempts to write a message to the log, the message is discarded and the failure is either silent or an exception is thrown depending on the value of the property. Otherwise, the message is written to the log, if the log file size (in bytes) is greater than . + ]]> When this property is set to a value less than 0. @@ -1058,11 +1058,11 @@ This behavior is overridden in the following scenarios: Writes trace data to the output file. - methods are not intended to be called by application code. These methods are called by members of the , , and classes to write trace data to output. - + methods are not intended to be called by application code. These methods are called by members of the , , and classes to write trace data to output. + ]]> @@ -1108,35 +1108,35 @@ This behavior is overridden in the following scenarios: The trace data to emit. Writes trace information, a data object, and event information to the output file or stream. - . - - The following table lists the output fields in the order they appear. The fields are delimited by the string that the property specifies, and are followed by a line terminator. - -|**Field**|**Output condition**|**Description**| -|---------------|--------------------------|---------------------| -|`source`|Always|The value of `name`.| -|`severity`|Always|The enumeration-value name of `eventType`.| -|`id`|Always|The string representation of `id`.| -|`message`|Always|The string representation of `data`.| -|`callStack`|When the flag is set in the property.|The property of `eventCache`.| -|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| -|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| -|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`HostName`|When the property is `True`.|The name of the computer.| - + . + + The following table lists the output fields in the order they appear. The fields are delimited by the string that the property specifies, and are followed by a line terminator. + +|**Field**|**Output condition**|**Description**| +|---------------|--------------------------|---------------------| +|`source`|Always|The value of `name`.| +|`severity`|Always|The enumeration-value name of `eventType`.| +|`id`|Always|The string representation of `id`.| +|`message`|Always|The string representation of `data`.| +|`callStack`|When the flag is set in the property.|The property of `eventCache`.| +|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| +|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| +|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`HostName`|When the property is `True`.|The name of the computer.| + ]]> @@ -1194,35 +1194,35 @@ This behavior is overridden in the following scenarios: An array of objects to emit as data. Writes trace information, an array of data objects, and event information to the output file or stream. - . - - This table lists the output fields in the order they appear. The fields are delimited by the string that the property specifies, and are followed by a line terminator. - -|**Field**|**Output condition**|**Description**| -|---------------|--------------------------|---------------------| -|`source`|Always|The value of `name`.| -|`severity`|Always|The enumeration-value name of `eventType`.| -|`id`|Always|The string representation of `id`.| -|`message`|Always|The string consisting of the string representation of each element in `data`, each separated by .| -|`callStack`|When the flag is set in the property.|The property of `eventCache`.| -|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| -|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| -|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`HostName`|When the property is `True`.|The name of the computer.| - + . + + This table lists the output fields in the order they appear. The fields are delimited by the string that the property specifies, and are followed by a line terminator. + +|**Field**|**Output condition**|**Description**| +|---------------|--------------------------|---------------------| +|`source`|Always|The value of `name`.| +|`severity`|Always|The enumeration-value name of `eventType`.| +|`id`|Always|The string representation of `id`.| +|`message`|Always|The string consisting of the string representation of each element in `data`, each separated by .| +|`callStack`|When the flag is set in the property.|The property of `eventCache`.| +|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| +|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| +|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`HostName`|When the property is `True`.|The name of the computer.| + ]]> @@ -1240,11 +1240,11 @@ This behavior is overridden in the following scenarios: Writes trace and event information to the output file or stream. - methods are not intended to be called by application code. These methods are called by members of the , , and classes to write trace data to output. - + methods are not intended to be called by application code. These methods are called by members of the , , and classes to write trace data to output. + ]]> @@ -1290,35 +1290,35 @@ This behavior is overridden in the following scenarios: A message to write. Writes trace information, a message and event information to the output file or stream. - . - - This table lists the output fields in the order in which they appear. The fields are delimited by the string that the property specifies, and are followed by a line terminator. - -|**Field**|**Output condition**|**Description**| -|---------------|--------------------------|---------------------| -|`source`|Always.|The value of `name`.| -|`severity`|Always.|The enumeration-value name of `eventType`.| -|`id`|Always.|The string representation of `id`.| -|`message`|Always.|The value of `message`.| -|`callStack`|When the flag is set in the property.|The property of `eventCache`.| -|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| -|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| -|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`HostName`|When the property is `True`.|The name of the computer.| - + . + + This table lists the output fields in the order in which they appear. The fields are delimited by the string that the property specifies, and are followed by a line terminator. + +|**Field**|**Output condition**|**Description**| +|---------------|--------------------------|---------------------| +|`source`|Always.|The value of `name`.| +|`severity`|Always.|The enumeration-value name of `eventType`.| +|`id`|Always.|The string representation of `id`.| +|`message`|Always.|The value of `message`.| +|`callStack`|When the flag is set in the property.|The property of `eventCache`.| +|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| +|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| +|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`HostName`|When the property is `True`.|The name of the computer.| + ]]> @@ -1378,35 +1378,35 @@ This behavior is overridden in the following scenarios: An array containing zero or more objects to format. Writes trace information, a formatted array of objects, and event information to the output file or stream. - . - - This table lists the output fields in the order in which they appear. The fields are delimited by the string that the property specifies, and followed by a line terminator. - -|**Field**|**Output condition**|**Description**| -|---------------|--------------------------|---------------------| -|`source`|Always|The value of `name`.| -|`severity`|Always|The enumeration-value name of `eventType`.| -|`id`|Always|The string representation of `id`.| -|`message`|Always|The data in `args` formatted with the `format` string and using the invariant culture for string conversions.| -|`callStack`|When the flag is set in the property.|The property of `eventCache`.| -|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| -|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| -|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| -|`HostName`|When the property is `True`.|The name of the computer.| - + . + + This table lists the output fields in the order in which they appear. The fields are delimited by the string that the property specifies, and followed by a line terminator. + +|**Field**|**Output condition**|**Description**| +|---------------|--------------------------|---------------------| +|`source`|Always|The value of `name`.| +|`severity`|Always|The enumeration-value name of `eventType`.| +|`id`|Always|The string representation of `id`.| +|`message`|Always|The data in `args` formatted with the `format` string and using the invariant culture for string conversions.| +|`callStack`|When the flag is set in the property.|The property of `eventCache`.| +|`CorrelationID`|When the flag is set in the property.|The property of `eventCache`.| +|`DateTime`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ProcessID`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`ThreadID`|When the flag is set in the property.|The property of `eventCache`.| +|`Timestamp`|When the flag is set in the property.|The string representation of the property of `eventCache`. The invariant culture is used for the string conversion.| +|`HostName`|When the property is `True`.|The name of the computer.| + ]]> @@ -1449,13 +1449,13 @@ This behavior is overridden in the following scenarios: . The custom message to write. Writes a verbatim message to disk, without any additional context information. - method writes a specific message to the log file, without any additional context information. - - Use the one of the methods to include the context information in the log output. - + method writes a specific message to the log file, without any additional context information. + + Use the one of the methods to include the context information in the log output. + ]]> @@ -1496,13 +1496,13 @@ This behavior is overridden in the following scenarios: . The custom message to write. Writes a verbatim message to disk, followed by the current line terminator, without any additional context information. - method writes a specific message to the log file, without any additional context information. - - Use the one of the methods to include the context information in the log output. - + method writes a specific message to the log file, without any additional context information. + + Use the one of the methods to include the context information in the log output. + ]]> diff --git a/xml/Microsoft.VisualBasic.MyServices/ClipboardProxy.xml b/xml/Microsoft.VisualBasic.MyServices/ClipboardProxy.xml index 9ab1cbf19e2..424548653a4 100644 --- a/xml/Microsoft.VisualBasic.MyServices/ClipboardProxy.xml +++ b/xml/Microsoft.VisualBasic.MyServices/ClipboardProxy.xml @@ -1104,7 +1104,7 @@ My.Computer.Clipboard.Clear() ## Remarks > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type @@ -1175,7 +1175,7 @@ My.Computer.Clipboard.Clear() ## Remarks > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type @@ -1250,7 +1250,7 @@ My.Computer.Clipboard.Clear() ## Remarks > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type @@ -1360,7 +1360,7 @@ My.Computer.Clipboard.Clear() This is an advanced member; it does not show in IntelliSense unless you click the **All** tab. > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type @@ -1434,7 +1434,7 @@ My.Computer.Clipboard.Clear() A file drop list is a collection of strings representing file names. > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type @@ -1504,7 +1504,7 @@ My.Computer.Clipboard.Clear() ## Remarks > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type @@ -1588,7 +1588,7 @@ My.Computer.Clipboard.Clear() Previous Clipboard formats are not preserved. > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type @@ -1668,7 +1668,7 @@ My.Computer.Clipboard.Clear() Previous Clipboard formats are not preserved. > [!IMPORTANT] -> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. +> Because the Clipboard can be accessed by other users, do not use it to store sensitive information, such as passwords or confidential data. ## Availability by Project Type diff --git a/xml/Microsoft.VisualBasic.MyServices/FileSystemProxy.xml b/xml/Microsoft.VisualBasic.MyServices/FileSystemProxy.xml index be636e10a28..054bb8b08fe 100644 --- a/xml/Microsoft.VisualBasic.MyServices/FileSystemProxy.xml +++ b/xml/Microsoft.VisualBasic.MyServices/FileSystemProxy.xml @@ -36,46 +36,46 @@ Provides properties and methods for working with drives, files, and directories. - |[How to: Read Text from Files with a StreamReader](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-text-from-files-with-a-streamreader)| -|Write to a text file|[How to: Write Text to Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files)| -|Append to a text file|[How to: Append to Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-append-to-text-files)| -|Write to a binary file|[How to: Write to Binary Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-to-binary-files)| -|Write to text files in the **MyDocuments** directory|[How to: Write Text to Files in the My Documents Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-in-the-my-documents-directory)| -|Write to a text file with a `StreamWriter`|[How to: Write Text to Files with a StreamWriter](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-with-a-streamwriter)| -|Copy files with a specific pattern|[How to: Copy Files with a Specific Pattern to a Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-files-with-a-specific-pattern-to-a-directory)| -|Copy a file to the same directory|[How to: Create a Copy of a File in the Same Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-copy-of-a-file-in-the-same-directory)| -|Copy a file to a different directory|[How to: Create a Copy of a File in a Different Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-copy-of-a-file-in-a-different-directory)| -|Create a file|[How to: Create a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-file)| -|Delete a file|[How to: Delete a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-delete-a-file)| -|Find files with a specific pattern|[How to: Find Files with a Specific Pattern](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-find-files-with-a-specific-pattern)| -|Move a file|[How to: Move a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-move-a-file)| -|Rename a file|[How to: Rename a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-rename-a-file)| -|Copy a directory to another directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| -|Create a directory|[How to: Create a Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-directory)| -|Find subdirectories with a specific pattern|[How to: Find Subdirectories with a Specific Pattern](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-find-subdirectories-with-a-specific-pattern)| -|Get the collection of files in a directory|[How to: Get the Collection of Files in a Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-get-the-collection-of-files-in-a-directory)| -|Read from the **MyDocuments** directory|[How to: Retrieve the Contents of the My Documents Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-retrieve-the-contents-of-the-my-documents-directory)| -|Parse a file path|[How to: Parse File Paths](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-parse-file-paths)| - - - -## Examples - This example checks to determine whether the folder `C:\backup\logs` exists and checks its properties. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet23"::: - + |[How to: Read Text from Files with a StreamReader](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-text-from-files-with-a-streamreader)| +|Write to a text file|[How to: Write Text to Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files)| +|Append to a text file|[How to: Append to Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-append-to-text-files)| +|Write to a binary file|[How to: Write to Binary Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-to-binary-files)| +|Write to text files in the **MyDocuments** directory|[How to: Write Text to Files in the My Documents Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-in-the-my-documents-directory)| +|Write to a text file with a `StreamWriter`|[How to: Write Text to Files with a StreamWriter](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-with-a-streamwriter)| +|Copy files with a specific pattern|[How to: Copy Files with a Specific Pattern to a Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-files-with-a-specific-pattern-to-a-directory)| +|Copy a file to the same directory|[How to: Create a Copy of a File in the Same Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-copy-of-a-file-in-the-same-directory)| +|Copy a file to a different directory|[How to: Create a Copy of a File in a Different Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-copy-of-a-file-in-a-different-directory)| +|Create a file|[How to: Create a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-file)| +|Delete a file|[How to: Delete a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-delete-a-file)| +|Find files with a specific pattern|[How to: Find Files with a Specific Pattern](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-find-files-with-a-specific-pattern)| +|Move a file|[How to: Move a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-move-a-file)| +|Rename a file|[How to: Rename a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-rename-a-file)| +|Copy a directory to another directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| +|Create a directory|[How to: Create a Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-create-a-directory)| +|Find subdirectories with a specific pattern|[How to: Find Subdirectories with a Specific Pattern](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-find-subdirectories-with-a-specific-pattern)| +|Get the collection of files in a directory|[How to: Get the Collection of Files in a Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-get-the-collection-of-files-in-a-directory)| +|Read from the **MyDocuments** directory|[How to: Retrieve the Contents of the My Documents Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-retrieve-the-contents-of-the-my-documents-directory)| +|Parse a file path|[How to: Parse File Paths](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-parse-file-paths)| + + + +## Examples + This example checks to determine whether the folder `C:\backup\logs` exists and checks its properties. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet23"::: + ]]> @@ -123,30 +123,30 @@ Combines two paths and returns a properly formatted path. The combination of the specified paths. - @@ -204,28 +204,28 @@ The location to which the directory should be copied. Copies a directory to another directory. - in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. - - The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. - -|To|See| -|--------|---------| -|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| - - - -## Examples - The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: - - Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. - + in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. + + The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. + +|To|See| +|--------|---------| +|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| + + + +## Examples + The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: + + Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -284,28 +284,28 @@ Whether to visually track the operation's progress. Default is . Copies a directory to another directory. - in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. - - The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. - -|To|See| -|--------|---------| -|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| - - - -## Examples - The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: - - Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. - + in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. + + The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. + +|To|See| +|--------|---------| +|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| + + + +## Examples + The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: + + Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -367,28 +367,28 @@ to overwrite existing files; otherwise . Default is . Copies a directory to another directory. - in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. - - The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. - -|To|See| -|--------|---------| -|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| - - - -## Examples - The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: - - Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. - + in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. + + The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. + +|To|See| +|--------|---------| +|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| + + + +## Examples + The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: + + Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -449,28 +449,28 @@ Specifies what should be done if the user clicks **Cancel** during the operation. Default is . Copies a directory to another directory. - in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. - - The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. - -|To|See| -|--------|---------| -|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| - - - -## Examples - The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: - - Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. - + in which the file or directory path is the key and the specific exception message is contained in the corresponding value. Use `For…Each` to enumerate through the entries. + + The following table lists examples of tasks involving the `My.Computer.FileSystem.CopyDirectory` method. + +|To|See| +|--------|---------| +|Copy a directory|[How to: Copy a Directory to Another Directory](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-copy-a-directory-to-another-directory)| + + + +## Examples + The following example copies the directory `TestDirectory1` into `TestDirectory2`, overwriting existing files. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet49"::: + + Replace `C:\TestDirectory1` and `C:\TestDirectory2` with the path and name of the directory you wish to copy and the location to which you wish to copy it. + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -543,33 +543,33 @@ The location to which the file should be copied. Copies a file to a new location. - @@ -630,33 +630,33 @@ Whether to visually track the operation's progress. Default is . Copies a file to a new location. - @@ -718,33 +718,33 @@ if existing files should be overwritten; otherwise . Default is . Copies a file to a new location. - @@ -807,33 +807,33 @@ Specifies what should be done if the user clicks **Cancel** during the operation. Default is . Copies a file to a new location. - @@ -892,24 +892,24 @@ Name and location of the directory. Creates a directory. - The directory name is malformed. For example, it contains illegal characters or is only white space. @@ -956,22 +956,22 @@ Gets or sets the current directory. The current directory for file I/O operations. - The path is not valid. @@ -1026,25 +1026,25 @@ Specifies what should be done when a directory that is to be deleted contains files or directories. Default is . Deletes a directory. - The path is a zero-length string, is malformed, contains only white space, or contains invalid characters (including wildcard characters). The path is a device path (starts with \\\\.\\). @@ -1101,30 +1101,30 @@ Specifies whether or not the deleted file should be sent to the **Recycle Bin**. Default is . Deletes a directory. - The path is a zero-length string, is malformed, contains only white space, or contains invalid characters (including wildcard characters). The path is a device path (starts with \\\\.\\). @@ -1184,30 +1184,30 @@ Specifies whether to throw an exception if the user clicks **Cancel**. Deletes a directory. - The path is a zero-length string, is malformed, contains only white space, or contains invalid characters (including wildcard characters). The path is a device path (starts with \\\\.\\). @@ -1271,30 +1271,30 @@ Name and path of the file to be deleted. Deletes a file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; it has a trailing slash where a file must be specified; or it is a device path (starts with \\\\.\\). @@ -1350,32 +1350,32 @@ Whether or not the deleted file should be sent to the **Recycle Bin**. Default is . Deletes a file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; it has a trailing slash where a file must be specified; or it is a device path (starts with \\\\.\\). @@ -1435,32 +1435,32 @@ Specifies whether or not an exception is thrown when the user cancels the operation. Default is . Deletes a file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; it has a trailing slash where a file must be specified; or it is a device path (starts with \\\\.\\). @@ -1518,13 +1518,13 @@ if the directory exists; otherwise . - Objects (Visual Basic) @@ -1565,18 +1565,18 @@ Returns a read-only collection of all available drive names. A read-only collection of all available drives as objects. - @@ -1621,18 +1621,18 @@ Returns if the specified file exists. Returns if the file exists; otherwise this method returns . - The name of the file ends with a backslash (\\). @@ -1694,26 +1694,26 @@ Returns a read-only collection of strings representing the names of files containing the specified text. Read-only collection of the names of files containing the specified text. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\.\). @@ -1784,26 +1784,26 @@ Returns a read-only collection of strings representing the names of files containing the specified text. Read-only collection of the names of files containing the specified text. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\.\). @@ -1867,24 +1867,24 @@ Returns a collection of strings representing the path names of subdirectories within a directory. Read-only collection of the path names of subdirectories within the specified directory. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -1949,28 +1949,28 @@ Returns a collection of strings representing the path names of subdirectories within a directory. Read-only collection of the path names of subdirectories within the specified directory. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2025,18 +2025,18 @@ object for the specified path. - object is accessed. - - - -## Examples - This example gets a object for the directory `C:\Documents and Settings` and displays the directory's creation time, last access time, and last write time. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet7"::: - + object is accessed. + + + +## Examples + This example gets a object for the directory `C:\Documents and Settings` and displays the directory's creation time, last access time, and last write time. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet7"::: + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2087,20 +2087,20 @@ object for the specified drive. - class models a drive and provides methods and properties to query for drive information. Use to determine what drives are available, and what type of drives they are. You can also query the property to determine the capacity and available free space on the drive. - - - -## Examples - This example obtains a object for the C drive and uses it to display information about the drive. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet11"::: - - For information on the different drive types, see . - + class models a drive and provides methods and properties to query for drive information. Use to determine what drives are available, and what type of drives they are. You can also query the property to determine the capacity and available free space on the drive. + + + +## Examples + This example obtains a object for the C drive and uses it to display information about the drive. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet11"::: + + For information on the different drive types, see . + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2151,24 +2151,24 @@ object for the specified file. - object for the file `MyLogFile.log` and uses it to report the file's full name, last access time, and length. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet1"::: - + object for the file `MyLogFile.log` and uses it to report the file's full name, last access time, and length. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet1"::: + ]]> The path name is malformed. For example, it contains invalid characters or is only white space. The file name has a trailing slash mark. @@ -2229,33 +2229,33 @@ Returns a read-only collection of strings representing the names of files within a directory. Read-only collection of file names from the specified directory. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2322,33 +2322,33 @@ Returns a read-only collection of strings representing the names of files within a directory. Read-only collection of file names from the specified directory. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2405,28 +2405,28 @@ Parses the file name out of the path provided. The file name from the specified path. - Objects (Visual Basic) @@ -2469,18 +2469,18 @@ Returns the parent path of the provided path. The parent path of the provided path. - Path does not have a parent path because it is a root path. @@ -2527,18 +2527,18 @@ containing the full path of the temporary file. - Objects (Visual Basic) @@ -2592,22 +2592,22 @@ Path of the directory to which the source directory is being moved. Moves a directory from one location to another. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2666,22 +2666,22 @@ Specifies whether to visually track the operation's progress. Default is . Moves a directory from one location to another. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2742,22 +2742,22 @@ if existing directories should be overwritten; otherwise . Default is . Moves a directory from one location to another. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2818,22 +2818,22 @@ Specifies whether or not an exception is thrown when the user cancels the operation. Default is . Moves a directory from one location to another. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\). @@ -2904,30 +2904,30 @@ Path of the directory into which the file should be moved. Moves a file to a new location. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -2982,30 +2982,30 @@ Specifies whether to visually track the operation's progress. Default is . Moves a file to a new location. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3062,30 +3062,30 @@ to overwrite existing files; otherwise . Default is . Moves a file to a new location. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3142,30 +3142,30 @@ Specifies whether or not an exception is thrown when the user cancels the operation. Default is . Moves a file to a new location. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3230,24 +3230,24 @@ to read the specified file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3315,24 +3315,24 @@ to read the specified file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3400,24 +3400,24 @@ to read the specified file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3485,24 +3485,24 @@ object to read from the file. - . - - The following table lists examples of tasks involving the `My.Computer.FileSystem.OpenTextFileReader` method. - -|To|See| -|--------|---------| -|Open a file with a |[How to: Read Text from Files with a StreamReader](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-text-from-files-with-a-streamreader)| - - - -## Examples - This example opens the file `Testfile.txt`, reads a line from it, and displays the line in a `MessageBox`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet2"::: - + . + + The following table lists examples of tasks involving the `My.Computer.FileSystem.OpenTextFileReader` method. + +|To|See| +|--------|---------| +|Open a file with a |[How to: Read Text from Files with a StreamReader](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-text-from-files-with-a-streamreader)| + + + +## Examples + This example opens the file `Testfile.txt`, reads a line from it, and displays the line in a `MessageBox`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet2"::: + ]]> The file name ends with a backslash (\\). @@ -3555,24 +3555,24 @@ object to read from the file. - . - - The following table lists examples of tasks involving the `My.Computer.FileSystem.OpenTextFileReader` method. - -|To|See| -|--------|---------| -|Open a file with a |[How to: Read Text from Files with a StreamReader](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-text-from-files-with-a-streamreader)| - - - -## Examples - This example opens the file `Testfile.txt`, reads a line from it, and displays the line in a `MessageBox`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet2"::: - + . + + The following table lists examples of tasks involving the `My.Computer.FileSystem.OpenTextFileReader` method. + +|To|See| +|--------|---------| +|Open a file with a |[How to: Read Text from Files with a StreamReader](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-text-from-files-with-a-streamreader)| + + + +## Examples + This example opens the file `Testfile.txt`, reads a line from it, and displays the line in a `MessageBox`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet2"::: + ]]> The file name ends with a backslash (\\). @@ -3635,29 +3635,29 @@ object to write to the specified file. - object for that stream. You can write to the steam as many times as necessary and then close it when you are finished. - + object for that stream. You can write to the steam as many times as necessary and then close it when you are finished. + > [!NOTE] -> You must call the method on the object to make sure that all data is correctly written to the underlying stream. - - If you are writing only a few strings to a file, it might be simpler to use the method. - - The following table lists an example of a task involving the `My.Computer.FileSystem.OpenTextFileWriter` method. - -|To|See| -|--------|---------| -|Write text to a file with a `StreamWriter`|[How to: Write Text to Files with a StreamWriter](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-with-a-streamwriter)| - - - -## Examples - This example opens a with the `My.Computer.FileSystem.OpenTextFileWriter` method and uses it to write a string to a text file with the `WriteLine` method of the `StreamWriter` class. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet14"::: - +> You must call the method on the object to make sure that all data is correctly written to the underlying stream. + + If you are writing only a few strings to a file, it might be simpler to use the method. + + The following table lists an example of a task involving the `My.Computer.FileSystem.OpenTextFileWriter` method. + +|To|See| +|--------|---------| +|Write text to a file with a `StreamWriter`|[How to: Write Text to Files with a StreamWriter](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-with-a-streamwriter)| + + + +## Examples + This example opens a with the `My.Computer.FileSystem.OpenTextFileWriter` method and uses it to write a string to a text file with the `WriteLine` method of the `StreamWriter` class. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet14"::: + ]]> The file name ends with a trailing slash. @@ -3710,29 +3710,29 @@ object to write to the specified file. - object for that stream. You can write to the steam as many times as necessary and then close it when you are finished. - + object for that stream. You can write to the steam as many times as necessary and then close it when you are finished. + > [!NOTE] -> You must call the method on the object to make sure that all data is correctly written to the underlying stream. - - If you are writing only a few strings to a file, it might be simpler to use the method. - - The following table lists an example of a task involving the `My.Computer.FileSystem.OpenTextFileWriter` method. - -|To|See| -|--------|---------| -|Write text to a file with a `StreamWriter`|[How to: Write Text to Files with a StreamWriter](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-with-a-streamwriter)| - - - -## Examples - This example opens a with the `My.Computer.FileSystem.OpenTextFileWriter` method and uses it to write a string to a text file with the `WriteLine` method of the `StreamWriter` class. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet14"::: - +> You must call the method on the object to make sure that all data is correctly written to the underlying stream. + + If you are writing only a few strings to a file, it might be simpler to use the method. + + The following table lists an example of a task involving the `My.Computer.FileSystem.OpenTextFileWriter` method. + +|To|See| +|--------|---------| +|Write text to a file with a `StreamWriter`|[How to: Write Text to Files with a StreamWriter](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files-with-a-streamwriter)| + + + +## Examples + This example opens a with the `My.Computer.FileSystem.OpenTextFileWriter` method and uses it to write a string to a text file with the `WriteLine` method of the `StreamWriter` class. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet14"::: + ]]> The file name ends with a trailing slash. @@ -3780,26 +3780,26 @@ array containing the contents of the file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3862,32 +3862,32 @@ containing the contents of the file. - method. - - Do not make decisions about the contents of the file based on the name of the file. For example, the file Form1.vb may not be a Visual Basic source file. Verify all inputs before using the data in your application. - - The following table lists examples of tasks involving the `My.Computer.FileSystem.ReadAllText` method. - -|To|See| -|--------|---------| -|Read from a text file|[How to: Read from Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-text-files)| - - - -## Examples - This example reads the contents of `Test.txt` into a string and then displays it in a message box. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet8"::: - - This example reads the contents of the ASCII file `Test.txt` into a string and then displays it in a message box. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet9"::: - + method. + + Do not make decisions about the contents of the file based on the name of the file. For example, the file Form1.vb may not be a Visual Basic source file. Verify all inputs before using the data in your application. + + The following table lists examples of tasks involving the `My.Computer.FileSystem.ReadAllText` method. + +|To|See| +|--------|---------| +|Read from a text file|[How to: Read from Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-text-files)| + + + +## Examples + This example reads the contents of `Test.txt` into a string and then displays it in a message box. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet8"::: + + This example reads the contents of the ASCII file `Test.txt` into a string and then displays it in a message box. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet9"::: + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -3950,32 +3950,32 @@ containing the contents of the file. - The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -4035,27 +4035,27 @@ New name for directory. Renames a directory. - contains path information. - is . - - -or- - + is . + + -or- + is or an empty string. The directory does not exist. There is an existing file or directory with the name specified in . @@ -4106,35 +4106,35 @@ New name of file. Renames a file. - method to move and rename the file. - - The following table lists an example of a task involving the `My.Computer.FileSystem.RenameFile` method. - -|To|See| -|--------|---------| -|Rename a file|[How to: Rename a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-rename-a-file)| - - - -## Examples - This example renames the file `Test.txt` to `SecondTest.txt`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet1"::: - - Change "`C:\Test.txt`" to the path and file name of the file that you want to rename. - + method to move and rename the file. + + The following table lists an example of a task involving the `My.Computer.FileSystem.RenameFile` method. + +|To|See| +|--------|---------| +|Rename a file|[How to: Rename a File](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-rename-a-file)| + + + +## Examples + This example renames the file `Test.txt` to `SecondTest.txt`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet1"::: + + Change "`C:\Test.txt`" to the path and file name of the file that you want to rename. + ]]> contains path information or ends with a backslash (\\). - is . - - -or- - + is . + + -or- + is or an empty string. The file does not exist. There is an existing file or directory with the name specified in . @@ -4179,13 +4179,13 @@ Gets an object that provides properties for accessing commonly referenced directories. This property returns the object for the computer. - @@ -4233,27 +4233,27 @@ to append to the file contents; to overwrite the file contents. Default is . Writes data to a binary file. - exception will be thrown. If the path is valid but the file does not exist, the file is created. - + exception will be thrown. If the path is valid but the file does not exist, the file is created. + > [!NOTE] -> The `WriteAllBytes` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllBytes` method is simpler than code that uses a object. However, if you are adding data to a file using a loop, a object can provide better performance because you only have to open and close the file once. - - The following table lists an example of a task involving the `My.Computer.FileSystem.WriteAllBytes` method. - -|To|See| -|--------|---------| -|Write to a binary file|[How to: Write to Binary Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-to-binary-files)| - - - -## Examples - This example appends the data array `CustomerData` to the file `CollectedData`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet50"::: - +> The `WriteAllBytes` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllBytes` method is simpler than code that uses a object. However, if you are adding data to a file using a loop, a object can provide better performance because you only have to open and close the file once. + + The following table lists an example of a task involving the `My.Computer.FileSystem.WriteAllBytes` method. + +|To|See| +|--------|---------| +|Write to a binary file|[How to: Write to Binary Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-to-binary-files)| + + + +## Examples + This example appends the data array `CustomerData` to the file `CollectedData`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbcnMyFileSystem/VB/Class1.vb" id="Snippet50"::: + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -4320,36 +4320,36 @@ to append to the contents of the file; to overwrite the contents of the file. Default is . Writes text to a file. - method. - - If the specified file does not exist, it is created. - - If the specified encoding does not match the existing encoding of the file, the specified coding is ignored. - + method. + + If the specified file does not exist, it is created. + + If the specified encoding does not match the existing encoding of the file, the specified coding is ignored. + > [!NOTE] -> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. - - The following table lists examples of tasks involving the `My.Computer.FileSystem.WriteAllText` method. - -|To|See| -|--------|---------| -|Write text to a file|[How to: Write Text to Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files)| -|Append text to a file|[How to: Append to Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-append-to-text-files)| - - - -## Examples - This example writes the line `"This is new text to be added."` to the file `Test.txt`, overwriting any existing text in the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet21"::: - - This example writes the names of the files in the `Documents and Settings` folder to `FileList.txt`, inserting a carriage return between each for better readability. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet22"::: - +> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. + + The following table lists examples of tasks involving the `My.Computer.FileSystem.WriteAllText` method. + +|To|See| +|--------|---------| +|Write text to a file|[How to: Write Text to Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files)| +|Append text to a file|[How to: Append to Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-append-to-text-files)| + + + +## Examples + This example writes the line `"This is new text to be added."` to the file `Test.txt`, overwriting any existing text in the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet21"::: + + This example writes the names of the files in the `Documents and Settings` folder to `FileList.txt`, inserting a carriage return between each for better readability. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet22"::: + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. @@ -4410,34 +4410,34 @@ What encoding to use when writing to file. Default is UTF-8. Writes text to a file. - [!NOTE] -> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. - - The following table lists examples of tasks involving the `My.Computer.FileSystem.WriteAllText` method. - -|To|See| -|--------|---------| -|Write text to a file|[How to: Write Text to Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files)| -|Append text to a file|[How to: Append to Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-append-to-text-files)| - - - -## Examples - This example writes the line `"This is new text to be added."` to the file `Test.txt`, overwriting any existing text in the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet21"::: - - This example writes the names of the files in the `Documents and Settings` folder to `FileList.txt`, inserting a carriage return between each for better readability. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet22"::: - +> The `WriteAllText` method opens a file, writes to it, and then closes it. Code that uses the `WriteAllText` method is simpler than code that uses a object. However, if you are adding strings to a file by using a loop, a object can provide better performance because you only have to open and close the file one time. For more information, see the method. + + The following table lists examples of tasks involving the `My.Computer.FileSystem.WriteAllText` method. + +|To|See| +|--------|---------| +|Write text to a file|[How to: Write Text to Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-write-text-to-files)| +|Append text to a file|[How to: Append to Text Files](/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-append-to-text-files)| + + + +## Examples + This example writes the line `"This is new text to be added."` to the file `Test.txt`, overwriting any existing text in the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet21"::: + + This example writes the names of the files in the `Documents and Settings` folder to `FileList.txt`, inserting a carriage return between each for better readability. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbRefFile/VB/Class1.vb" id="Snippet22"::: + ]]> The path is not valid for one of the following reasons: it is a zero-length string; it contains only white space; it contains invalid characters; or it is a device path (starts with \\\\.\\); it ends with a trailing slash. diff --git a/xml/Microsoft.VisualBasic/Collection.xml b/xml/Microsoft.VisualBasic/Collection.xml index 06de372e824..62032333019 100644 --- a/xml/Microsoft.VisualBasic/Collection.xml +++ b/xml/Microsoft.VisualBasic/Collection.xml @@ -70,52 +70,52 @@ A Visual Basic is an ordered set of items that can be referred to as a unit. - [!NOTE] -> Whenever possible, you should use the generic collections in the namespace or the namespace instead of a Visual Basic `Collection`. For more information, see [Collections - C#](/dotnet/csharp/programming-guide/concepts/collections) or [Collections - Visual Basic](/dotnet/visual-basic/programming-guide/concepts/collections). - - The Visual Basic `Collection` object provides a convenient way to refer to a related group of items as a single object. The items, or *elements*, in a collection need only be related by the fact that they exist in the collection. Elements of a collection do not have to share the same data type. - - You can create a collection the same way you create other objects, as the following example illustrates. - -```vb -Dim coll As New Microsoft.VisualBasic.Collection() -``` - - Once you have created a collection, you can do any of the following: - -- Add an element with the method. - -- Remove an element with the method. - -- Remove all elements with the method. - -- Find out how many elements the collection contains with the property. - -- Check whether a specific element is present with the method. - -- Return a specific element from the collection with the property. - -- Iterate through the entire collection with the [For Each...Next Statement](/dotnet/visual-basic/language-reference/statements/for-each-next-statement). - +> Whenever possible, you should use the generic collections in the namespace or the namespace instead of a Visual Basic `Collection`. For more information, see [Collections - C#](/dotnet/csharp/programming-guide/concepts/collections) or [Collections - Visual Basic](/dotnet/visual-basic/programming-guide/concepts/collections). + + The Visual Basic `Collection` object provides a convenient way to refer to a related group of items as a single object. The items, or *elements*, in a collection need only be related by the fact that they exist in the collection. Elements of a collection do not have to share the same data type. + + You can create a collection the same way you create other objects, as the following example illustrates. + +```vb +Dim coll As New Microsoft.VisualBasic.Collection() +``` + + Once you have created a collection, you can do any of the following: + +- Add an element with the method. + +- Remove an element with the method. + +- Remove all elements with the method. + +- Find out how many elements the collection contains with the property. + +- Check whether a specific element is present with the method. + +- Return a specific element from the collection with the property. + +- Iterate through the entire collection with the [For Each...Next Statement](/dotnet/visual-basic/language-reference/statements/for-each-next-statement). + > [!NOTE] - > Although the Visual Basic `Collection` object has functionality identical to the `Collection` object in Visual Basic 6.0, the two cannot interoperate in a COM environment. - + > Although the Visual Basic `Collection` object has functionality identical to the `Collection` object in Visual Basic 6.0, the two cannot interoperate in a COM environment. + > [!CAUTION] - > Iterating through a Visual Basic `Collection` is not a thread-safe procedure. Even if the collection is synchronized, other threads can still modify the collection, causing the enumerator to throw an exception. To guarantee thread safety during enumeration, either lock the collection or catch the exceptions resulting from changes made by other threads. For more information on locking a programming element, see [SyncLock Statement](/dotnet/visual-basic/language-reference/statements/synclock-statement). - - - -## Examples - The following example creates the `Collection` object `names` and a dialog box with which a user can add objects (names) to the collection. It then displays the names in the collection, and finally empties the collection without disposing of the `Collection` object itself. - - To see how this works, choose the **Add Class** command from the **Project** menu and declare a public variable called `instanceName` at the module level of `nameClass` (type `Public instanceName`) to hold the names of each instance. Leave the default name as `nameClass`. Copy and paste the following code into the **General** section of another module, and then start it with the statement `classNamer` in another procedure. (This example works only with host applications that support classes.) - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet1"::: - + > Iterating through a Visual Basic `Collection` is not a thread-safe procedure. Even if the collection is synchronized, other threads can still modify the collection, causing the enumerator to throw an exception. To guarantee thread safety during enumeration, either lock the collection or catch the exceptions resulting from changes made by other threads. For more information on locking a programming element, see [SyncLock Statement](/dotnet/visual-basic/language-reference/statements/synclock-statement). + + + +## Examples + The following example creates the `Collection` object `names` and a dialog box with which a user can add objects (names) to the collection. It then displays the names in the collection, and finally empties the collection without disposing of the `Collection` object itself. + + To see how this works, choose the **Add Class** command from the **Project** menu and declare a public variable called `instanceName` at the module level of `nameClass` (type `Public instanceName`) to hold the names of each instance. Leave the default name as `nameClass`. Copy and paste the following code into the **General** section of another module, and then start it with the statement `classNamer` in another procedure. (This example works only with host applications that support classes.) + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet1"::: + ]]> @@ -149,24 +149,24 @@ Dim coll As New Microsoft.VisualBasic.Collection() Creates and returns a new Visual Basic object. - , , and namespaces. - - - -## Examples - The following example creates a new Visual Basic collection and assigns it to the variable `coll`: - -```vb -Dim coll As New Microsoft.VisualBasic.Collection() -``` - - This `Collection` object is one-based, which means that the index values of the elements range from 1 through the value of the `Count` property. Visual Basic collections hold elements of type . - + , , and namespaces. + + + +## Examples + The following example creates a new Visual Basic collection and assigns it to the variable `coll`: + +```vb +Dim coll As New Microsoft.VisualBasic.Collection() +``` + + This `Collection` object is one-based, which means that the index values of the elements range from 1 through the value of the `Count` property. Visual Basic collections hold elements of type . + ]]> @@ -213,22 +213,22 @@ Dim coll As New Microsoft.VisualBasic.Collection() Optional. An expression that specifies a relative position in the collection. The element to be added is placed in the collection after the element identified by the argument. If is a numeric expression, it must be a number from 1 through the value of the collection's property. If is a expression, it must correspond to the key string specified when the element referred to was added to the collection. You cannot specify both and . Adds an element to a object. - with two controls and set their properties to `Add` and `List`. Add the `child` class definition and the `family` declaration to the form code. Modify the `_Click` event handlers for the **Add** and **List** buttons as shown. The **Add** button allows you to add children. The **List** button displays the names of all the children. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Form1.vb" id="Snippet2"::: - + with two controls and set their properties to `Add` and `List`. Add the `child` class definition and the `family` declaration to the form code. Modify the `_Click` event handlers for the **Add** and **List** buttons as shown. The **Add** button allows you to add children. The **List** button displays the names of all the children. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Form1.vb" id="Snippet2"::: + ]]> @@ -268,16 +268,16 @@ Dim coll As New Microsoft.VisualBasic.Collection() Deletes all elements of a Visual Basic object. - property to 0. - - - -## Examples - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet3"::: - + property to 0. + + + +## Examples + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -319,20 +319,20 @@ Dim coll As New Microsoft.VisualBasic.Collection() if Visual Basic object contains an element with a specific key; otherwise, . - method supplies an argument to the optional `Key` parameter. - - - -## Examples - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet4"::: - - If you intend to search the collection for elements using their keys, remember to supply the `Key` argument every time you call the `Add` method. - + method supplies an argument to the optional `Key` parameter. + + + +## Examples + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet4"::: + + If you intend to search the collection for elements using their keys, remember to supply the `Key` argument every time you call the `Add` method. + ]]>
@@ -372,21 +372,21 @@ Dim coll As New Microsoft.VisualBasic.Collection() Gets the number of elements in a collection. The number of elements in a collection. - object in the variable `birthdays`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet6"::: - - The `Collection` object is one-based, which means that the index values of the elements range from 1 through the value of the `Count` property. - + object in the variable `birthdays`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet6"::: + + The `Collection` object is one-based, which means that the index values of the elements range from 1 through the value of the `Count` property. + ]]>
@@ -425,28 +425,28 @@ Dim coll As New Microsoft.VisualBasic.Collection() Returns an enumerator that iterates through the collection. An enumerator that can be used to iterate through the collection. - interface of the namespace. The enumerator object exposes the property and the and methods. For more information, see [For Each...Next Statement](/dotnet/visual-basic/language-reference/statements/for-each-next-statement). - + interface of the namespace. The enumerator object exposes the property and the and methods. For more information, see [For Each...Next Statement](/dotnet/visual-basic/language-reference/statements/for-each-next-statement). + ]]>
@@ -503,28 +503,28 @@ Dim coll As New Microsoft.VisualBasic.Collection() Gets a specific element of a object either by position or by key. A specific element of a object either by position or by key. - exception. - - The `Item` property is the default property for a collection. Therefore, the following lines of code are equivalent. - + exception. + + The `Item` property is the default property for a collection. Therefore, the following lines of code are equivalent. + ```vb -MsgBox(CStr(customers.Item(1))) -MsgBox(CStr(customers(1))) -``` - - - -## Examples - The following example uses the `Item` property to retrieve a reference to an object in a collection. It creates `birthdays` as a `Collection` object and then retrieves the object representing Bill's birthday, using the key `"Bill"` as the `Index` argument. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet8"::: - - Note that the first call explicitly specifies the `Item` property, but the second does not. Both calls work because the `Item` property is the default property for a `Collection` object. - +MsgBox(CStr(customers.Item(1))) +MsgBox(CStr(customers(1))) +``` + + + +## Examples + The following example uses the `Item` property to retrieve a reference to an object in a collection. It creates `birthdays` as a `Collection` object and then retrieves the object representing Bill's birthday, using the key `"Bill"` as the `Index` argument. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet8"::: + + Note that the first call explicitly specifies the `Item` property, but the second does not. Both calls work because the `Item` property is the default property for a `Collection` object. + ]]>
@@ -576,28 +576,28 @@ MsgBox(CStr(customers(1))) Gets a specific element of a object either by position or by key. A specific element of a object either by position or by key. - exception. - - The `Item` property is the default property for a collection. Therefore, the following lines of code are equivalent. - + exception. + + The `Item` property is the default property for a collection. Therefore, the following lines of code are equivalent. + ```vb -MsgBox(CStr(customers.Item(1))) -MsgBox(CStr(customers(1))) -``` - - - -## Examples - The following example uses the `Item` property to retrieve a reference to an object in a collection. It creates `birthdays` as a `Collection` object and then retrieves the object representing Bill's birthday, using the key `"Bill"` as the `Index` argument. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet8"::: - - Note that the first call explicitly specifies the `Item` property, but the second does not. Both calls work because the `Item` property is the default property for a `Collection` object. - +MsgBox(CStr(customers.Item(1))) +MsgBox(CStr(customers(1))) +``` + + + +## Examples + The following example uses the `Item` property to retrieve a reference to an object in a collection. It creates `birthdays` as a `Collection` object and then retrieves the object representing Bill's birthday, using the key `"Bill"` as the `Index` argument. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet8"::: + + Note that the first call explicitly specifies the `Item` property, but the second does not. Both calls work because the `Item` property is the default property for a `Collection` object. + ]]>
@@ -644,28 +644,28 @@ MsgBox(CStr(customers(1))) Gets a specific element of a object either by position or by key. A specific element of a object either by position or by key. - exception. - - The `Item` property is the default property for a collection. Therefore, the following lines of code are equivalent. - + exception. + + The `Item` property is the default property for a collection. Therefore, the following lines of code are equivalent. + ```vb -MsgBox(CStr(customers.Item(1))) -MsgBox(CStr(customers(1))) -``` - - - -## Examples - The following example uses the `Item` property to retrieve a reference to an object in a collection. It creates `birthdays` as a `Collection` object and then retrieves the object representing Bill's birthday, using the key `"Bill"` as the `Index` argument. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet8"::: - - Note that the first call explicitly specifies the `Item` property, but the second does not. Both calls work because the `Item` property is the default property for a `Collection` object. - +MsgBox(CStr(customers.Item(1))) +MsgBox(CStr(customers(1))) +``` + + + +## Examples + The following example uses the `Item` property to retrieve a reference to an object in a collection. It creates `birthdays` as a `Collection` object and then retrieves the object representing Bill's birthday, using the key `"Bill"` as the `Index` argument. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet8"::: + + Note that the first call explicitly specifies the `Item` property, but the second does not. Both calls work because the `Item` property is the default property for a `Collection` object. + ]]>
@@ -714,27 +714,27 @@ MsgBox(CStr(customers(1))) A numeric expression that specifies the position of an element of the collection. must be a number from 1 through the value of the collection's property. Removes an element from a object. - property by one. It also decrements the `Index` value of every element that formerly followed the deleted element in the collection. - - If an element was added to the collection without a `Key`, you must use its `Index` to remove it. - - - -## Examples - This example illustrates the use of the `Remove` method to remove objects from a object in the variable `birthdays`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet9"::: - - Following the four calls to the `Add` method, the `Count` property contains 4, element `"Bill"` has index value 1, and element `"Pete"` has index value 4. - - Following the first call to `Remove`, `Count` is 3, element `"Bill"` is deleted, and element `"Pete"` has index value 3. - - Following the second call to `Remove`, `Count` is 2, element `"Mike"` is deleted, and element `"Pete"` has index value 2. - + property by one. It also decrements the `Index` value of every element that formerly followed the deleted element in the collection. + + If an element was added to the collection without a `Key`, you must use its `Index` to remove it. + + + +## Examples + This example illustrates the use of the `Remove` method to remove objects from a object in the variable `birthdays`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet9"::: + + Following the four calls to the `Add` method, the `Count` property contains 4, element `"Bill"` has index value 1, and element `"Pete"` has index value 4. + + Following the first call to `Remove`, `Count` is 3, element `"Bill"` is deleted, and element `"Pete"` has index value 3. + + Following the second call to `Remove`, `Count` is 2, element `"Mike"` is deleted, and element `"Pete"` has index value 2. + ]]>
@@ -774,27 +774,27 @@ MsgBox(CStr(customers(1))) A unique expression that specifies a key string that can be used, instead of a positional index, to access an element of the collection. must correspond to the argument specified when the element was added to the collection. Removes an element from a object. - property by one. It also decrements the `Index` value of every element that formerly followed the deleted element in the collection. - - If an element was added to the collection without a `Key`, you must use its `Index` to remove it. - - - -## Examples - This example illustrates the use of the `Remove` method to remove objects from a object in the variable `birthdays`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet9"::: - - Following the four calls to the `Add` method, the `Count` property contains 4, element `"Bill"` has index value 1, and element `"Pete"` has index value 4. - - Following the first call to `Remove`, `Count` is 3, element `"Bill"` is deleted, and element `"Pete"` has index value 3. - - Following the second call to `Remove`, `Count` is 2, element `"Mike"` is deleted, and element `"Pete"` has index value 2. - + property by one. It also decrements the `Index` value of every element that formerly followed the deleted element in the collection. + + If an element was added to the collection without a `Key`, you must use its `Index` to remove it. + + + +## Examples + This example illustrates the use of the `Remove` method to remove objects from a object in the variable `birthdays`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet5"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCollectionObject/VB/Class1.vb" id="Snippet9"::: + + Following the four calls to the `Add` method, the `Count` property contains 4, element `"Bill"` has index value 1, and element `"Pete"` has index value 4. + + Following the first call to `Remove`, `Count` is 3, element `"Bill"` is deleted, and element `"Pete"` has index value 3. + + Following the second call to `Remove`, `Count` is 2, element `"Mike"` is deleted, and element `"Pete"` has index value 2. + ]]>
@@ -836,13 +836,13 @@ MsgBox(CStr(customers(1))) The zero-based index in at which copying begins. Copies the elements of the to an , starting at a particular index. - in the same order in which the enumerator iterates through the object. - - This method is an O(`n`) operation, where `n` is obtained from the . - + in the same order in which the enumerator iterates through the object. + + This method is an O(`n`) operation, where `n` is obtained from the . + ]]> @@ -850,10 +850,10 @@ MsgBox(CStr(customers(1))) is less than zero. - is multidimensional. - - -or- - + is multidimensional. + + -or- + The number of elements in the source object is greater than the available space from to the end of the destination . The type of the source object cannot be cast automatically to the type of the destination . @@ -1004,24 +1004,24 @@ MsgBox(CStr(customers(1))) Gets an enumerator that iterates through the collection. An object that can be used to iterate through the collection. - method also brings the enumerator back to this position. At this position, the property is undefined. Therefore, you must call the method to advance the enumerator to the first element of the collection before reading the value of . - - returns the same object until either or is called. sets to the next element. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returns `false`, is undefined. To set to the first element of the collection again, you can call followed by . - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. - - The enumerator does not have exclusive access to the collection; therefore, enumerating through a collection is intrinsically not a thread-safe procedure. To guarantee thread safety during enumeration, you can lock the collection during the entire enumeration. To allow the collection to be accessed by multiple threads for reading and writing, you must implement your own synchronization. - + method also brings the enumerator back to this position. At this position, the property is undefined. Therefore, you must call the method to advance the enumerator to the first element of the collection before reading the value of . + + returns the same object until either or is called. sets to the next element. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returns `false`, is undefined. To set to the first element of the collection again, you can call followed by . + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. + + The enumerator does not have exclusive access to the collection; therefore, enumerating through a collection is intrinsically not a thread-safe procedure. To guarantee thread safety during enumeration, you can lock the collection during the entire enumeration. To allow the collection to be accessed by multiple threads for reading and writing, you must implement your own synchronization. + ]]> @@ -1113,11 +1113,11 @@ MsgBox(CStr(customers(1))) Removes all items from the object. - object. - + object. + ]]> The is read-only. @@ -1162,11 +1162,11 @@ MsgBox(CStr(customers(1))) Determines whether the object contains a specific value. Returns if the is found in the object; otherwise, . - object contains a specific value. - + object contains a specific value. + ]]> @@ -1210,11 +1210,11 @@ MsgBox(CStr(customers(1))) Determines the index of a specific item in the object. The index of if found in the collection; otherwise, -1. - object. - + object. + ]]> @@ -1259,21 +1259,21 @@ MsgBox(CStr(customers(1))) The to insert into the object. Inserts an item to the object at the specified index. - object, then `value` is appended to the end. - - In collections of contiguous elements, such as lists, the elements that follow the insertion point move down to accommodate the new element. If the collection is indexed, the indexes of the elements that are moved are also updated. This behavior does not apply to collections where elements are conceptually grouped into buckets, such as a hash table. - + object, then `value` is appended to the end. + + In collections of contiguous elements, such as lists, the elements that follow the insertion point move down to accommodate the new element. If the collection is indexed, the indexes of the elements that are moved are also updated. This behavior does not apply to collections where elements are conceptually grouped into buckets, such as a hash table. + ]]> is not a valid index in the object. - The object is read-only. - - -or- - + The object is read-only. + + -or- + The object has a fixed size. is null reference in the object. @@ -1433,17 +1433,17 @@ MsgBox(CStr(customers(1))) The to remove from the object. Removes the first occurrence of a specific object from the object. - object, the object remains unchanged and no exception is thrown. - + object, the object remains unchanged and no exception is thrown. + ]]> - The object is read-only. - - -or- - + The object is read-only. + + -or- + The object has a fixed size. @@ -1485,19 +1485,19 @@ MsgBox(CStr(customers(1))) The zero-based index of the item to remove. Removes the object item at the specified index. - is not a valid index in the object. - The object is read-only. - - -or- - + The object is read-only. + + -or- + The object has a fixed size. @@ -1533,11 +1533,11 @@ MsgBox(CStr(customers(1))) The object that initiated the callback. Runs after the entire object graph has been deserialized. - object graph has been deserialized. - + object graph has been deserialized. + ]]> @@ -1582,11 +1582,11 @@ MsgBox(CStr(customers(1))) A object containing the source and destination of the serialized stream associated with the object. Returns the data needed to serialize the object. - object. - + object. + ]]> diff --git a/xml/Microsoft.VisualBasic/ComClassAttribute.xml b/xml/Microsoft.VisualBasic/ComClassAttribute.xml index 94c7b7803d2..32377d5bc7d 100644 --- a/xml/Microsoft.VisualBasic/ComClassAttribute.xml +++ b/xml/Microsoft.VisualBasic/ComClassAttribute.xml @@ -40,24 +40,24 @@ The attribute instructs the compiler to add metadata that allows a class to be exposed as a COM object. - [!NOTE] -> This attribute simplifies the creation of COM objects. To expose a class as a COM object, you must compile the project with the **Register for COM Interop** option selected in the **Build** section of the **Configuration Properties** dialog box. - +> This attribute simplifies the creation of COM objects. To expose a class as a COM object, you must compile the project with the **Register for COM Interop** option selected in the **Build** section of the **Configuration Properties** dialog box. + > [!NOTE] -> Although you can also expose a class created with Visual Basic as a COM object for unmanaged code to use, it is not a true COM object. For details, see [COM Interoperability in .NET Framework Applications](/dotnet/visual-basic/programming-guide/com-interop/com-interoperability-in-net-framework-applications). - - - -## Examples - To run this example, create a new **Class Library** application and add the following code to a class module. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbCnAttributes/VB/Class2.vb" id="Snippet21"::: - +> Although you can also expose a class created with Visual Basic as a COM object for unmanaged code to use, it is not a true COM object. For details, see [COM Interoperability in .NET Framework Applications](/dotnet/visual-basic/programming-guide/com-interop/com-interoperability-in-net-framework-applications). + + + +## Examples + To run this example, create a new **Class Library** application and add the following code to a class module. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbCnAttributes/VB/Class2.vb" id="Snippet21"::: + ]]> @@ -104,11 +104,11 @@ Initializes a new instance of the class. - @@ -151,11 +151,11 @@ Initializes the value of the property that is used to uniquely identify a class. Initializes a new instance of the class. - @@ -200,11 +200,11 @@ Initializes the value of the property that is used to uniquely identify an interface. Initializes a new instance of the class. - @@ -251,11 +251,11 @@ Initializes the value of the property that is used to uniquely identify an event. Initializes a new instance of the class. - @@ -303,11 +303,11 @@ Gets a class ID used to uniquely identify a class. Read-only. A string that can be used by the compiler to uniquely identify the class when a COM object is created. - @@ -353,11 +353,11 @@ Gets an event ID used to uniquely identify an event. Read only. A string that can be used by the compiler to uniquely identify an event for the class when a COM object is created. - @@ -403,11 +403,11 @@ Gets an interface ID used to uniquely identify an interface. Read-only. A string that can be used by the compiler to uniquely identify an interface for the class when a COM object is created. - @@ -456,11 +456,11 @@ Indicates that the COM interface name shadows another member of the class or base class. A value that indicates that the COM interface name shadows another member of the class or base class. - diff --git a/xml/Microsoft.VisualBasic/Constants.xml b/xml/Microsoft.VisualBasic/Constants.xml index 3dcba4afdb7..8852fd8003a 100644 --- a/xml/Microsoft.VisualBasic/Constants.xml +++ b/xml/Microsoft.VisualBasic/Constants.xml @@ -40,11 +40,11 @@ The module contains miscellaneous constants. These constants can be used anywhere in your code. - Constants and Enumerations (Visual Basic) @@ -84,13 +84,13 @@ Indicates that the button was clicked in a message box. Returned by the function. - @@ -133,11 +133,11 @@ Indicates that the , , and buttons will be displayed when the function is called. - @@ -180,11 +180,11 @@ Indicates that the message box will be displayed as a modal dialog box when the function is called. - @@ -227,15 +227,15 @@ Indicates that the file has changed since the last backup operation for file-access functions. - object. - + object. + ]]> @@ -279,13 +279,13 @@ Indicates that the type of a variant object is an array. Returned by the function. - @@ -366,13 +366,13 @@ Specifies that a binary comparison should be performed when comparison functions are called. - enumeration in your code in place of the actual values. The `Compare` argument takes the `CompareMethod` enumeration members. - - For binary and text comparisons, see [Option Compare Statement](/dotnet/visual-basic/language-reference/statements/option-compare-statement). - + enumeration in your code in place of the actual values. The `Compare` argument takes the `CompareMethod` enumeration members. + + For binary and text comparisons, see [Option Compare Statement](/dotnet/visual-basic/language-reference/statements/option-compare-statement). + ]]> @@ -419,13 +419,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -467,13 +467,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -515,13 +515,13 @@ Indicates that the button was clicked in a message box. Returned by the function. - @@ -603,11 +603,11 @@ Indicates that the critical message icon will be displayed when the function is called. - @@ -689,13 +689,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -737,13 +737,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -785,13 +785,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -833,16 +833,16 @@ Indicates that the leftmost button is selected as the default button when the message box appears. - @@ -885,16 +885,16 @@ Indicates that the second button from the left is selected as the default button when the message box appears. - @@ -937,16 +937,16 @@ Indicates that the third button from the left is selected as the default button when the message box appears. - @@ -989,15 +989,15 @@ Indicates that the file is a directory or folder for file-access functions. - object. - + object. + ]]> @@ -1041,13 +1041,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -1089,13 +1089,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -1137,11 +1137,11 @@ Indicates that the exclamation icon will be displayed when the function is called. - @@ -1184,11 +1184,11 @@ Indicates that a value of should be used when number-formatting functions are called. - @@ -1231,15 +1231,15 @@ Indicates that the first week of the year that has at least four days should be used when date-related functions are called. - @@ -1286,15 +1286,15 @@ Indicates that the first full week of the year should be used when date-related functions are called. - @@ -1341,15 +1341,15 @@ Indicates that the week of the year in which January 1 occurs should be used when date-related functions are called. - @@ -1435,17 +1435,17 @@ Specifies that Friday should be used as the first day of the week when date-related functions are called. - @@ -1492,14 +1492,14 @@ Indicates that the general date format for the current culture should be used when the function is called. - [!NOTE] -> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. - +> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. + ]]> @@ -1541,11 +1541,11 @@ Specifies that a property value should be retrieved when the function is called. - @@ -1587,15 +1587,15 @@ Indicates that the file is a hidden file for file-access functions. - object. - + object. + ]]> @@ -1639,13 +1639,13 @@ Indicates that the window style is hidden for the invoked program when the function is called. - @@ -1687,11 +1687,11 @@ Indicates Hiragana characters should be converted to Katakana characters when the function is called. - @@ -1734,13 +1734,13 @@ Indicates that the button was clicked in a message box. Returned by the function. - @@ -1783,11 +1783,11 @@ Indicates that the information icon will display when the function is called. - @@ -1830,13 +1830,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -1878,11 +1878,11 @@ Indicates that Katakana characters should be converted to Hiragana characters when the function is called. - @@ -1925,11 +1925,11 @@ Indicates that a property value should be set to an object instance when the function is called. - @@ -2010,11 +2010,11 @@ Indicates that characters should be converted to use linguistic rules for casing instead of file system rules for casing to when the function is called. - @@ -2057,13 +2057,13 @@ Indicates the type of a variant object is . Returned by the function. - @@ -2105,14 +2105,14 @@ Indicates that the long date format for the current culture should be used when the function is called. - [!NOTE] -> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. - +> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. + ]]> @@ -2154,14 +2154,14 @@ Indicates that the long time format for the current culture should be used when the function is called. - [!NOTE] -> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. - +> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. + ]]> @@ -2203,11 +2203,11 @@ Indicates that characters should be converted to lowercase when the function is called. - @@ -2250,13 +2250,13 @@ Indicates that the window style is maximized with focus for the invoked program when the function is called. - @@ -2298,11 +2298,11 @@ Specifies that a method should be called when the function is called. - @@ -2344,13 +2344,13 @@ Indicates that the window style is minimized with focus for the invoked program when the function is called. - @@ -2392,13 +2392,13 @@ Indicates that the window style is minimized without focus for the invoked program when the function is called. - @@ -2440,17 +2440,17 @@ Specifies that Monday should be used as the first day of the week when date-related functions are called. - @@ -2497,11 +2497,11 @@ Indicates that the button will be displayed when the function is called. - @@ -2544,11 +2544,11 @@ Indicates that text will be right-aligned when the function is called. - @@ -2591,11 +2591,11 @@ Indicates that right-to-left reading text (Hebrew and Arabic systems) will be displayed when the function is called. - @@ -2638,11 +2638,11 @@ Indicates that the message box will display in the foreground when the function is called. - @@ -2685,11 +2685,11 @@ Indicates that wide (double-byte) characters should be converted to narrow (single-byte) characters when the function is called. - @@ -2781,13 +2781,13 @@ Indicates that the button was clicked in a message box. Returned by the function. - @@ -2830,15 +2830,15 @@ Indicates that the file is a normal file for file-access functions. - object. - + object. + ]]> @@ -2882,13 +2882,13 @@ Indicates that the window style is normal with focus for the invoked program when the function is called. - @@ -2930,13 +2930,13 @@ Indicates that the window style is normal without focus for the invoked program when the function is called. - @@ -2978,13 +2978,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -3112,13 +3112,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -3200,13 +3200,13 @@ Indicates that the button was clicked in a message box. Returned by the function. - @@ -3249,11 +3249,11 @@ Indicates that the and buttons will be displayed when the function is called. - @@ -3296,11 +3296,11 @@ Indicates that only the button will be displayed when the function is called. - @@ -3343,11 +3343,11 @@ Indicates that the first letter of every word in a string should be converted to uppercase and the remaining characters to lowercase when the function is called. - @@ -3390,11 +3390,11 @@ Indicates that the question icon will be displayed when the function is called. - @@ -3437,15 +3437,15 @@ Indicates that the file is a read-only file for file-access functions. - object. - + object. + ]]> @@ -3489,13 +3489,13 @@ Indicates that the button was clicked in a message box. Returned by the function. - @@ -3538,11 +3538,11 @@ Indicates that the and buttons will be displayed when the function is called. - @@ -3585,17 +3585,17 @@ Specifies that Saturday should be used as the first day of the week when date-related functions are called. - @@ -3642,11 +3642,11 @@ Indicates that a property value should be set when the function is called. - @@ -3688,14 +3688,14 @@ Indicates that the short-date format for the current culture should be used when the function is called. - [!NOTE] -> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. - +> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. + ]]> @@ -3737,14 +3737,14 @@ Indicates that the short-time format for the current culture should be used when the function is called. - [!NOTE] -> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. - +> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. + ]]> @@ -3786,11 +3786,11 @@ Indicates that characters should be converted to Simplified Chinese when the function is called. - @@ -3833,13 +3833,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -3881,13 +3881,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -3929,17 +3929,17 @@ Specifies that Sunday should be used as the first day of the week when date-related functions are called. - @@ -3986,15 +3986,15 @@ Indicates that the file is a system file for file-access functions. - object. - + object. + ]]> @@ -4038,11 +4038,11 @@ Indicates that the message box will be displayed as a modal dialog box when the function is called. - @@ -4124,13 +4124,13 @@ Indicates that a text comparison should be performed when comparison functions are called. - enumeration in your code in place of the actual values. The `Compare` argument takes the `CompareMethod` enumeration members. - - For more information about more information about binary and text comparisons, see [Option Compare Statement](/dotnet/visual-basic/language-reference/statements/option-compare-statement). - + enumeration in your code in place of the actual values. The `Compare` argument takes the `CompareMethod` enumeration members. + + For more information about more information about binary and text comparisons, see [Option Compare Statement](/dotnet/visual-basic/language-reference/statements/option-compare-statement). + ]]> @@ -4177,17 +4177,17 @@ Specifies that Thursday should be used as the first day of the week when date-related functions are called. - @@ -4234,11 +4234,11 @@ Indicates that characters should be converted to Traditional Chinese when the function is called. - @@ -4281,11 +4281,11 @@ Indicates that a value of should be used when number-formatting functions are called. - @@ -4328,17 +4328,17 @@ Specifies that Tuesday should be used as the first day of the week when date-related functions are called. - @@ -4385,11 +4385,11 @@ Indicates that characters should be converted to uppercase when the function is called. - @@ -4432,11 +4432,11 @@ Indicates that the default value should be used when number-formatting functions are called. - @@ -4479,13 +4479,13 @@ Indicates that the type of a variant object is a user-defined type. Returned by the function. - @@ -4527,15 +4527,15 @@ Indicates that the week specified by your system as the first week of the year should be used when date-related functions are called. - @@ -4582,17 +4582,17 @@ Indicates that the day specified by your system as the first day of the week should be used when date-related functions are called. - @@ -4639,13 +4639,13 @@ Indicates that the type of a variant object is . Returned by the function. - @@ -4726,17 +4726,17 @@ Indicates the volume label file attribute for file-access functions. - object. - + object. + ]]> @@ -4780,17 +4780,17 @@ Specifies that Wednesday should be used as the first day of the week when date-related functions are called. - @@ -4837,11 +4837,11 @@ Indicates that narrow (single-byte) characters should be converted to wide (double-byte) characters when the function is called. - @@ -4884,13 +4884,13 @@ Indicates that the button was clicked in a message box. Returned by the function. - @@ -4933,11 +4933,11 @@ Indicates that the and buttons will be displayed when the function is called. - @@ -4980,11 +4980,11 @@ Indicates that the , , and buttons will be displayed when the function is called. - diff --git a/xml/Microsoft.VisualBasic/Conversion.xml b/xml/Microsoft.VisualBasic/Conversion.xml index 3f22dde8149..2716c28adb6 100644 --- a/xml/Microsoft.VisualBasic/Conversion.xml +++ b/xml/Microsoft.VisualBasic/Conversion.xml @@ -40,18 +40,18 @@ The module contains the procedures used to perform various conversion operations. - Conversion Summary @@ -117,45 +117,45 @@ Converts an object to the specified type. An object whose type at run time is the requested target type. - , the `CTypeDynamic` method first attempts to perform the conversion by using a user-defined, static conversion. If the user-defined, static conversion fails, the `CTypeDynamic` method attempts to perform the conversion by using dynamic conversions. If a dynamic object implements , the `CTypeDynamic` method gives precedence to dynamic conversions over user-defined, static conversions. - - - -## Examples - The following example uses the `CTypeDynamic` method to convert a dynamic object to a string by using the conversion defined by the dynamic object. - -```vb -Imports System.Dynamic - -Module Module1 - Sub Main() - Dim dyn As Object = New SampleDynamicObject - Dim sampleString = CTypeDynamic(dyn, GetType(String)) - Console.WriteLine(sampleString) - End Sub -End Module - -Class SampleDynamicObject - Inherits DynamicObject - - Public Overrides Function TryConvert(ByVal binder As ConvertBinder, - ByRef result As Object) As Boolean - - If binder.Type = GetType(String) Then - result = "Sample String" - Return True - End If - - Return False - End Function -End Class -``` - + , the `CTypeDynamic` method first attempts to perform the conversion by using a user-defined, static conversion. If the user-defined, static conversion fails, the `CTypeDynamic` method attempts to perform the conversion by using dynamic conversions. If a dynamic object implements , the `CTypeDynamic` method gives precedence to dynamic conversions over user-defined, static conversions. + + + +## Examples + The following example uses the `CTypeDynamic` method to convert a dynamic object to a string by using the conversion defined by the dynamic object. + +```vb +Imports System.Dynamic + +Module Module1 + Sub Main() + Dim dyn As Object = New SampleDynamicObject + Dim sampleString = CTypeDynamic(dyn, GetType(String)) + Console.WriteLine(sampleString) + End Sub +End Module + +Class SampleDynamicObject + Inherits DynamicObject + + Public Overrides Function TryConvert(ByVal binder As ConvertBinder, + ByRef result As Object) As Boolean + + If binder.Type = GetType(String) Then + result = "Sample String" + Return True + End If + + Return False + End Function +End Class +``` + ]]> @@ -217,45 +217,45 @@ End Class Converts an object to the specified generic type. An object statically typed as the requested generic type. - , the `CTypeDynamic` method first attempts to perform the conversion by using a user-defined, static conversion. If the user-defined, static conversion fails, the `CTypeDynamic` method attempts to perform the conversion by using dynamic conversions. If a dynamic object implements , the `CTypeDynamic` method gives precedence to dynamic conversions over user-defined, static conversions. - - - -## Examples - The following example uses the `CTypeDynamic` method to convert a dynamic object to a string by using the conversion defined by the dynamic object. - -```vb -Imports System.Dynamic - -Module Module1 - Sub Main() - Dim dyn As Object = New SampleDynamicObject - Dim str = CTypeDynamic(Of String)(dyn) - Console.WriteLine(str) - End Sub -End Module - -Class SampleDynamicObject - Inherits DynamicObject - - Public Overrides Function TryConvert(ByVal binder As ConvertBinder, - ByRef result As Object) As Boolean - - If binder.Type = GetType(String) Then - result = "Sample String" - Return True - End If - - Return False - End Function -End Class -``` - + , the `CTypeDynamic` method first attempts to perform the conversion by using a user-defined, static conversion. If the user-defined, static conversion fails, the `CTypeDynamic` method attempts to perform the conversion by using dynamic conversions. If a dynamic object implements , the `CTypeDynamic` method gives precedence to dynamic conversions over user-defined, static conversions. + + + +## Examples + The following example uses the `CTypeDynamic` method to convert a dynamic object to a string by using the conversion defined by the dynamic object. + +```vb +Imports System.Dynamic + +Module Module1 + Sub Main() + Dim dyn As Object = New SampleDynamicObject + Dim str = CTypeDynamic(Of String)(dyn) + Console.WriteLine(str) + End Sub +End Module + +Class SampleDynamicObject + Inherits DynamicObject + + Public Overrides Function TryConvert(ByVal binder As ConvertBinder, + ByRef result As Object) As Boolean + + If binder.Type = GetType(String) Then + result = "Sample String" + Return True + End If + + Return False + End Function +End Class +``` + ]]> @@ -308,20 +308,20 @@ End Class Returns the error message that corresponds to a given error number. The error message that corresponds to the most recent run-time error. - @@ -368,20 +368,20 @@ End Class Returns the error message that corresponds to a given error number. The error message that corresponds to a given error number. - @@ -437,30 +437,30 @@ End Class Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -510,37 +510,37 @@ End Class Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -590,32 +590,32 @@ Dim i1 As Integer = CInt(Fix(d)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -665,32 +665,32 @@ Dim i1 As Integer = CInt(Fix(d)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -740,32 +740,32 @@ Dim i1 As Integer = CInt(Fix(d)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -815,14 +815,14 @@ Dim i1 As Integer = CInt(Fix(d)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -897,37 +897,37 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -986,25 +986,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1054,25 +1054,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1122,25 +1122,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1190,25 +1190,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1258,25 +1258,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1331,25 +1331,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1405,25 +1405,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1479,25 +1479,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1553,25 +1553,25 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns a string representing the hexadecimal value of a number. A string representing the hexadecimal value of a number. - @@ -1631,30 +1631,30 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -1704,37 +1704,37 @@ Dim i2 As Integer = CInt(Fix(s)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -1784,32 +1784,32 @@ Dim i3 As Integer = CInt(Int(dbl)) ' Result: 175 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -1859,32 +1859,32 @@ Dim i3 As Integer = CInt(Int(dbl)) ' Result: 175 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -1934,32 +1934,32 @@ Dim i3 As Integer = CInt(Int(dbl)) ' Result: 175 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -2009,15 +2009,15 @@ Dim i3 As Integer = CInt(Int(dbl)) ' Result: 175 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -2091,15 +2091,15 @@ Dim i2 As Integer = CInt(Int(s)) ' Result: 173 Returns the integer portion of a number. The integer portion of a number. - Number is not specified. @@ -2180,25 +2180,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2248,25 +2248,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2316,25 +2316,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2384,25 +2384,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2452,25 +2452,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2525,25 +2525,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2599,25 +2599,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2673,25 +2673,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2747,25 +2747,25 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a string representing the octal value of a number. A string representing the octal value of a number. - @@ -2816,23 +2816,23 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns a representation of a number. A representation of a number. - [!NOTE] -> The `Str` function recognizes only the period (`.`) as a valid decimal separator. If different decimal separators are used (for example, in international applications), use the `CStr` or `Format` functions to convert a number to a string. To get the string representation of a number in a particular culture, use the number's `ToString(IFormatProvider)` method. For example, use when converting a value of type `Double` to a string. - - - -## Examples - This example uses the `Str` function to return a `String` representation of a number. When a positive number is converted to a string, a leading space is always reserved for its sign. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet1"::: - +> The `Str` function recognizes only the period (`.`) as a valid decimal separator. If different decimal separators are used (for example, in international applications), use the `CStr` or `Format` functions to convert a number to a string. To get the string representation of a number in a particular culture, use the number's `ToString(IFormatProvider)` method. For example, use when converting a value of type `Double` to a string. + + + +## Examples + This example uses the `Str` function to return a `String` representation of a number. When a positive number is converted to a string, a leading space is always reserved for its sign. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet1"::: + ]]> @@ -2893,49 +2893,49 @@ Dim i3 As Integer = CInt(Fix(sng)) ' Result: 175 Returns the numbers contained in a string as a numeric value of appropriate type. The numbers contained in a string as a numeric value of appropriate type. - [!NOTE] -> The `Val` function recognizes only the period (`.`) as a valid decimal separator. When different decimal separators are used, as in international applications, use `CDbl` or `CInt` instead to convert a string to a number. To convert the string representation of a number in a particular culture to a numeric value, use the numeric type's `Parse(String, IFormatProvider)` method. For example, use when converting a string to a `Double`. - -An exception might be thrown in response to certain uncommon number formats. For example, the following code raises this exception. +> The `Val` function recognizes only the period (`.`) as a valid decimal separator. When different decimal separators are used, as in international applications, use `CDbl` or `CInt` instead to convert a string to a number. To convert the string representation of a number in a particular culture to a numeric value, use the numeric type's `Parse(String, IFormatProvider)` method. For example, use when converting a string to a `Double`. + +An exception might be thrown in response to certain uncommon number formats. For example, the following code raises this exception. ```vb -' These examples cause run-time errors. -Console.WriteLine(Val("1.34%")) -Console.WriteLine(Val("1.34&")) +' These examples cause run-time errors. +Console.WriteLine(Val("1.34%")) +Console.WriteLine(Val("1.34&")) ``` -The conflict between the number formatted as a `Double` and the `Integer` and `Long` type characters would be caught by the compiler if it were not contained in a string. +The conflict between the number formatted as a `Double` and the `Integer` and `Long` type characters would be caught by the compiler if it were not contained in a string. ```vb -' These examples cause compiler errors. -Dim m = 1.34% +' These examples cause compiler errors. +Dim m = 1.34% Dim n = 1.34& -``` - - - -## Examples - The following example uses the `Val` function to return the numbers contained in each string. `Val` stops converting at the first character that cannot be interpreted as a numeric digit, numeric modifier, numeric punctuation, or white space. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet54"::: - +``` + + + +## Examples + The following example uses the `Val` function to return the numbers contained in each string. `Val` stops converting at the first character that cannot be interpreted as a numeric digit, numeric modifier, numeric punctuation, or white space. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet54"::: + ]]> @@ -2987,50 +2987,50 @@ Dim n = 1.34& Returns the numbers contained in a string as a numeric value of appropriate type. The numbers contained in a string as a numeric value of appropriate type. - [!NOTE] -> The `Val` function recognizes only the period (`.`) as a valid decimal separator. When other decimal separators are used, as in international applications, use `CDbl` or `CInt` instead to convert a string to a number. To convert the string representation of a number in a particular culture to a numeric value, use the numeric type's `Parse(String, IFormatProvider)` method. For example, use when converting a string to a `Double`. - +> The `Val` function recognizes only the period (`.`) as a valid decimal separator. When other decimal separators are used, as in international applications, use `CDbl` or `CInt` instead to convert a string to a number. To convert the string representation of a number in a particular culture to a numeric value, use the numeric type's `Parse(String, IFormatProvider)` method. For example, use when converting a string to a `Double`. + > [!NOTE] -> An exception might be thrown in response to certain uncommon number formats. For example, the following code raises this exception. -> -> `' These examples cause run-time errors.` -> -> `'Console.WriteLine(Val("1.34%"))` -> -> `'Console.WriteLine(Val("1.34&"))` -> -> The conflict between the number formatted as a `Double` and the `Integer` and `Long` type characters would be caught by the compiler if the conflict were not contained in strings. -> -> `' These examples cause compiler errors.` -> -> `'Dim m = 1.34%` -> -> `'Dim n = 1.34&` - - - -## Examples - The following example uses the `Val` function to return the numbers contained in each string. `Val` stops converting at the first character that cannot be interpreted as a numeric digit, numeric modifier, numeric punctuation, or white space. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet54"::: - +> An exception might be thrown in response to certain uncommon number formats. For example, the following code raises this exception. +> +> `' These examples cause run-time errors.` +> +> `'Console.WriteLine(Val("1.34%"))` +> +> `'Console.WriteLine(Val("1.34&"))` +> +> The conflict between the number formatted as a `Double` and the `Integer` and `Long` type characters would be caught by the compiler if the conflict were not contained in strings. +> +> `' These examples cause compiler errors.` +> +> `'Dim m = 1.34%` +> +> `'Dim n = 1.34&` + + + +## Examples + The following example uses the `Val` function to return the numbers contained in each string. `Val` stops converting at the first character that cannot be interpreted as a numeric digit, numeric modifier, numeric punctuation, or white space. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet54"::: + ]]> @@ -3082,50 +3082,50 @@ Val("&HFFFF")  Returns the numbers contained in a string as a numeric value of appropriate type. The numbers contained in a string as a numeric value of appropriate type. - [!NOTE] -> The `Val` function recognizes only the period (`.`) as a valid decimal separator. When other decimal separators are used, as in international applications, use `CDbl` or `CInt` instead to convert a string to a number. To convert the string representation of a number in a particular culture to a numeric value, use the numeric type's `Parse(String, IFormatProvider)` method. For example, use when converting a string to a `Double`. - +> The `Val` function recognizes only the period (`.`) as a valid decimal separator. When other decimal separators are used, as in international applications, use `CDbl` or `CInt` instead to convert a string to a number. To convert the string representation of a number in a particular culture to a numeric value, use the numeric type's `Parse(String, IFormatProvider)` method. For example, use when converting a string to a `Double`. + > [!NOTE] -> An exception might be raised in response to certain uncommon number formats. For example, the following code raises this exception. -> -> `' These examples cause run-time errors.` -> -> `'Console.WriteLine(Val("1.34%"))` -> -> `'Console.WriteLine(Val("1.34&"))` -> -> The conflict between the number formatted as a `Double` and the `Integer` and `Long` type characters would be caught by the compiler if the conflict were not contained in strings. -> -> `' These examples cause compiler errors.` -> -> `'Dim m = 1.34%` -> -> `'Dim n = 1.34&` - - - -## Examples - The following example uses the `Val` function to return the numbers contained in each string. `Val` stops converting at the first character that cannot be interpreted as a numeric digit, numeric modifier, numeric punctuation, or white space. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet54"::: - +> An exception might be raised in response to certain uncommon number formats. For example, the following code raises this exception. +> +> `' These examples cause run-time errors.` +> +> `'Console.WriteLine(Val("1.34%"))` +> +> `'Console.WriteLine(Val("1.34&"))` +> +> The conflict between the number formatted as a `Double` and the `Integer` and `Long` type characters would be caught by the compiler if the conflict were not contained in strings. +> +> `' These examples cause compiler errors.` +> +> `'Dim m = 1.34%` +> +> `'Dim n = 1.34&` + + + +## Examples + The following example uses the `Val` function to return the numbers contained in each string. `Val` stops converting at the first character that cannot be interpreted as a numeric digit, numeric modifier, numeric punctuation, or white space. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet54"::: + ]]> diff --git a/xml/Microsoft.VisualBasic/DateAndTime.xml b/xml/Microsoft.VisualBasic/DateAndTime.xml index b96967df908..651a04d4248 100644 --- a/xml/Microsoft.VisualBasic/DateAndTime.xml +++ b/xml/Microsoft.VisualBasic/DateAndTime.xml @@ -39,21 +39,21 @@ The module contains the procedures and properties used in date and time operations. - Dates and Times Summary @@ -111,53 +111,53 @@ thisDate = Today Returns a value containing a date and time value to which a specified time interval has been added. A value containing a date and time value to which a specified time interval has been added. - [!NOTE] -> `DateAdd` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. - - Since every `Date` value is supported by a structure, its methods give you additional options in adding time intervals. For example, you can add a fractional number of days, rounded to the nearest millisecond, to a `Date` variable as follows: - -```vb -Dim NextTime As Date = Now ' Current date and time. -NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. -``` - - The `Interval` argument can have one of the following settings. - -|Enumeration value|String|Unit of time interval to add| -|-----------------------|------------|----------------------------------| -|`DateInterval.Day`|d|Day; truncated to integral value| -|`DateInterval.DayOfYear`|y|Day; truncated to integral value| -|`DateInterval.Hour`|h|Hour; rounded to nearest millisecond| -|`DateInterval.Minute`|n|Minute; rounded to nearest millisecond| -|`DateInterval.Month`|m|Month; truncated to integral value| -|`DateInterval.Quarter`|q|Quarter; truncated to integral value| -|`DateInterval.Second`|s|Second; rounded to nearest millisecond| -|`DateInterval.Weekday`|w|Day; truncated to integral value| -|`DateInterval.WeekOfYear`|ww|Week; truncated to integral value| -|`DateInterval.Year`|yyyy|Year; truncated to integral value| - - - -## Examples - This example takes a date and, using the `DateAdd` function, displays a corresponding date a specified number of months in the future. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet25"::: - +> `DateAdd` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. + + Since every `Date` value is supported by a structure, its methods give you additional options in adding time intervals. For example, you can add a fractional number of days, rounded to the nearest millisecond, to a `Date` variable as follows: + +```vb +Dim NextTime As Date = Now ' Current date and time. +NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. +``` + + The `Interval` argument can have one of the following settings. + +|Enumeration value|String|Unit of time interval to add| +|-----------------------|------------|----------------------------------| +|`DateInterval.Day`|d|Day; truncated to integral value| +|`DateInterval.DayOfYear`|y|Day; truncated to integral value| +|`DateInterval.Hour`|h|Hour; rounded to nearest millisecond| +|`DateInterval.Minute`|n|Minute; rounded to nearest millisecond| +|`DateInterval.Month`|m|Month; truncated to integral value| +|`DateInterval.Quarter`|q|Quarter; truncated to integral value| +|`DateInterval.Second`|s|Second; rounded to nearest millisecond| +|`DateInterval.Weekday`|w|Day; truncated to integral value| +|`DateInterval.WeekOfYear`|ww|Week; truncated to integral value| +|`DateInterval.Year`|yyyy|Year; truncated to integral value| + + + +## Examples + This example takes a date and, using the `DateAdd` function, displays a corresponding date a specified number of months in the future. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet25"::: + ]]> @@ -224,53 +224,53 @@ NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. Returns a value containing a date and time value to which a specified time interval has been added. A value containing a date and time value to which a specified time interval has been added. - [!NOTE] -> `DateAdd` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. - - Since every `Date` value is supported by a structure, its methods give you additional options in adding time intervals. For example, you can add a fractional number of days, rounded to the nearest millisecond, to a `Date` variable as follows: - -```vb -Dim NextTime As Date = Now ' Current date and time. -NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. -``` - - The `Interval` argument can have one of the following settings. - -|Enumeration value|String|Unit of time interval to add| -|-----------------------|------------|----------------------------------| -|`DateInterval.Day`|d|Day; truncated to integral value| -|`DateInterval.DayOfYear`|y|Day; truncated to integral value| -|`DateInterval.Hour`|h|Hour; rounded to nearest millisecond| -|`DateInterval.Minute`|n|Minute; rounded to nearest millisecond| -|`DateInterval.Month`|m|Month; truncated to integral value| -|`DateInterval.Quarter`|q|Quarter; truncated to integral value| -|`DateInterval.Second`|s|Second; rounded to nearest millisecond| -|`DateInterval.Weekday`|w|Day; truncated to integral value| -|`DateInterval.WeekOfYear`|ww|Week; truncated to integral value| -|`DateInterval.Year`|yyyy|Year; truncated to integral value| - - - -## Examples - This example takes a date and, using the `DateAdd` function, displays a corresponding date a specified number of months in the future. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet25"::: - +> `DateAdd` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. + + Since every `Date` value is supported by a structure, its methods give you additional options in adding time intervals. For example, you can add a fractional number of days, rounded to the nearest millisecond, to a `Date` variable as follows: + +```vb +Dim NextTime As Date = Now ' Current date and time. +NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. +``` + + The `Interval` argument can have one of the following settings. + +|Enumeration value|String|Unit of time interval to add| +|-----------------------|------------|----------------------------------| +|`DateInterval.Day`|d|Day; truncated to integral value| +|`DateInterval.DayOfYear`|y|Day; truncated to integral value| +|`DateInterval.Hour`|h|Hour; rounded to nearest millisecond| +|`DateInterval.Minute`|n|Minute; rounded to nearest millisecond| +|`DateInterval.Month`|m|Month; truncated to integral value| +|`DateInterval.Quarter`|q|Quarter; truncated to integral value| +|`DateInterval.Second`|s|Second; rounded to nearest millisecond| +|`DateInterval.Weekday`|w|Day; truncated to integral value| +|`DateInterval.WeekOfYear`|ww|Week; truncated to integral value| +|`DateInterval.Year`|yyyy|Year; truncated to integral value| + + + +## Examples + This example takes a date and, using the `DateAdd` function, displays a corresponding date a specified number of months in the future. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet25"::: + ]]> @@ -341,81 +341,81 @@ NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. Subtracts from to give a long value specifying the number of time intervals between the two values. A long value specifying the number of time intervals between two values. - property, as shown in the following example: `date2.Year - date1.Year`. - -- **Other Intervals.** Since every `Date` value is supported by a structure, its methods give you additional options in finding time intervals. For example, you can use the `Subtract` method in either of its overloaded forms: subtracts a from a `Date` variable to return another `Date` value, and subtracts a `Date` value to return a . You can time a process to find out how many milliseconds it takes, as the following example shows. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet61"::: - - The `Interval` argument can have one of the following settings. - -|Enumeration value|String value|Unit of time difference| -|-----------------------|------------------|-----------------------------| -|`DateInterval.Day`|"d"|Day| -|`DateInterval.DayOfYear`|"y"|Day| -|`DateInterval.Hour`|"h"|Hour| -|`DateInterval.Minute`|"n"|Minute| -|`DateInterval.Month`|"m"|Month| -|`DateInterval.Quarter`|"q"|Quarter| -|`DateInterval.Second`|"s"|Second| -|`DateInterval.Weekday`|"w"|Week| -|`DateInterval.WeekOfYear`|"ww"|Calendar week| -|`DateInterval.Year`|"yyyy"|Year| - - The `DayOfWeek` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstDayOfWeek.System`|0|First day of week specified in system settings| -|`FirstDayOfWeek.Sunday`|1|Sunday (default)| -|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| -|`FirstDayOfWeek.Tuesday`|3|Tuesday| -|`FirstDayOfWeek.Wednesday`|4|Wednesday| -|`FirstDayOfWeek.Thursday`|5|Thursday| -|`FirstDayOfWeek.Friday`|6|Friday| -|`FirstDayOfWeek.Saturday`|7|Saturday| - - The `WeekOfYear` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstWeekOfYear.System`|0|First week of year specified in system settings| -|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| -|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| -|`FirstWeekOfYear.FirstFullWeek`|3|First full week in the new year| - - - -## Examples - This example uses the `DateDiff` function to display the number of days between a given date and today. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet26"::: - + property, as shown in the following example: `date2.Year - date1.Year`. + +- **Other Intervals.** Since every `Date` value is supported by a structure, its methods give you additional options in finding time intervals. For example, you can use the `Subtract` method in either of its overloaded forms: subtracts a from a `Date` variable to return another `Date` value, and subtracts a `Date` value to return a . You can time a process to find out how many milliseconds it takes, as the following example shows. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet61"::: + + The `Interval` argument can have one of the following settings. + +|Enumeration value|String value|Unit of time difference| +|-----------------------|------------------|-----------------------------| +|`DateInterval.Day`|"d"|Day| +|`DateInterval.DayOfYear`|"y"|Day| +|`DateInterval.Hour`|"h"|Hour| +|`DateInterval.Minute`|"n"|Minute| +|`DateInterval.Month`|"m"|Month| +|`DateInterval.Quarter`|"q"|Quarter| +|`DateInterval.Second`|"s"|Second| +|`DateInterval.Weekday`|"w"|Week| +|`DateInterval.WeekOfYear`|"ww"|Calendar week| +|`DateInterval.Year`|"yyyy"|Year| + + The `DayOfWeek` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstDayOfWeek.System`|0|First day of week specified in system settings| +|`FirstDayOfWeek.Sunday`|1|Sunday (default)| +|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| +|`FirstDayOfWeek.Tuesday`|3|Tuesday| +|`FirstDayOfWeek.Wednesday`|4|Wednesday| +|`FirstDayOfWeek.Thursday`|5|Thursday| +|`FirstDayOfWeek.Friday`|6|Friday| +|`FirstDayOfWeek.Saturday`|7|Saturday| + + The `WeekOfYear` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstWeekOfYear.System`|0|First week of year specified in system settings| +|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| +|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| +|`FirstWeekOfYear.FirstFullWeek`|3|First full week in the new year| + + + +## Examples + This example uses the `DateDiff` function to display the number of days between a given date and today. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet26"::: + ]]> @@ -486,81 +486,81 @@ NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. Subtracts from to give a long value specifying the number of time intervals between the two values. A long value specifying the number of time intervals between two values. - property, as shown in the following example: `date2.Year - date1.Year`. - -- **Other Intervals.** Since every `Date` value is supported by a structure, its methods give you additional options in finding time intervals. For example, you can use the `Subtract` method in either of its overloaded forms: subtracts a from a `Date` variable to return another `Date` value, and subtracts a `Date` value to return a . You can time a process to find out how many milliseconds it takes, as the following example shows. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet61"::: - - The `Interval` argument can have one of the following settings. - -|Enumeration value|String value|Unit of time difference| -|-----------------------|------------------|-----------------------------| -|`DateInterval.Day`|"d"|Day| -|`DateInterval.DayOfYear`|"y"|Day| -|`DateInterval.Hour`|"h"|Hour| -|`DateInterval.Minute`|"n"|Minute| -|`DateInterval.Month`|"m"|Month| -|`DateInterval.Quarter`|"q"|Quarter| -|`DateInterval.Second`|"s"|Second| -|`DateInterval.Weekday`|"w"|Week| -|`DateInterval.WeekOfYear`|"ww"|Calendar week| -|`DateInterval.Year`|"yyyy"|Year| - - The `DayOfWeek` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstDayOfWeek.System`|0|First day of week specified in system settings| -|`FirstDayOfWeek.Sunday`|1|Sunday (default)| -|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| -|`FirstDayOfWeek.Tuesday`|3|Tuesday| -|`FirstDayOfWeek.Wednesday`|4|Wednesday| -|`FirstDayOfWeek.Thursday`|5|Thursday| -|`FirstDayOfWeek.Friday`|6|Friday| -|`FirstDayOfWeek.Saturday`|7|Saturday| - - The `WeekOfYear` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstWeekOfYear.System`|0|First week of year specified in system settings| -|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| -|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| -|`FirstWeekOfYear.FirstFullWeek`|3|First full week in the new year| - - - -## Examples - This example uses the `DateDiff` function to display the number of days between a given date and today. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet26"::: - + property, as shown in the following example: `date2.Year - date1.Year`. + +- **Other Intervals.** Since every `Date` value is supported by a structure, its methods give you additional options in finding time intervals. For example, you can use the `Subtract` method in either of its overloaded forms: subtracts a from a `Date` variable to return another `Date` value, and subtracts a `Date` value to return a . You can time a process to find out how many milliseconds it takes, as the following example shows. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet61"::: + + The `Interval` argument can have one of the following settings. + +|Enumeration value|String value|Unit of time difference| +|-----------------------|------------------|-----------------------------| +|`DateInterval.Day`|"d"|Day| +|`DateInterval.DayOfYear`|"y"|Day| +|`DateInterval.Hour`|"h"|Hour| +|`DateInterval.Minute`|"n"|Minute| +|`DateInterval.Month`|"m"|Month| +|`DateInterval.Quarter`|"q"|Quarter| +|`DateInterval.Second`|"s"|Second| +|`DateInterval.Weekday`|"w"|Week| +|`DateInterval.WeekOfYear`|"ww"|Calendar week| +|`DateInterval.Year`|"yyyy"|Year| + + The `DayOfWeek` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstDayOfWeek.System`|0|First day of week specified in system settings| +|`FirstDayOfWeek.Sunday`|1|Sunday (default)| +|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| +|`FirstDayOfWeek.Tuesday`|3|Tuesday| +|`FirstDayOfWeek.Wednesday`|4|Wednesday| +|`FirstDayOfWeek.Thursday`|5|Thursday| +|`FirstDayOfWeek.Friday`|6|Friday| +|`FirstDayOfWeek.Saturday`|7|Saturday| + + The `WeekOfYear` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstWeekOfYear.System`|0|First week of year specified in system settings| +|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| +|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| +|`FirstWeekOfYear.FirstFullWeek`|3|First full week in the new year| + + + +## Examples + This example uses the `DateDiff` function to display the number of days between a given date and today. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet26"::: + ]]> @@ -630,66 +630,66 @@ NextTime = NextTime.AddDays(3.4) ' Increment by 3 2/5 days. Returns an integer value containing the specified component of a given value. An integer value containing the specified component of a given value. - and classes of the namespace to determine your current settings. - - The `FirstDayOfWeekValue` argument affects calculations that use the `DateInterval.Weekday` and `DateInterval.WeekOfYear` `Interval` settings. The `FirstWeekOfYearValue` argument affects calculations that specify `DateInterval.WeekOfYear` for `Interval`. - - Since every `Date` value is supported by a structure, its methods give you additional options in retrieving date/time parts. For example, you can obtain the entire date value of a `Date` variable, with the time value set to midnight, as follows: - -```vb -Dim CurrDatTim As Date = Now ' Current date and time. -Dim LastMidnight As Date = CurrDatTim.Date ' At midnight. -``` - - The `Interval` argument can have one of the following settings. - -|Enumeration value|String|Part of date/time value to return| -|-----------------------|------------|----------------------------------------| -|`DateInterval.Day`|d|Day of month (1 through 31)| -|`DateInterval.DayOfYear`|y|Day of year (1 through 366)| -|`DateInterval.Hour`|h|Hour| -|`DateInterval.Minute`|n|Minute| -|`DateInterval.Month`|m|Month| -|`DateInterval.Quarter`|q|Quarter| -|`DateInterval.Second`|s|Second| -|`DateInterval.Weekday`|w|Day of week (1 through 7)| -|`DateInterval.WeekOfYear`|ww|Week of year (1 through 53)| -|`DateInterval.Year`|yyyy|Year| - - The `FirstDayOfWeekValue` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstDayOfWeek.System`|0|First day of week specified in system settings| -|`FirstDayOfWeek.Sunday`|1|Sunday (default)| -|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| -|`FirstDayOfWeek.Tuesday`|3|Tuesday| -|`FirstDayOfWeek.Wednesday`|4|Wednesday| -|`FirstDayOfWeek.Thursday`|5|Thursday| -|`FirstDayOfWeek.Friday`|6|Friday| -|`FirstDayOfWeek.Saturday`|7|Saturday| - - The `FirstWeekOfYearValue` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstWeekOfYear.System`|0|First week of year specified in system settings| -|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| -|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| -|`FirstWeekOfYear.FirstFullWeek`|3|First full week in new year| - - - -## Examples - This example takes a date and, using the `DatePart` function, displays the quarter of the year in which it occurs. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet27"::: - + and classes of the namespace to determine your current settings. + + The `FirstDayOfWeekValue` argument affects calculations that use the `DateInterval.Weekday` and `DateInterval.WeekOfYear` `Interval` settings. The `FirstWeekOfYearValue` argument affects calculations that specify `DateInterval.WeekOfYear` for `Interval`. + + Since every `Date` value is supported by a structure, its methods give you additional options in retrieving date/time parts. For example, you can obtain the entire date value of a `Date` variable, with the time value set to midnight, as follows: + +```vb +Dim CurrDatTim As Date = Now ' Current date and time. +Dim LastMidnight As Date = CurrDatTim.Date ' At midnight. +``` + + The `Interval` argument can have one of the following settings. + +|Enumeration value|String|Part of date/time value to return| +|-----------------------|------------|----------------------------------------| +|`DateInterval.Day`|d|Day of month (1 through 31)| +|`DateInterval.DayOfYear`|y|Day of year (1 through 366)| +|`DateInterval.Hour`|h|Hour| +|`DateInterval.Minute`|n|Minute| +|`DateInterval.Month`|m|Month| +|`DateInterval.Quarter`|q|Quarter| +|`DateInterval.Second`|s|Second| +|`DateInterval.Weekday`|w|Day of week (1 through 7)| +|`DateInterval.WeekOfYear`|ww|Week of year (1 through 53)| +|`DateInterval.Year`|yyyy|Year| + + The `FirstDayOfWeekValue` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstDayOfWeek.System`|0|First day of week specified in system settings| +|`FirstDayOfWeek.Sunday`|1|Sunday (default)| +|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| +|`FirstDayOfWeek.Tuesday`|3|Tuesday| +|`FirstDayOfWeek.Wednesday`|4|Wednesday| +|`FirstDayOfWeek.Thursday`|5|Thursday| +|`FirstDayOfWeek.Friday`|6|Friday| +|`FirstDayOfWeek.Saturday`|7|Saturday| + + The `FirstWeekOfYearValue` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstWeekOfYear.System`|0|First week of year specified in system settings| +|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| +|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| +|`FirstWeekOfYear.FirstFullWeek`|3|First full week in new year| + + + +## Examples + This example takes a date and, using the `DatePart` function, displays the quarter of the year in which it occurs. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet27"::: + ]]> @@ -757,66 +757,66 @@ Dim LastMidnight As Date = CurrDatTim.Date ' At midnight. Returns an value containing the specified component of a given value. An integer value containing the specified component of a given value. - and classes of the namespace to determine your current settings. - - The `FirstDayOfWeekValue` argument affects calculations that use the `DateInterval.Weekday` and `DateInterval.WeekOfYear` `Interval` settings. The `FirstWeekOfYearValue` argument affects calculations that specify `DateInterval.WeekOfYear` for `Interval`. - - Since every `Date` value is supported by a structure, its methods give you additional options in retrieving date/time parts. For example, you can obtain the entire date value of a `Date` variable, with the time value set to midnight, as follows: - -```vb -Dim CurrDatTim As Date = Now ' Current date and time. -Dim LastMidnight As Date = CurrDatTim.Date ' At midnight. -``` - - The `Interval` argument can have one of the following settings. - -|Enumeration value|String|Part of date/time value to return| -|-----------------------|------------|----------------------------------------| -|`DateInterval.Day`|d|Day of month (1 through 31)| -|`DateInterval.DayOfYear`|y|Day of year (1 through 366)| -|`DateInterval.Hour`|h|Hour| -|`DateInterval.Minute`|n|Minute| -|`DateInterval.Month`|m|Month| -|`DateInterval.Quarter`|q|Quarter| -|`DateInterval.Second`|s|Second| -|`DateInterval.Weekday`|w|Day of week (1 through 7)| -|`DateInterval.WeekOfYear`|ww|Week of year (1 through 53)| -|`DateInterval.Year`|yyyy|Year| - - The `FirstDayOfWeekValue` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstDayOfWeek.System`|0|First day of week specified in system settings| -|`FirstDayOfWeek.Sunday`|1|Sunday (default)| -|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| -|`FirstDayOfWeek.Tuesday`|3|Tuesday| -|`FirstDayOfWeek.Wednesday`|4|Wednesday| -|`FirstDayOfWeek.Thursday`|5|Thursday| -|`FirstDayOfWeek.Friday`|6|Friday| -|`FirstDayOfWeek.Saturday`|7|Saturday| - - The `FirstWeekOfYearValue` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstWeekOfYear.System`|0|First week of year specified in system settings| -|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| -|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| -|`FirstWeekOfYear.FirstFullWeek`|3|First full week in new year| - - - -## Examples - This example takes a date and, using the `DatePart` function, displays the quarter of the year in which it occurs. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet27"::: - + and classes of the namespace to determine your current settings. + + The `FirstDayOfWeekValue` argument affects calculations that use the `DateInterval.Weekday` and `DateInterval.WeekOfYear` `Interval` settings. The `FirstWeekOfYearValue` argument affects calculations that specify `DateInterval.WeekOfYear` for `Interval`. + + Since every `Date` value is supported by a structure, its methods give you additional options in retrieving date/time parts. For example, you can obtain the entire date value of a `Date` variable, with the time value set to midnight, as follows: + +```vb +Dim CurrDatTim As Date = Now ' Current date and time. +Dim LastMidnight As Date = CurrDatTim.Date ' At midnight. +``` + + The `Interval` argument can have one of the following settings. + +|Enumeration value|String|Part of date/time value to return| +|-----------------------|------------|----------------------------------------| +|`DateInterval.Day`|d|Day of month (1 through 31)| +|`DateInterval.DayOfYear`|y|Day of year (1 through 366)| +|`DateInterval.Hour`|h|Hour| +|`DateInterval.Minute`|n|Minute| +|`DateInterval.Month`|m|Month| +|`DateInterval.Quarter`|q|Quarter| +|`DateInterval.Second`|s|Second| +|`DateInterval.Weekday`|w|Day of week (1 through 7)| +|`DateInterval.WeekOfYear`|ww|Week of year (1 through 53)| +|`DateInterval.Year`|yyyy|Year| + + The `FirstDayOfWeekValue` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstDayOfWeek.System`|0|First day of week specified in system settings| +|`FirstDayOfWeek.Sunday`|1|Sunday (default)| +|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| +|`FirstDayOfWeek.Tuesday`|3|Tuesday| +|`FirstDayOfWeek.Wednesday`|4|Wednesday| +|`FirstDayOfWeek.Thursday`|5|Thursday| +|`FirstDayOfWeek.Friday`|6|Friday| +|`FirstDayOfWeek.Saturday`|7|Saturday| + + The `FirstWeekOfYearValue` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstWeekOfYear.System`|0|First week of year specified in system settings| +|`FirstWeekOfYear.Jan1`|1|Week in which January 1 occurs (default)| +|`FirstWeekOfYear.FirstFourDays`|2|Week that has at least four days in the new year (complies with ISO standard 8601, section 3.17)| +|`FirstWeekOfYear.FirstFullWeek`|3|First full week in new year| + + + +## Examples + This example takes a date and, using the `DatePart` function, displays the quarter of the year in which it occurs. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet27"::: + ]]> @@ -870,53 +870,53 @@ Dim LastMidnight As Date = CurrDatTim.Date ' At midnight. Required. Integer expression from 1 through 9999. However, values below this range are also accepted. If is 0 through 99, it is interpreted as being between 1930 and 2029, as explained in the "Remarks" section. If is less than 1, it is subtracted from the current year. - Required. Integer expression from 1 through 12. However, values outside this range are also accepted. The value of is offset by 1 and applied to January of the calculated year. In other words, ( - 1) is added to January. The year is recalculated if necessary. The following results illustrate this effect: - - If is 1, the result is January of the calculated year. - - If is 0, the result is December of the previous year. - - If is -1, the result is November of the previous year. - + Required. Integer expression from 1 through 12. However, values outside this range are also accepted. The value of is offset by 1 and applied to January of the calculated year. In other words, ( - 1) is added to January. The year is recalculated if necessary. The following results illustrate this effect: + + If is 1, the result is January of the calculated year. + + If is 0, the result is December of the previous year. + + If is -1, the result is November of the previous year. + If is 13, the result is January of the following year. - Required. Integer expression from 1 through 31. However, values outside this range are also accepted. The value of is offset by 1 and applied to the first day of the calculated month. In other words, ( - 1) is added to the first of the month. The month and year are recalculated if necessary. The following results illustrate this effect: - - If is 1, the result is the first day of the calculated month. - - If is 0, the result is the last day of the previous month. - - If is -1, the result is the penultimate day of the previous month. - + Required. Integer expression from 1 through 31. However, values outside this range are also accepted. The value of is offset by 1 and applied to the first day of the calculated month. In other words, ( - 1) is added to the first of the month. The month and year are recalculated if necessary. The following results illustrate this effect: + + If is 1, the result is the first day of the calculated month. + + If is 0, the result is the last day of the previous month. + + If is -1, the result is the penultimate day of the previous month. + If is past the end of the current month, the result is the appropriate day of the following month. For example, if is 4 and is 31, the result is May 1. Returns a value representing the specified year, month, and day, with the time information set to midnight (00:00:00). A value that represents the specified year, month, and day, with the time information set to midnight (00:00:00). - error occurs. If the date specified by the three arguments is earlier than 00:00:00 on January 1 of the year 1, or later than 23:59:59 on December 31, 9999, an error occurs. - - The `Date` data type includes time components. `DateSerial` sets all of these to 0, so the returned value represents the beginning of the calculated day. - - Since every `Date` value is supported by a structure, its methods give you additional options in assembling a `Date` value. For example, you can use one of the overloaded constructors to populate a `Date` variable using the desired combination of components. The following example sets `NewDateTime` to May 6, 1978 at one tenth of a second before 8:30 in the morning: - -```vb -Dim NewDateTime As Date = New Date(1978, 5, 6, 8, 29, 59, 900) + + The following example demonstrates negative, zero, and positive argument values. Here, the `DateSerial` function returns a `Date` representing the day before the first day of March in the year 10 years before the current year; in other words, the last day of February ten years ago. + +```vb +Dim EndFeb As Date = DateSerial(-10, 3, 0) ``` - -## Examples - This example uses the `DateSerial` function to return the date for the specified year, month, and day. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet28"::: - + + If either `Month` or `Day` exceeds its normal range, it is applied to the next larger unit as appropriate. For example, if you specify 32 days, it is evaluated as one month and from one to four days, depending on the value of `Month`. If `Year` is greater than 9999, or if any argument is outside the range -2,147,483,648 through 2,147,483,647, an error occurs. If the date specified by the three arguments is earlier than 00:00:00 on January 1 of the year 1, or later than 23:59:59 on December 31, 9999, an error occurs. + + The `Date` data type includes time components. `DateSerial` sets all of these to 0, so the returned value represents the beginning of the calculated day. + + Since every `Date` value is supported by a structure, its methods give you additional options in assembling a `Date` value. For example, you can use one of the overloaded constructors to populate a `Date` variable using the desired combination of components. The following example sets `NewDateTime` to May 6, 1978 at one tenth of a second before 8:30 in the morning: + +```vb +Dim NewDateTime As Date = New Date(1978, 5, 6, 8, 29, 59, 900) +``` + +## Examples + This example uses the `DateSerial` function to return the date for the specified year, month, and day. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet28"::: + ]]> @@ -969,33 +969,33 @@ Dim NewDateTime As Date = New Date(1978, 5, 6, 8, 29, 59, 900) Returns or sets a string value representing the current date according to your system. Returns or sets a string value representing the current date according to your system. - property. - - To get the current system date or time in the format of your locale, or in a custom format, supply the property to the function, specifying either a predefined or user-defined date/time format. The following example demonstrates this. - -```vb -MsgBox("The formatted date is " & Format(Now, "dddd, d MMM yyyy")) -``` - - To access the current system date as a `Date`, use the property. - + property. + + To get the current system date or time in the format of your locale, or in a custom format, supply the property to the function, specifying either a predefined or user-defined date/time format. The following example demonstrates this. + +```vb +MsgBox("The formatted date is " & Format(Now, "dddd, d MMM yyyy")) +``` + + To access the current system date as a `Date`, use the property. + > [!IMPORTANT] -> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - The following example uses the `DateString` property to display the current system date. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet1"::: - +> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + The following example uses the `DateString` property to display the current system date. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet1"::: + ]]> Invalid format used to set the value of . @@ -1042,24 +1042,24 @@ MsgBox("The formatted date is " & Format(Now, "dddd, d MMM yyyy")) Returns a value containing the date information represented by a string, with the time information set to midnight (00:00:00). A value containing the date information represented by a string, with the time information set to midnight (00:00:00). - property of the class in the namespace. The default values are determined by **Control Panel** settings. You can override the Short Date format by setting the property of the class in the namespace. - - `DateValue` recognizes month names in long, abbreviated, and numeric form. For example, in addition to recognizing 12/30/1991 and 12/30/91, `DateValue` also recognizes December 30, 1991 and Dec 30, 1991. - - If the year part of `StringDate` is omitted, `DateValue` uses the current year from your computer's system date. - - If the `StringDate` argument includes time information, `DateValue` does not include it in the returned value. However, if `StringDate` includes invalid time information, such as "89:98", an error occurs. - - - -## Examples - This example uses the `DateValue` function to convert a string to a date. You can also use date literals to directly assign a date to an `Object` or `Date` variable, for example, `oldDate = #2/12/69#`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet29"::: - + property of the class in the namespace. The default values are determined by **Control Panel** settings. You can override the Short Date format by setting the property of the class in the namespace. + + `DateValue` recognizes month names in long, abbreviated, and numeric form. For example, in addition to recognizing 12/30/1991 and 12/30/91, `DateValue` also recognizes December 30, 1991 and Dec 30, 1991. + + If the year part of `StringDate` is omitted, `DateValue` uses the current year from your computer's system date. + + If the `StringDate` argument includes time information, `DateValue` does not include it in the returned value. However, if `StringDate` includes invalid time information, such as "89:98", an error occurs. + + + +## Examples + This example uses the `DateValue` function to convert a string to a date. You can also use date literals to directly assign a date to an `Object` or `Date` variable, for example, `oldDate = #2/12/69#`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet29"::: + ]]> @@ -1113,26 +1113,26 @@ MsgBox("The formatted date is " & Format(Now, "dddd, d MMM yyyy")) Returns an integer value from 1 through 31 representing the day of the month. An integer value from 1 through 31 representing the day of the month. - namespace defines as an enumeration. The following example shows how qualifying `Day` resolves this ambiguity: - -```vb -Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) -``` - - You can also obtain the day of the month by calling `DatePart` and specifying `DateInterval.Day` for the *Interval* argument. - - - -## Examples - The following example uses the `Day` function to obtain the day of the month from a specified date. In the development environment, the date literal is displayed in standard short format (such as "02/12/1969") using the locale settings of your code. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet30"::: - - `Day` is qualified to distinguish it from the enumeration. - + namespace defines as an enumeration. The following example shows how qualifying `Day` resolves this ambiguity: + +```vb +Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) +``` + + You can also obtain the day of the month by calling `DatePart` and specifying `DateInterval.Day` for the *Interval* argument. + + + +## Examples + The following example uses the `Day` function to obtain the day of the month from a specified date. In the development environment, the date literal is displayed in standard short format (such as "02/12/1969") using the locale settings of your code. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet30"::: + + `Day` is qualified to distinguish it from the enumeration. + ]]> @@ -1182,18 +1182,18 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns an integer value from 0 through 23 representing the hour of the day. An integer value from 0 through 23 representing the hour of the day. - @@ -1245,18 +1245,18 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns an integer value from 0 through 59 representing the minute of the hour. An integer value from 0 through 59 representing the minute of the hour. - @@ -1308,18 +1308,18 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns an integer value from 1 through 12 representing the month of the year. An integer value from 1 through 12 representing the month of the year. - @@ -1371,21 +1371,21 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns a string value containing the name of the specified month. A string value containing the name of the specified month. - [!NOTE] -> `MonthName` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. - - - -## Examples - This example uses the `MonthName` function to determine the name of the month, by the integer given. The Boolean value will determine whether the full name (`False`) or the abbreviated name (`True`) will be displayed. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet44"::: - +> `MonthName` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. + + + +## Examples + This example uses the `MonthName` function to determine the name of the month, by the integer given. The Boolean value will determine whether the full name (`False`) or the abbreviated name (`True`) will be displayed. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet44"::: + ]]> @@ -1430,18 +1430,18 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns a value containing the current date and time according to your system. The current date and time according to your system. - property. To set the system time, use the property. - - - -## Examples - The following example uses the `Now` property to return the current system date and time. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet4"::: - + property. To set the system time, use the property. + + + +## Examples + The following example uses the `Now` property to return the current system date and time. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet4"::: + ]]> @@ -1491,18 +1491,18 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns an integer value from 0 through 59 representing the second of the minute. An integer value from 0 through 59 representing the second of the minute. - @@ -1555,25 +1555,25 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns or sets a value containing the current time of day according to your system. Returns or sets a value containing the current time of day according to your system. - property. - - To get or set the current system date, use the property. - + property. + + To get or set the current system date, use the property. + > [!IMPORTANT] -> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - This example uses the `TimeOfDay` property to return the current system time. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet3"::: - +> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + This example uses the `TimeOfDay` property to return the current system time. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet3"::: + ]]> @@ -1612,20 +1612,20 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns a value representing the number of seconds elapsed since midnight. A value representing the number of seconds elapsed since midnight. - namespace, because `Timer` is also a defined class in the , , and namespaces. - + namespace, because `Timer` is also a defined class in the , , and namespaces. + ]]> @@ -1679,41 +1679,41 @@ Dim thisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now) Returns a value representing a specified hour, minute, and second, with the date information set relative to January 1 of the year 1. A value representing a specified hour, minute, and second, with the date information set relative to January 1 of the year 1. - error occurs. - - Since every `Date` value is supported by a structure, its methods give you additional options in assembling a `Date` value. For example, you can employ one of the overloaded constructors to populate a `Date` variable using the desired combination of components. The following example sets `newDateTime` to May 6, 1978 at one tenth of a second before 8:30 in the morning: - -```vb -Dim newDateTime As Date = New Date(1978, 5, 6, 8, 29, 59, 900) -``` - - - -## Examples - The following example uses the `TimeSerial` function to return a time for the specified hour, minute, and second. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet50"::: - + error occurs. + + Since every `Date` value is supported by a structure, its methods give you additional options in assembling a `Date` value. For example, you can employ one of the overloaded constructors to populate a `Date` variable using the desired combination of components. The following example sets `newDateTime` to May 6, 1978 at one tenth of a second before 8:30 in the morning: + +```vb +Dim newDateTime As Date = New Date(1978, 5, 6, 8, 29, 59, 900) +``` + + + +## Examples + The following example uses the `TimeSerial` function to return a time for the specified hour, minute, and second. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet50"::: + ]]> An argument is outside the range -2,147,483,648 through 2,147,483,647 @@ -1765,31 +1765,31 @@ Dim newDateTime As Date = New Date(1978, 5, 6, 8, 29, 59, 900) Returns or sets a string value representing the current time of day according to your system. Returns or sets a string value representing the current time of day according to your system. - property. - - To get the current system date or time in the format of your locale, or in a custom format, supply the property to the function, specifying either a predefined or user-defined date/time format. The following example demonstrates this. - -```vb -MsgBox("The formatted time is " & Format(Now, "hh.mm.ss.fff tt")) -``` - - To access the current system time as a `Date`, use the property. - + property. + + To get the current system date or time in the format of your locale, or in a custom format, supply the property to the function, specifying either a predefined or user-defined date/time format. The following example demonstrates this. + +```vb +MsgBox("The formatted time is " & Format(Now, "hh.mm.ss.fff tt")) +``` + + To access the current system time as a `Date`, use the property. + > [!IMPORTANT] -> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - This example uses the `TimeString` property to display the current system time. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet2"::: - +> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + This example uses the `TimeString` property to display the current system time. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet2"::: + ]]> Invalid format used to set the value of . @@ -1836,20 +1836,20 @@ MsgBox("The formatted time is " & Format(Now, "hh.mm.ss.fff tt")) Returns a value containing the time information represented by a string, with the date information set to January 1 of the year 1. A value containing the time information represented by a string, with the date information set to January 1 of the year 1. - error occurs. - - - -## Examples - The following example uses the `TimeValue` function to convert a string to a time. You can also use date literals to directly assign a time to a `Date` variable. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet51"::: - + error occurs. + + + +## Examples + The following example uses the `TimeValue` function to convert a string to a time. You can also use date literals to directly assign a time to a `Date` variable. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet51"::: + ]]> @@ -1902,25 +1902,25 @@ MsgBox("The formatted time is " & Format(Now, "hh.mm.ss.fff tt")) Returns or sets a value containing the current date according to your system. Returns or sets a value containing the current date according to your system. - property. - - To get or set the current system time, use the property. - + property. + + To get or set the current system time, use the property. + > [!IMPORTANT] -> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - This example uses the `Today` property to return the current system date. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet5"::: - +> Setting the system date or time requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + This example uses the `Today` property to return the current system date. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrDateProperties/VB/Module1.vb" id="Snippet5"::: + ]]> @@ -1966,34 +1966,34 @@ MsgBox("The formatted time is " & Format(Now, "hh.mm.ss.fff tt")) Returns an integer value containing a number representing the day of the week. An integer value containing a number representing the day of the week. - [!NOTE] -> `Weekday` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. - - The `DayOfWeek` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstDayOfWeek.System`|0|First day of week specified in system settings| -|`FirstDayOfWeek.Sunday`|1|Sunday (default)| -|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| -|`FirstDayOfWeek.Tuesday`|3|Tuesday| -|`FirstDayOfWeek.Wednesday`|4|Wednesday| -|`FirstDayOfWeek.Thursday`|5|Thursday| -|`FirstDayOfWeek.Friday`|6|Friday| -|`FirstDayOfWeek.Saturday`|7|Saturday| - - - -## Examples - The following example uses the `Weekday` function to obtain the day of the week from a specified date. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet57"::: - +> `Weekday` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. + + The `DayOfWeek` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstDayOfWeek.System`|0|First day of week specified in system settings| +|`FirstDayOfWeek.Sunday`|1|Sunday (default)| +|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| +|`FirstDayOfWeek.Tuesday`|3|Tuesday| +|`FirstDayOfWeek.Wednesday`|4|Wednesday| +|`FirstDayOfWeek.Thursday`|5|Thursday| +|`FirstDayOfWeek.Friday`|6|Friday| +|`FirstDayOfWeek.Saturday`|7|Saturday| + + + +## Examples + The following example uses the `Weekday` function to obtain the day of the week from a specified date. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet57"::: + ]]> @@ -2047,34 +2047,34 @@ MsgBox("The formatted time is " & Format(Now, "hh.mm.ss.fff tt")) Returns a string value containing the name of the specified weekday. A string value containing the name of the specified weekday. - [!NOTE] -> `WeekdayName` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. - - The `FirstDayOfWeekValue` argument can have one of the following settings. - -|Enumeration value|Value|Description| -|-----------------------|-----------|-----------------| -|`FirstDayOfWeek.System`|0|First day of week specified in system settings (default)| -|`FirstDayOfWeek.Sunday`|1|Sunday| -|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| -|`FirstDayOfWeek.Tuesday`|3|Tuesday| -|`FirstDayOfWeek.Wednesday`|4|Wednesday| -|`FirstDayOfWeek.Thursday`|5|Thursday| -|`FirstDayOfWeek.Friday`|6|Friday| -|`FirstDayOfWeek.Saturday`|7|Saturday| - - - -## Examples - The following example uses the `Weekday` function to obtain the day of the week from a specified date, and then the `WeekDayName` function to obtain the name of the weekday from its number. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet58"::: - +> `WeekdayName` uses the current calendar setting from the property of the class in the namespace. The default values are determined by **Control Panel** settings. + + The `FirstDayOfWeekValue` argument can have one of the following settings. + +|Enumeration value|Value|Description| +|-----------------------|-----------|-----------------| +|`FirstDayOfWeek.System`|0|First day of week specified in system settings (default)| +|`FirstDayOfWeek.Sunday`|1|Sunday| +|`FirstDayOfWeek.Monday`|2|Monday (complies with ISO standard 8601, section 3.17)| +|`FirstDayOfWeek.Tuesday`|3|Tuesday| +|`FirstDayOfWeek.Wednesday`|4|Wednesday| +|`FirstDayOfWeek.Thursday`|5|Thursday| +|`FirstDayOfWeek.Friday`|6|Friday| +|`FirstDayOfWeek.Saturday`|7|Saturday| + + + +## Examples + The following example uses the `Weekday` function to obtain the day of the week from a specified date, and then the `WeekDayName` function to obtain the name of the weekday from its number. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet58"::: + ]]> @@ -2125,18 +2125,18 @@ MsgBox("The formatted time is " & Format(Now, "hh.mm.ss.fff tt")) Returns an integer value from 1 through 9999 representing the year. An integer value from 1 through 9999 representing the year. - diff --git a/xml/Microsoft.VisualBasic/DateFormat.xml b/xml/Microsoft.VisualBasic/DateFormat.xml index 53a39e86dc1..7d03ec49054 100644 --- a/xml/Microsoft.VisualBasic/DateFormat.xml +++ b/xml/Microsoft.VisualBasic/DateFormat.xml @@ -28,14 +28,14 @@ Indicates how to display dates when calling the function. - [!NOTE] -> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. - +> You can access your computer's regional settings by double-clicking the **Regional Options** icon, found in **Control Panel**. + ]]> diff --git a/xml/Microsoft.VisualBasic/ErrObject.xml b/xml/Microsoft.VisualBasic/ErrObject.xml index f5947866462..c102220ed8c 100644 --- a/xml/Microsoft.VisualBasic/ErrObject.xml +++ b/xml/Microsoft.VisualBasic/ErrObject.xml @@ -36,30 +36,30 @@ The module contains properties and procedures used to identify and handle run-time errors using the object. - . - - - -## Examples - This example uses the properties of the `Err` object in constructing an error-message dialog box. Notice what happens when you use the `Clear` method first: When you then generate a Visual Basic error with the `Raise` method, Visual Basic's default values become the properties of the `Err` object. - -```vb -Dim Msg As String -' If an error occurs, construct an error message. -On Error Resume Next ' Defer error handling. -Err.Clear -Err.Raise(6) ' Generate an "Overflow" error. -' Check for error, then show message. -If Err.Number <> 0 Then - Msg = "Error # " & Str(Err.Number) & " was generated by " _ - & Err.Source & ControlChars.CrLf & Err.Description - MsgBox(Msg, MsgBoxStyle.Information, "Error") -End If -``` - + . + + + +## Examples + This example uses the properties of the `Err` object in constructing an error-message dialog box. Notice what happens when you use the `Clear` method first: When you then generate a Visual Basic error with the `Raise` method, Visual Basic's default values become the properties of the `Err` object. + +```vb +Dim Msg As String +' If an error occurs, construct an error message. +On Error Resume Next ' Defer error handling. +Err.Clear +Err.Raise(6) ' Generate an "Overflow" error. +' Check for error, then show message. +If Err.Number <> 0 Then + Msg = "Error # " & Str(Err.Number) & " was generated by " _ + & Err.Source & ControlChars.CrLf & Err.Description + MsgBox(Msg, MsgBoxStyle.Information, "Error") +End If +``` + ]]> @@ -112,29 +112,29 @@ End If Clears all property settings of the object. - [!NOTE] - > The `On Error Resume Next` construct may be preferable to `On Error GoTo` when handling errors generated during access to other objects. Checking `Err` after each interaction with an object removes ambiguity about which object was accessed by the code: You can be sure which object placed the error code in `Err.Number`, as well as which object originally generated the error (the object specified in `Err.Source`). - - - -## Examples - This example uses the `Err` object's `Clear` method to reset the numeric properties of the `Err` object to zero and its string properties to zero-length strings. Without the call to `Clear`, the second call to `MsgBox` would display the same error message. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet4"::: - + > The `On Error Resume Next` construct may be preferable to `On Error GoTo` when handling errors generated during access to other objects. Checking `Err` after each interaction with an object removes ambiguity about which object was accessed by the code: You can be sure which object placed the error code in `Err.Number`, as well as which object originally generated the error (the object specified in `Err.Source`). + + + +## Examples + This example uses the `Err` object's `Clear` method to reset the numeric properties of the `Err` object to zero and its string properties to zero-length strings. Without the call to `Clear`, the second call to `MsgBox` would display the same error message. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet4"::: + ]]> @@ -174,18 +174,18 @@ End If Returns or sets a expression containing a descriptive string associated with an error. Read/write. Returns or sets a expression containing a descriptive string associated with an error. Read/write. - property corresponds to a Visual Basic run-time error, then the string returned by the function is set in the `Description` property when the error is generated. - - - -## Examples - This example assigns a user-defined message to the `Description` property of the `Err` object. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet5"::: - + property corresponds to a Visual Basic run-time error, then the string returned by the function is set in the `Description` property when the error is generated. + + + +## Examples + This example assigns a user-defined message to the `Description` property of the `Err` object. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet5"::: + ]]> @@ -230,23 +230,23 @@ End If Gets an integer indicating the line number of the last executed statement. The line number of the last executed statement. - @@ -288,18 +288,18 @@ End If Returns the exception representing the error that occurred. The exception representing the error that occurred. - @@ -336,21 +336,21 @@ End If Returns or sets an containing the context ID for a topic in a Help file. Read/write. Returns or sets an containing the context ID for a topic in a Help file. Read/write. - property is checked. If the value of the `Number` property corresponds to a Visual Basic run-time error value, then the Visual Basic Help context ID for the error is used. If the value of the `Number` property does not correspond to a Visual Basic error, the contents screen for the Visual Basic Help file is displayed. - + property is checked. If the value of the `Number` property corresponds to a Visual Basic run-time error value, then the Visual Basic Help context ID for the error is used. If the value of the `Number` property does not correspond to a Visual Basic error, the contents screen for the Visual Basic Help file is displayed. + > [!NOTE] -> You should write routines in your application to handle typical errors. When programming with an object, you can use the object's Help file to improve the quality of your error handling, or to display a meaningful message to your user if the error is not recoverable. - - - -## Examples - This example uses the `HelpContext` property of the `Err` object to show the Visual Basic Help topic for the `Overflow` error. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet7"::: - +> You should write routines in your application to handle typical errors. When programming with an object, you can use the object's Help file to improve the quality of your error handling, or to display a meaningful message to your user if the error is not recoverable. + + + +## Examples + This example uses the `HelpContext` property of the `Err` object to show the Visual Basic Help topic for the `Overflow` error. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet7"::: + ]]> @@ -387,21 +387,21 @@ End If Returns or sets a expression containing the fully qualified path to a Help file. Read/write. Returns or sets a expression containing the fully qualified path to a Help file. Read/write. - [!NOTE] -> You should write routines in your application to handle typical errors. When programming with an object, you can use the object's Help file to improve the quality of your error handling, or to display a meaningful message to your user if the error is not recoverable. - - - -## Examples - This example uses the `HelpFile` property of the `Err` object to start the Help system. By default, the `HelpFile` property contains the name of the Visual Basic Help file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet7"::: - +> You should write routines in your application to handle typical errors. When programming with an object, you can use the object's Help file to improve the quality of your error handling, or to display a meaningful message to your user if the error is not recoverable. + + + +## Examples + This example uses the `HelpFile` property of the `Err` object to start the Help system. By default, the `HelpFile` property contains the name of the Visual Basic Help file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet7"::: + ]]> @@ -446,23 +446,23 @@ End If Gets a system error code produced by a call to a dynamic-link library (DLL). A system error code produced by a call to a dynamic-link library (DLL). - property applies only to DLL calls made from Visual Basic code. When such a call is made, the called function usually returns a code indicating success or failure, and the property is filled. Check the documentation for the DLL's functions to determine the return values that indicate success or failure. Whenever the failure code is returned, the Visual Basic application should immediately check the property. No exception is raised when the property is set. - + property applies only to DLL calls made from Visual Basic code. When such a call is made, the called function usually returns a code indicating success or failure, and the property is filled. Check the documentation for the DLL's functions to determine the return values that indicate success or failure. Whenever the failure code is returned, the Visual Basic application should immediately check the property. No exception is raised when the property is set. + > [!NOTE] > For smart devices, this property always returns zero. - -## Examples - The following example shows how you can use the `LastDllError` property after calling a function in the Windows API. The `PrintWindowCoordinates` procedure takes a handle to a window and calls the `GetWindowRect` function. `GetWindowRect` fills the RECT data structure with the lengths of the sides of the rectangle that make up the window. If you pass an invalid handle, an error occurs, and the error number is available through the `LastDllError` property. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet8"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet9"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet10"::: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet11"::: - + +## Examples + The following example shows how you can use the `LastDllError` property after calling a function in the Windows API. The `PrintWindowCoordinates` procedure takes a handle to a window and calls the `GetWindowRect` function. `GetWindowRect` fills the RECT data structure with the lengths of the sides of the rectangle that make up the window. If you pass an invalid handle, an error occurs, and the error number is available through the `LastDllError` property. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet8"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet9"::: +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet10"::: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrErrorHandling/VB/Class1.vb" id="Snippet11"::: + ]]> @@ -501,28 +501,28 @@ End If Returns or sets a numeric value specifying an error. Read/write. Returns or sets a numeric value specifying an error. Read/write. - @@ -575,20 +575,20 @@ End If Optional. The context ID identifying a topic within that provides help for the error. If omitted, the Visual Basic Help-file context ID for the error corresponding to the property is used, if it exists. Generates a run-time error; can be used instead of the statement. - @@ -628,20 +628,20 @@ End If Returns or sets a expression specifying the name of the object or application that originally generated the error. Read/write. Returns or sets a expression specifying the name of the object or application that originally generated the error. Read/write. - diff --git a/xml/Microsoft.VisualBasic/FileSystem.xml b/xml/Microsoft.VisualBasic/FileSystem.xml index 5f1362dfb9d..70abeecfe78 100644 --- a/xml/Microsoft.VisualBasic/FileSystem.xml +++ b/xml/Microsoft.VisualBasic/FileSystem.xml @@ -44,18 +44,18 @@ The module contains the procedures that are used to perform file, directory or folder, and system operations. The feature gives you better productivity and performance in file I/O operations than using the module. For more information, see . - Directories and Files Summary @@ -100,27 +100,27 @@ Required. A string expression that identifies which directory or folder becomes the new default directory or folder. may include the drive. If no drive is specified, changes the default directory or folder on the current drive. Changes the current directory or folder. The feature gives you better productivity and performance in file I/O operations than the function. For more information, see . - [!IMPORTANT] -> The `ChDir` function requires unmanaged code permission, which may affect its execution in partial-trust situations. For more information, see and . - - - -## Examples - This example uses the `ChDir` function to change the current directory or folder. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet41"::: - +> The `ChDir` function requires unmanaged code permission, which may affect its execution in partial-trust situations. For more information, see and . + + + +## Examples + This example uses the `ChDir` function to change the current directory or folder. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet41"::: + ]]> @@ -188,18 +188,18 @@ Required. String expression that specifies an existing drive. If you supply a zero-length string (""), the current drive does not change. If the argument is a multiple-character string, uses only the first letter. Changes the current drive. - and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - This example uses the `ChDrive` function to change the current drive. The function throws an exception if the drive does not exist. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet32"::: - + and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + This example uses the `ChDrive` function to change the current drive. The function throws an exception if the drive does not exist. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet32"::: + ]]> Invalid drive is specified, or drive is unavailable. @@ -255,18 +255,18 @@ Required. String expression that specifies an existing drive. If you supply a zero-length string (""), the current drive does not change. If the argument is a multiple-character string, uses only the first letter. Changes the current drive. - and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - This example uses the `ChDrive` function to change the current drive. The function throws an exception if the drive does not exist. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet32"::: - + and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + This example uses the `ChDrive` function to change the current drive. The function throws an exception if the drive does not exist. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet32"::: + ]]> Invalid drive is specified, or drive is unavailable. @@ -322,13 +322,13 @@ Returns a string representing the current path. The gives you better productivity and performance in file I/O operations than . For more information, see . A string representing the current path. - @@ -382,13 +382,13 @@ Returns a string representing the current path. The gives you better productivity and performance in file I/O operations than . For more information, see . A string representing the current path. - @@ -442,41 +442,41 @@ Returns a string representing the name of a file, directory, or folder that matches a specified pattern or file attribute, or the volume label of a drive. The gives you better productivity and performance in file I/O operations than the function. See for more information. A string representing the name of a file, directory, or folder that matches a specified pattern or file attribute, or the volume label of a drive. - [!IMPORTANT] -> To run correctly, the `Dir` function requires the and flags of to be granted to the executing code. For more information, see , , and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - The `Attributes` argument enumeration values are as follows: - -|Value|Constant|Description| -|-|-|-| -|`Normal`|`vbnormal`|Default. Specifies files without attributes.| -|`ReadOnly`|`vbReadOnly`|Specifies read-only files, and also files without attributes.| -|`Hidden`|`vbHidden`|Specifies hidden files, and also files without attributes.| -|`System`|`vbSystem`|Specifies system files, and also files without attributes.| -|`Volume`|`vbVolume`|Specifies volume label; if any other attribute is specified, `vbVolume` is ignored.| -|`Directory`|`vbDirectory`|Specifies directories or folders, and also files without attributes.| -|`Archive`|`vbArchive`|File has changed since last backup.| -|`Alias`|`vbAlias`|File has a different name.| - +> To run correctly, the `Dir` function requires the and flags of to be granted to the executing code. For more information, see , , and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + The `Attributes` argument enumeration values are as follows: + +|Value|Constant|Description| +|-|-|-| +|`Normal`|`vbnormal`|Default. Specifies files without attributes.| +|`ReadOnly`|`vbReadOnly`|Specifies read-only files, and also files without attributes.| +|`Hidden`|`vbHidden`|Specifies hidden files, and also files without attributes.| +|`System`|`vbSystem`|Specifies system files, and also files without attributes.| +|`Volume`|`vbVolume`|Specifies volume label; if any other attribute is specified, `vbVolume` is ignored.| +|`Directory`|`vbDirectory`|Specifies directories or folders, and also files without attributes.| +|`Archive`|`vbArchive`|File has changed since last backup.| +|`Alias`|`vbAlias`|File has a different name.| + > [!NOTE] -> These enumerations are specified by the Visual Basic language and can be used anywhere in your code instead of the actual values. - - - -## Examples - This example uses the `Dir` function to check if certain files and directories exist. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet3"::: - +> These enumerations are specified by the Visual Basic language and can be used anywhere in your code instead of the actual values. + + + +## Examples + This example uses the `Dir` function to check if certain files and directories exist. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -534,30 +534,30 @@ Returns a string representing the name of a file, directory, or folder that matches a specified pattern or file attribute, or the volume label of a drive. The gives you better productivity and performance in file I/O operations than the function. See for more information. A string representing the name of a file, directory, or folder that matches a specified pattern or file attribute, or the volume label of a drive. - [!IMPORTANT] -> To run correctly, the `Dir` function requires the and flags of to be granted to the executing code. For more information, see , , and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - The `Attributes` argument enumeration values are as follows: -|Value|Constant|Description| -|-|-|-| -|`Normal`|`vbnormal`|Default. Specifies files that have no attributes.| -|`ReadOnly`|`vbReadOnly`|Specifies read-only files, in addition to files that have no attributes.| -|`Hidden`|`vbHidden`|Specifies hidden files, in addition to files that have no attributes.| -|`System`|`vbSystem`|Specifies system files, in addition to files that have no attributes.| -|`Volume`|`vbVolume`|Specifies volume label; if any other attribute is specified, `vbVolume` is ignored.| -|`Directory`|`vbDirectory`|Specifies directories or folders, in addition to files that have no attributes.| -|`Archive`|`vbArchive`|File has changed since last backup.| -|`Alias`|`vbAlias`|File has a different name.| +> To run correctly, the `Dir` function requires the and flags of to be granted to the executing code. For more information, see , , and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + The `Attributes` argument enumeration values are as follows: +|Value|Constant|Description| +|-|-|-| +|`Normal`|`vbnormal`|Default. Specifies files that have no attributes.| +|`ReadOnly`|`vbReadOnly`|Specifies read-only files, in addition to files that have no attributes.| +|`Hidden`|`vbHidden`|Specifies hidden files, in addition to files that have no attributes.| +|`System`|`vbSystem`|Specifies system files, in addition to files that have no attributes.| +|`Volume`|`vbVolume`|Specifies volume label; if any other attribute is specified, `vbVolume` is ignored.| +|`Directory`|`vbDirectory`|Specifies directories or folders, in addition to files that have no attributes.| +|`Archive`|`vbArchive`|File has changed since last backup.| +|`Alias`|`vbAlias`|File has a different name.| > [!NOTE] -> These enumerations are specified by the Visual Basic language and can be used anywhere in your code in place of the actual values. -## Examples - This example uses the `Dir` function to check if certain files and directories exist. - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet3"::: +> These enumerations are specified by the Visual Basic language and can be used anywhere in your code in place of the actual values. +## Examples + This example uses the `Dir` function to check if certain files and directories exist. + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet3"::: ]]> @@ -602,22 +602,22 @@ Returns a Boolean value when the end of a file opened for or sequential has been reached. A Boolean value when the end of a file opened for or sequential has been reached. - File mode is invalid. @@ -663,20 +663,20 @@ Required. . Any valid file number. Returns an enumeration representing the file mode for files opened using the function. The gives you better productivity and performance in file I/O operations than the function. See for more information. - One of the following values: - + One of the following values: + ValueFile access mode124832 - @@ -729,24 +729,24 @@ Optional. Parameter array of 0 or more channels to be closed. Concludes input/output (I/O) to a file opened using the function. gives you better productivity and performance in file I/O operations. See for more information. - @@ -796,20 +796,20 @@ Required. A string expression that specifies the destination file name. may include the directory or folder, and drive, of the destination file. Copies a file. The gives you better productivity and performance in file I/O operations than . See for more information. - @@ -863,13 +863,13 @@ value that indicates the date and time a file was created or last modified. - @@ -930,53 +930,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the`FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the`FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1029,53 +1029,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used. Then the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used. Then the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1128,53 +1128,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1227,53 +1227,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function,`FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function,`FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1326,53 +1326,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1425,53 +1425,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the`FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the`FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1524,53 +1524,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1623,53 +1623,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1722,53 +1722,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1821,53 +1821,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -1926,53 +1926,53 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -2027,53 +2027,53 @@ Optional. Applies only when writing a string. Specifies whether to write a two-byte descriptor for the string that describes the length. The default is . Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the start of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -2136,53 +2136,53 @@ Optional. Applies only when writing a string. Specifies whether to write a two-byte descriptor for the string that describes the length. The default is . Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - -## Random Mode - For files opened in `Random` mode, the following rules apply: - -- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the starting of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. - -- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. - -- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. - - The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: - - The 218 bytes are distributed as follows: - - - 18 bytes for the descriptor: (2 + 8 * 2) - - - 200 bytes for the data: (5 * 10 * 4). - -- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. - -- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. - -- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. - -- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + +## Random Mode + For files opened in `Random` mode, the following rules apply: + +- If the length of the data being read is less than the length specified in the `RecordLength` clause of the `FileOpen` function, `FileGet` reads subsequent records on record-length boundaries. The space between the end of one record and the starting of the next record is padded with the existing contents of the file buffer. Because the amount of padding data cannot be determined with any certainty, it is generally a good idea to have the record length match the length of the data being read. + +- By default, if the variable being read into is a string, `FileGet` reads a two-byte descriptor that contains the string length and then reads the data that goes into the variable. Therefore, the record length specified by the `RecordLength` clause of the `FileOpen` function must be at least two bytes greater than the actual length of the string. Visual Basic 6.0 and earlier versions support fixed-length strings; when put to a file, the length descriptor is not written. If you want to read a string without the descriptor, you should pass `True` to the `StringIsFixedLength` parameter, and the string you read into should be the correct length. + +- If the variable being read into is an array, you can choose whether to read a descriptor for the size and dimension of the array. To write the descriptor, set the `ArrayIsDynamic` parameter to `True`. When reading the array, you have to match the way the array was written. If it was written with the descriptor, you have to read the descriptor. If the descriptor is not used, the size and bounds of the array passed into `FileGet` determine what to read. + + The descriptor specifies the rank of the array, the size, and the lower bounds for each rank. Its length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` parameter in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to write the array data and the array descriptor. For example, the following array declaration requires 218 bytes when the array is written to disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet21"::: + + The 218 bytes are distributed as follows: + + - 18 bytes for the descriptor: (2 + 8 * 2) + + - 200 bytes for the data: (5 * 10 * 4). + +- If the variable being read into is any other type of variable (not a variable-length string or an object), `FileGet` reads only the variable data. The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the length of the data being read. + +- `FileGet` reads elements of structures as if each were being read individually, except that there is no padding between elements. On disk, a dynamic array in a user-defined type (written with `FilePut`) is prefixed by a descriptor whose length equals 2 plus 8 times the number of dimensions: (2 + 8 * NumberOfDimensions). The record length specified by the `RecordLength` clause in the `FileOpen` function must be greater than or equal to the sum of all the bytes required to read the individual elements. This includes any arrays and their descriptors. The `VBFixedString` attribute can be applied to string fields in the structures to indicate the size of a string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGet` reads all variables from disk contiguously; that is, without padding between records. + +- For any array other than an array in a structure, `FileGet` reads only the data. No descriptor is read. + +- `FileGet` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] - > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. - + > Reading from a file by using the `FileGet` function requires `Read` access from the enumeration. + ]]> @@ -2241,55 +2241,55 @@ Optional. Record number ( mode files) or byte number ( mode files) at which reading starts. Reads data from an open disk file into a variable. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - class can be applied to string fields in the structures to indicate the size of string when written to disk. - -## Binary Mode - For files opened in `Binary` mode, all of the `Random` rules apply, with these exceptions: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGetObject` reads all variables from disk contiguously, that is, with no padding between records. - -- For any array other than an array in a structure, `FileGetObject` reads only the data. No descriptor is read. - - `FileGetObject` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. - + class can be applied to string fields in the structures to indicate the size of string when written to disk. + +## Binary Mode + For files opened in `Binary` mode, all of the `Random` rules apply, with these exceptions: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FileGetObject` reads all variables from disk contiguously, that is, with no padding between records. + +- For any array other than an array in a structure, `FileGetObject` reads only the data. No descriptor is read. + + `FileGetObject` reads variable-length strings that are not elements of structures without expecting the two-byte length descriptor. The number of bytes read equals the number of characters already in the string. + > [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file named Form1.vb may not be a Visual Basic source file. - - - -## Examples - The following example reads a record into a test file and then retrieves it. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet26"::: - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file named Form1.vb may not be a Visual Basic source file. + + + +## Examples + The following example reads a record into a test file and then retrieves it. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet26"::: + ]]> @@ -2337,21 +2337,21 @@ Returns a value that specifies the length of a file in bytes. The feature gives you better productivity and performance in file I/O operations than . For more information, see . The length of a file in bytes. - [!NOTE] -> To obtain the current length of an open file, use the `LOF` function. - - - -## Examples - This example uses the `FileLen` function to return the length of a file in bytes. For purposes of this example, assume that `TestFile` is a file that contains some data. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet1"::: - +> To obtain the current length of an open file, use the `LOF` function. + + + +## Examples + This example uses the `FileLen` function to return the length of a file in bytes. For purposes of this example, assume that `TestFile` is a file that contains some data. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet1"::: + ]]> File does not exist. @@ -2407,46 +2407,46 @@ Optional. Number less than or equal to 32,767 (bytes). For files opened for random access, this value is the record length. For sequential files, this value is the number of characters buffered. Opens a file for input or output. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When writing to a file, an application may have to create a file, if the file to which it is trying to write does not exist. To do so, it needs permission for the directory in which the file is to be created. However, if the file specified by `FileName` does exist, the application needs `Write` permission only to the file itself. Wherever possible, to help improve security, create the file during deployment and grant `Write` permission to that file only, instead of to the whole directory. To help improve security, write data to user directories instead of to the root directory or the Program Files directory. - - The channel to open can be found by using the `FreeFile()` function. - +> When writing to a file, an application may have to create a file, if the file to which it is trying to write does not exist. To do so, it needs permission for the directory in which the file is to be created. However, if the file specified by `FileName` does exist, the application needs `Write` permission only to the file itself. Wherever possible, to help improve security, create the file during deployment and grant `Write` permission to that file only, instead of to the whole directory. To help improve security, write data to user directories instead of to the root directory or the Program Files directory. + + The channel to open can be found by using the `FreeFile()` function. + > [!IMPORTANT] -> The `FileOpen` function requires `Read` access from the `FileIOPermissionAccess` enumeration, which may affect its execution in partial trust situations. For more information, see enumeration. - - - -## Examples - This example illustrates various uses of the `FileOpen` function to enable input and output to a file. - - The following code opens the file `TestFile` in `Input` mode. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet5"::: - - This example opens the file in `Binary` mode for writing operations only. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet6"::: - - The following example opens the file in `Random` mode. The file contains records of the structure `Person`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet7"::: - - This code example opens the file in `Output` mode; any process can read or write to file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet8"::: - - This code example opens the file in `Binary` mode for reading; other processes cannot read file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet9"::: - +> The `FileOpen` function requires `Read` access from the `FileIOPermissionAccess` enumeration, which may affect its execution in partial trust situations. For more information, see enumeration. + + + +## Examples + This example illustrates various uses of the `FileOpen` function to enable input and output to a file. + + The following code opens the file `TestFile` in `Input` mode. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet5"::: + + This example opens the file in `Binary` mode for writing operations only. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet6"::: + + The following example opens the file in `Random` mode. The file contains records of the structure `Person`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet7"::: + + This code example opens the file in `Output` mode; any process can read or write to file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet8"::: + + This code example opens the file in `Binary` mode for reading; other processes cannot read file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet9"::: + ]]> Record length is negative (and not equal to -1). @@ -2506,59 +2506,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -2614,59 +2614,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -2722,59 +2722,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -2830,59 +2830,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -2938,59 +2938,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3046,59 +3046,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3154,59 +3154,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3262,59 +3262,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3370,59 +3370,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3478,59 +3478,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3592,59 +3592,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3717,59 +3717,59 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3827,59 +3827,59 @@ Optional. Applies only when writing a string. Specifies whether to write a two-byte string length descriptor for the string to the file. The default is . Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -3945,59 +3945,59 @@ Optional. Applies only when writing a string. Specifies whether to write a two-byte string length descriptor for the string to the file. The default is . Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] - > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, - -## Binary Mode - For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: - -- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. - -- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. - -- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: - -- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. - - - -## Examples - This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: - + > String fields that have more bytes than specified by the `VBFixedString` attribute are truncated when written to disk, + +## Binary Mode + For files opened in `Binary` mode, most of the `Random` mode rules apply, with some exceptions. The following rules for files opened in `Binary` mode differ from the rules for `Random` mode: + +- The `RecordLength` clause in the `FileOpen` function has no effect. `FilePut` writes all variables to disk contiguously, that is, without padding between records. + +- For any array other than an array in a structure, `FilePut` writes only the data. No descriptor is written. + +- `FilePut` writes variable-length strings that are not elements of structures without the two-byte length descriptor. The number of bytes written equals the number of characters in the string. For example, the following statements write 11 bytes to file number 1: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet44"::: + +- Writing to a file by using the `FilePut` function requires `Write` access from the enumeration. + + + +## Examples + This example uses the `FilePut` function to write data to a file. Five records of the structure `Person` are written to the file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet42"::: + ]]> @@ -4059,44 +4059,44 @@ Optional. Record number ( mode files) or byte number ( mode files) at which writing starts. Writes data from a variable to a disk file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - @@ -4145,13 +4145,13 @@ Required. Numeric expression in the range 0-255, inclusive, which indicates how many characters appear on a line before a new line is started. If equals 0, there is no limit to the length of a line. The default value for is 0. Assigns an output line width to a file opened by using the function. - File mode is invalid. @@ -4196,18 +4196,18 @@ Returns an value that represents the next file number available for use by the function. An integer value that represents the next file number available for use by the function. - More than 255 files are in use. @@ -4253,24 +4253,24 @@ Returns a value that represents the attributes of a file, directory, or folder. The feature gives you better productivity and performance in file I/O operations than . For more information, see . A bitwise combination of the enumeration values. - @@ -4332,41 +4332,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has some lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has some lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -4419,41 +4419,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has some lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has some lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -4506,41 +4506,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -4593,41 +4593,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -4680,41 +4680,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -4767,41 +4767,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -4854,41 +4854,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -4941,41 +4941,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, since the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, since the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -5028,41 +5028,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -5121,41 +5121,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -5208,41 +5208,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -5295,41 +5295,41 @@ Result = GetAttr(FName) And vbArchive Required. Variable that is assigned the values read from the file - cannot be an array or object variable. Reads data from an open sequential file and assigns the data to variables. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. - - When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. - -|Data|Value assigned to variable| -|-|-| -|Delimiting comma or blank line|Empty| -|#NULL#|`DBNull`| -|#TRUE# or #FALSE#|`True` or `False`| -|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| -|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| - - If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. - +> When reading from files, do not make decisions about the contents of the file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic 2005 source file. + + When read, standard string or numeric data is assigned to variables without modification. The following table illustrates how other input data is treated. + +|Data|Value assigned to variable| +|-|-| +|Delimiting comma or blank line|Empty| +|#NULL#|`DBNull`| +|#TRUE# or #FALSE#|`True` or `False`| +|#`yyyy-mm-dd hh:mm:ss`#|The date and/or time represented by the expression| +|#ERROR `errornumber`#|`errornumber` (variable is an object tagged as an error)| + + If you reach the end of the file while you are inputting a data item, the input is stopped and an error occurs. + > [!NOTE] -> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. - +> The `Input` function is not localized. For example, in the German version, if you input 3,14159, it returns only 3, because the comma is treated as a variable separator instead of as a decimal point. + > [!IMPORTANT] -> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . - - - -## Examples - This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: - +> Reading from a file by using the `Input` function requires `Read` access from the `FileIOPermissionAccess` enumeration. For more information, see . + + + +## Examples + This example uses the `Input` function to read data from a file into two variables. This example assumes that `TestFile` is a file that has several lines of data written to it using the `Write` function, each line containing a string in quotations and a number separated by a comma, for example: ("Hello", 234). + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet35"::: + ]]> File mode is invalid. @@ -5397,27 +5397,27 @@ Result = GetAttr(FName) And vbArchive Returns value that contains characters from a file opened in or mode. The feature gives you better productivity and performance in file I/O operations than . For more information, see . A string that contains characters from a file opened in or mode. The feature gives you better productivity and performance in file I/O operations than . - [!NOTE] -> When reading from files, do not make security decisions about the contents of the file based on the file name extension. For example, a file named Form1.vb may not be a Visual Basic source file. - - - -## Examples - This example uses the `InputString` function to read one character at a time from a file and print it to the `Output` window. This example assumes that `MyFile` is a text file that has several lines of sample data. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet33"::: - +> When reading from files, do not make security decisions about the contents of the file based on the file name extension. For example, a file named Form1.vb may not be a Visual Basic source file. + + + +## Examples + This example uses the `InputString` function to read one character at a time from a file and print it to the `Output` window. This example assumes that `MyFile` is a text file that has several lines of sample data. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -5466,20 +5466,20 @@ Result = GetAttr(FName) And vbArchive Required. A string expression that specifies one or more file names to be deleted. can include the directory or folder, and the drive. Deletes files from a disk. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - to be granted to the executing code. For more information, see [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)) - - - -## Examples - This example uses the `Kill` function to delete a file from a disk. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet60"::: - + to be granted to the executing code. For more information, see [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)) + + + +## Examples + This example uses the `Kill` function to delete a file from a disk. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet60"::: + ]]> Target file(s) open. @@ -5527,28 +5527,28 @@ Result = GetAttr(FName) And vbArchive Reads a single line from an open sequential file and assigns it to a variable. Reads a single line from an open sequential file and assigns it to a variable. - [!IMPORTANT] -> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. - - The `LineInput` function reads from a file one character at a time until it encounters a carriage return (`Chr(13)`) or carriage return/line feed (`Chr(13) + Chr(10)`) sequence. Carriage return/line feed sequences are skipped instead of appended to the character string. - +> When reading from files, do not make decisions about the contents of a file based on the file name extension. For example, a file that is named Form1.vb may not be a Visual Basic source file. + + The `LineInput` function reads from a file one character at a time until it encounters a carriage return (`Chr(13)`) or carriage return/line feed (`Chr(13) + Chr(10)`) sequence. Carriage return/line feed sequences are skipped instead of appended to the character string. + > [!IMPORTANT] -> Reading from a file by using the `LineInput` function requires `Read` access from the enumeration. - - - -## Examples - This example uses the `LineInput` function to read a line from a sequential file and assign it to a variable. This example assumes that `TestFile` is a text file that has several lines of sample data. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet19"::: - +> Reading from a file by using the `LineInput` function requires `Read` access from the enumeration. + + + +## Examples + This example uses the `LineInput` function to read a line from a sequential file and assign it to a variable. This example assumes that `TestFile` is a text file that has several lines of sample data. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet19"::: + ]]> End of file reached. @@ -5599,28 +5599,28 @@ Result = GetAttr(FName) And vbArchive Returns a value that specifies the current read/write position in an open file. The current read/write position in an open file. - File mode is invalid. @@ -5689,24 +5689,24 @@ Result = GetAttr(FName) And vbArchive Required. Any valid file number. Controls access by other processes to all or part of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than and . For more information, see . - File mode is invalid. @@ -5767,24 +5767,24 @@ Result = GetAttr(FName) And vbArchive Optional. Number of the only record or byte to lock or unlock. Controls access by other processes to all or part of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than and . For more information, see . - File mode is invalid. @@ -5847,24 +5847,24 @@ Result = GetAttr(FName) And vbArchive Optional. Number of the last record or byte to lock or unlock. Controls access by other processes to all or part of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than and . For more information, see . - File mode is invalid. @@ -5910,18 +5910,18 @@ Result = GetAttr(FName) And vbArchive Returns the size, in bytes, of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than . For more information, see . The size, in bytes, of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than . - File mode is invalid. @@ -5970,18 +5970,18 @@ Result = GetAttr(FName) And vbArchive Required. A string expression that identifies the directory to be created. The may include the drive. If no drive is specified, creates the new directory on the current drive. Creates a new directory. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - @@ -6038,45 +6038,45 @@ Result = GetAttr(FName) And vbArchive Required. Any valid file number. - Optional. Zero or more comma-delimited expressions to write to a file. - - The argument settings are: - - : File mode is invalid. - + Optional. Zero or more comma-delimited expressions to write to a file. + + The argument settings are: + + : File mode is invalid. + : does not exist. Writes display-formatted data to a sequential file. - . - - - -## Examples - This example uses the `Print` and `PrintLine` functions to write data to a file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet53"::: - + . + + + +## Examples + This example uses the `Print` and `PrintLine` functions to write data to a file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet53"::: + ]]> @@ -6132,45 +6132,45 @@ Result = GetAttr(FName) And vbArchive Required. Any valid file number. - Optional. Zero or more comma-delimited expressions to write to a file. - - The argument settings are: - - : File mode is invalid. - + Optional. Zero or more comma-delimited expressions to write to a file. + + The argument settings are: + + : File mode is invalid. + : does not exist. Writes display-formatted data to a sequential file. - . - - - -## Examples - This example uses the `Print` and `PrintLine` functions to write data to a file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet53"::: - + . + + + +## Examples + This example uses the `Print` and `PrintLine` functions to write data to a file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet53"::: + ]]> @@ -6228,23 +6228,23 @@ Result = GetAttr(FName) And vbArchive Required. A string expression that specifies the new file name and location. may include directory and drive of the destination location. The file name specified by cannot already exist. Renames a disk file or directory. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!IMPORTANT] -> When using `Rename` to copy a file from an unprotected location to a protected location, the file retains the less restricted rights. Check to make sure that you are not introducing a possible security risk. - - - -## Examples - This example uses the `Rename` function to rename a file. For purposes of this example, assume that the directories that are specified already exist. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet30"::: - +> When using `Rename` to copy a file from an unprotected location to a protected location, the file retains the less restricted rights. Check to make sure that you are not introducing a possible security risk. + + + +## Examples + This example uses the `Rename` function to rename a file. For purposes of this example, assume that the directories that are specified already exist. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet30"::: + ]]> Path is invalid. @@ -6291,18 +6291,18 @@ Result = GetAttr(FName) And vbArchive Closes all disk files opened by using the function. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - @@ -6346,18 +6346,18 @@ Result = GetAttr(FName) And vbArchive Required. A string expression that identifies the directory or folder to be removed. can include the drive. If no drive is specified, removes the directory on the current drive. Removes an existing directory. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - @@ -6419,39 +6419,39 @@ Result = GetAttr(FName) And vbArchive Returns a specifying the current read/write position in a file opened by using the function, or sets the position for the next read/write operation in a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than . For more information, see . A specifying the current read/write position in a file opened by using the function, or sets the position for the next read/write operation in a file opened by using the function. - File mode is invalid. @@ -6502,39 +6502,39 @@ Result = GetAttr(FName) And vbArchive Required. Number in the range 1-2,147,483,647, inclusive, that indicates where the next read/write operation should occur. Returns a specifying the current read/write position in a file opened by using the function, or sets the position for the next read/write operation in a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - File mode is invalid. @@ -6585,34 +6585,34 @@ Result = GetAttr(FName) And vbArchive Required. Constant or numeric expression, whose sum specifies file attributes. Sets attribute information for a file. The feature gives you better productivity and performance in file I/O operations than . For more information, see . - [!NOTE] -> These enumerations are specified by the Visual Basic language. The names can be used anywhere in your code instead of the actual values. - - - -## Examples - This example uses the `SetAttr` function to set attributes for a file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet14"::: - +> These enumerations are specified by the Visual Basic language. The names can be used anywhere in your code instead of the actual values. + + + +## Examples + This example uses the `SetAttr` function to set attributes for a file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet14"::: + ]]> @@ -6661,25 +6661,25 @@ Result = GetAttr(FName) And vbArchive Used with the or function to position output. Used with the or function to position output. - [!NOTE] -> Make sure your tabular columns are wide enough to allow for wide letters. - - - -## Examples - This example uses the `SPC` function to position output in a file and in the **Output** window. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet16"::: - +> Make sure your tabular columns are wide enough to allow for wide letters. + + + +## Examples + This example uses the `SPC` function to position output in a file and in the **Output** window. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet16"::: + ]]> @@ -6733,29 +6733,29 @@ Result = GetAttr(FName) And vbArchive Used with the or functions to position output. Used with the or functions to position output. - or . - + or . + > [!NOTE] -> Make sure your tabular columns are wide enough to contain wide letters. - - - -## Examples - This example uses the `TAB` function to position output in a file and in the **Output** window. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet37"::: - +> Make sure your tabular columns are wide enough to contain wide letters. + + + +## Examples + This example uses the `TAB` function to position output in a file and in the **Output** window. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet37"::: + ]]> @@ -6803,29 +6803,29 @@ Result = GetAttr(FName) And vbArchive Used with the or functions to position output. Used with the or functions to position output. - or . - + or . + > [!NOTE] -> Make sure your tabular columns are wide enough to contain wide letters. - - - -## Examples - This example uses the `TAB` function to position output in a file and in the **Output** window. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet37"::: - +> Make sure your tabular columns are wide enough to contain wide letters. + + + +## Examples + This example uses the `TAB` function to position output in a file and in the **Output** window. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet37"::: + ]]> @@ -6895,24 +6895,24 @@ Result = GetAttr(FName) And vbArchive Required. Any valid file number. Controls access by other processes to all or part of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than and . For more information, see . - File mode is invalid. @@ -6973,24 +6973,24 @@ Result = GetAttr(FName) And vbArchive Optional. Number of the only record or byte to lock or unlock. Controls access by other processes to all or part of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than and . For more information, see . - File mode is invalid. @@ -7053,24 +7053,24 @@ Result = GetAttr(FName) And vbArchive Optional. Number of the last record or byte to lock or unlock. Controls access by other processes to all or part of a file opened by using the function. The feature gives you better productivity and performance in file I/O operations than and . For more information, see . - File mode is invalid. @@ -7124,42 +7124,42 @@ Result = GetAttr(FName) And vbArchive Optional. One or more comma-delimited expressions to write to a file. Writes data to a sequential file. Data written with is usually read from a file by using . - . - - - -## Examples - This example uses the `Write` function to write raw data to a sequential file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet64"::: - + . + + + +## Examples + This example uses the `Write` function to write raw data to a sequential file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet64"::: + ]]> File mode is invalid. @@ -7218,42 +7218,42 @@ Result = GetAttr(FName) And vbArchive Optional. One or more comma-delimited expressions to write to a file. Writes data to a sequential file. Data written with is usually read from a file by using . - . - - - -## Examples - This example uses the `Write` function to write raw data to a sequential file. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet64"::: - + . + + + +## Examples + This example uses the `Write` function to write raw data to a sequential file. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet64"::: + ]]> diff --git a/xml/Microsoft.VisualBasic/Interaction.xml b/xml/Microsoft.VisualBasic/Interaction.xml index 86b0a0e0b13..3c3a381d893 100644 --- a/xml/Microsoft.VisualBasic/Interaction.xml +++ b/xml/Microsoft.VisualBasic/Interaction.xml @@ -39,20 +39,20 @@ The module contains procedures used to interact with objects, applications, and systems. - as the second argument opens the application in normal size and gives it the focus. - -```vb -Dim procID As Integer -' Run calculator. -procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) -``` - + as the second argument opens the application in normal size and gives it the focus. + +```vb +Dim procID As Integer +' Run calculator. +procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) +``` + ]]> Information and Interaction Summary @@ -110,29 +110,29 @@ procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) specifying the Win32 process ID number assigned to this process. You can use the ID returned by the , provided it is not zero. Activates an application that is already running. - method. - - The `AppActivate` function changes the focus to the named application or window but does not affect whether it is maximized or minimized. Focus moves away from the activated application window when the user takes some action to change the focus or close the window. You can use the `Shell` function to start an application and set the window style. - - If you use the `Title` parameter, `AppActivate` uses a case-insensitive comparison but otherwise requires an exact match with the contents of the title bar. It first looks through the top-level windows and then through the child windows. If it cannot find a match, it throws an . - - You can use `AppActivate` only with processes that own windows. Most console applications do not own windows, which means that they do not appear in the list of processes that `AppActivate` searches. When running from a console application, the system creates a separate process to run the application and returns the output to the console process. Consequently, when you request the current process ID, you get the process ID of this separate process, rather than the console application's process ID. - - At run time, the `AppActivate` function activates any running application with a title that matches `Title` or with a process ID that matches `ProcessId`. If there is no exact match, it activates any application whose title string ends with `Title`. If there is more than one application named `Title`, the `AppActivate` function arbitrarily chooses one to activate. - + method. + + The `AppActivate` function changes the focus to the named application or window but does not affect whether it is maximized or minimized. Focus moves away from the activated application window when the user takes some action to change the focus or close the window. You can use the `Shell` function to start an application and set the window style. + + If you use the `Title` parameter, `AppActivate` uses a case-insensitive comparison but otherwise requires an exact match with the contents of the title bar. It first looks through the top-level windows and then through the child windows. If it cannot find a match, it throws an . + + You can use `AppActivate` only with processes that own windows. Most console applications do not own windows, which means that they do not appear in the list of processes that `AppActivate` searches. When running from a console application, the system creates a separate process to run the application and returns the output to the console process. Consequently, when you request the current process ID, you get the process ID of this separate process, rather than the console application's process ID. + + At run time, the `AppActivate` function activates any running application with a title that matches `Title` or with a process ID that matches `ProcessId`. If there is no exact match, it activates any application whose title string ends with `Title`. If there is more than one application named `Title`, the `AppActivate` function arbitrarily chooses one to activate. + > [!NOTE] -> The `AppActivate` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . - - - -## Examples - This example illustrates various uses of the `AppActivate` function to activate an application window. If a Notepad process is not running, the example throws an . The `Shell` procedure assumes the applications are in the paths specified. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet11"::: - +> The `AppActivate` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . + + + +## Examples + This example illustrates various uses of the `AppActivate` function to activate an application window. If a Notepad process is not running, the example throws an . The `Shell` procedure assumes the applications are in the paths specified. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet11"::: + ]]> @@ -181,29 +181,29 @@ procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) expression specifying the title in the title bar of the application you want to activate. You can use the title assigned to the application when it was launched. Activates an application that is already running. - method. - - The `AppActivate` function changes the focus to the named application or window but does not affect whether it is maximized or minimized. Focus moves away from the activated application window when the user takes some action to change the focus or close the window. You can use the `Shell` function to start an application and set the window style. - - If you use the `Title` parameter, `AppActivate` uses a case-insensitive comparison but otherwise requires an exact match with the contents of the title bar. It first looks through the top-level windows and then through the child windows. If it cannot find a match, it throws an . - - You can use `AppActivate` only with processes that own windows. Most console applications do not own windows, which means that they do not appear in the list of processes that `AppActivate` searches. When running from a console application, the system creates a separate process to run the application and returns the output to the console process. Consequently, when you request the current process ID, you get the process ID of this separate process, rather than the console application's process ID. - - At run time, the `AppActivate` function activates any running application with a title that matches `Title` or with a process ID that matches `ProcessId`. If there is no exact match, it activates any application whose title string ends with `Title`. If there is more than one application named `Title`, the `AppActivate` function arbitrarily chooses one to activate. - + method. + + The `AppActivate` function changes the focus to the named application or window but does not affect whether it is maximized or minimized. Focus moves away from the activated application window when the user takes some action to change the focus or close the window. You can use the `Shell` function to start an application and set the window style. + + If you use the `Title` parameter, `AppActivate` uses a case-insensitive comparison but otherwise requires an exact match with the contents of the title bar. It first looks through the top-level windows and then through the child windows. If it cannot find a match, it throws an . + + You can use `AppActivate` only with processes that own windows. Most console applications do not own windows, which means that they do not appear in the list of processes that `AppActivate` searches. When running from a console application, the system creates a separate process to run the application and returns the output to the console process. Consequently, when you request the current process ID, you get the process ID of this separate process, rather than the console application's process ID. + + At run time, the `AppActivate` function activates any running application with a title that matches `Title` or with a process ID that matches `ProcessId`. If there is no exact match, it activates any application whose title string ends with `Title`. If there is more than one application named `Title`, the `AppActivate` function arbitrarily chooses one to activate. + > [!NOTE] -> The `AppActivate` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . - - - -## Examples - This example illustrates various uses of the `AppActivate` function to activate an application window. If a Notepad process is not running, the example throws an . The `Shell` procedure assumes the applications are in the paths specified. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet11"::: - +> The `AppActivate` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . + + + +## Examples + This example illustrates various uses of the `AppActivate` function to activate an application window. If a Notepad process is not running, the example throws an . The `Shell` procedure assumes the applications are in the paths specified. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet11"::: + ]]> @@ -254,21 +254,21 @@ procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) Sounds a tone through the computer's speaker. - [!NOTE] -> The `Beep` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . - - - -## Examples - This example uses the `Beep` function to sound a tone through the computer's speaker. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet59"::: - +> The `Beep` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . + + + +## Examples + This example uses the `Beep` function to sound a tone through the computer's speaker. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet59"::: + ]]> Visual Basic Run-Time Library Members @@ -343,24 +343,24 @@ procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) Executes a method on an object, or sets or returns a property on an object. Executes a method on an object, or sets or returns a property on an object. - Invalid value; must be , , or . @@ -419,25 +419,25 @@ procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) Selects and returns a value from a list of arguments. Selects and returns a value from a list of arguments. - [!NOTE] -> The expressions in the argument list can include function calls. As part of preparing the argument list for the call to `Choose`, the Visual Basic compiler calls every function in every expression. This means that you cannot rely on a particular function not being called if a different expression is selected by `Index`. - - - -## Examples - This example uses the `Choose` function to display a name in response to an index passed into the procedure in the `Ind` parameter. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet22"::: - +> The expressions in the argument list can include function calls. As part of preparing the argument list for the call to `Choose`, the Visual Basic compiler calls every function in every expression. This means that you cannot rely on a particular function not being called if a different expression is selected by `Index`. + + + +## Examples + This example uses the `Choose` function to display a name in response to an index passed into the procedure in the `Ind` parameter. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet22"::: + ]]> @@ -481,24 +481,24 @@ procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) Returns the argument portion of the command line used to start Visual Basic or an executable program developed with Visual Basic. The feature provides greater productivity and performance than the function. For more information, see . - The argument portion of the command line used to start Visual Basic or an executable program developed with Visual Basic. - + The argument portion of the command line used to start Visual Basic or an executable program developed with Visual Basic. + The feature provides greater productivity and performance than the function. For more information, see . - @@ -568,62 +568,62 @@ procID = Shell("C:\Windows\system32\calc.exe", AppWinStyle.NormalFocus) Creates and returns a reference to a COM object. cannot be used to create instances of classes in Visual Basic unless those classes are explicitly exposed as COM components. Creates and returns a reference to a COM object. cannot be used to create instances of classes in Visual Basic unless those classes are explicitly exposed as COM components. - [!NOTE] -> Refer to COM documentation (see Microsoft Developer Network) for additional information on making an application accessible on a remote networked computer. You may need to add a registry key for your application. - - The following code returns the version number of an instance of Excel running on a remote computer named `MyServer`: - -```vb -Sub CreateRemoteExcelObj() - Dim xlApp As Object - ' Replace string "\\MyServer" with name of the remote computer. - xlApp = CreateObject("Excel.Application", "\\MyServer") - MsgBox(xlApp.Version) -End Sub -``` - - If the remote server name is incorrect, or if it is unavailable, a run-time error occurs. - +> Refer to COM documentation (see Microsoft Developer Network) for additional information on making an application accessible on a remote networked computer. You may need to add a registry key for your application. + + The following code returns the version number of an instance of Excel running on a remote computer named `MyServer`: + +```vb +Sub CreateRemoteExcelObj() + Dim xlApp As Object + ' Replace string "\\MyServer" with name of the remote computer. + xlApp = CreateObject("Excel.Application", "\\MyServer") + MsgBox(xlApp.Version) +End Sub +``` + + If the remote server name is incorrect, or if it is unavailable, a run-time error occurs. + > [!NOTE] -> Use `CreateObject` when there is no current instance of the object. If an instance of the object is already running, a new instance is started, and an object of the specified type is created. To use the current instance, or to start the application and have it load a file, use the `GetObject` function. If an object has registered itself as a single-instance object, only one instance of the object is created, no matter how many times `CreateObject` is executed. - -## Creating Framework Objects - You can use the `CreateObject` function only to create a COM object. While there is no exact equivalent mechanism for creating a .NET Framework object, the in the namespace contains methods to create local or remote objects. In particular, the method or the method might be useful. - +> Use `CreateObject` when there is no current instance of the object. If an instance of the object is already running, a new instance is started, and an object of the specified type is created. To use the current instance, or to start the application and have it load a file, use the `GetObject` function. If an object has registered itself as a single-instance object, only one instance of the object is created, no matter how many times `CreateObject` is executed. + +## Creating Framework Objects + You can use the `CreateObject` function only to create a COM object. While there is no exact equivalent mechanism for creating a .NET Framework object, the in the namespace contains methods to create local or remote objects. In particular, the method or the method might be useful. + > [!IMPORTANT] -> The `CreateObject` function requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - The following example uses the `CreateObject` function to create a Microsoft Excel worksheet and saves the worksheet to a file. To use this example, Excel must be installed on the computer where this program runs. Also, you must add a reference to the type library from the **COM** tab of the **Add Reference** dialog box on the **Project** menu. The name of the type library varies depending on the version of Excel installed on your computer. For example, the type library for Microsoft Excel 2002 is named **Microsoft Excel 10.0 Object Library**. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet1"::: - +> The `CreateObject` function requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + The following example uses the `CreateObject` function to create a Microsoft Excel worksheet and saves the worksheet to a file. To use this example, Excel must be installed on the computer where this program runs. Also, you must add a reference to the type library from the **COM** tab of the **Add Reference** dialog box on the **Project** menu. The name of the type library varies depending on the version of Excel installed on your computer. For example, the type library for Microsoft Excel 2002 is named **Microsoft Excel 10.0 Object Library**. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet1"::: + ]]> Server is unavailable @@ -691,22 +691,22 @@ End Sub Optional. expression containing the name of the key setting being deleted. Deletes a section or key setting from an application's entry in the Windows registry. The feature gives you greater productivity and performance in registry operations than the function. For more information, see . - User is not logged in. @@ -766,23 +766,23 @@ End Sub Returns the string associated with an operating-system environment variable. The string associated with an operating-system environment variable. - function returns the text assigned to the specified environment string - that is, the text following the equal sign (=) in the environment-string table for that environment variable. If the string in `Expression` cannot be found in the environment-string table, a zero-length string ("") is returned. - - If `Expression` contains an integer, the string occupying that numeric position in the environment-string table is returned. In this case, returns all of the text, including the name of the environment variable. If there is no environment string in the specified position, returns a zero-length string. - + function returns the text assigned to the specified environment string - that is, the text following the equal sign (=) in the environment-string table for that environment variable. If the string in `Expression` cannot be found in the environment-string table, a zero-length string ("") is returned. + + If `Expression` contains an integer, the string occupying that numeric position in the environment-string table is returned. In this case, returns all of the text, including the name of the environment variable. If there is no environment string in the specified position, returns a zero-length string. + > [!IMPORTANT] -> The function requires environment permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - This example uses the function to supply the entry number and length of the `PATH` statement from the environment-string table. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet28"::: - +> The function requires environment permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + This example uses the function to supply the entry number and length of the `PATH` statement from the environment-string table. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet28"::: + ]]> @@ -834,23 +834,23 @@ End Sub Returns the string associated with an operating-system environment variable. The string associated with an operating-system environment variable. - function returns the text assigned to the specified environment string - that is, the text following the equal sign (=) in the environment-string table for that environment variable. If the string in `Expression` cannot be found in the environment-string table, a zero-length string ("") is returned. - - If `Expression` contains an integer, the string occupying that numeric position in the environment-string table is returned. In this case, returns all of the text, including the name of the environment variable. If there is no environment string in the specified position, returns a zero-length string. - + function returns the text assigned to the specified environment string - that is, the text following the equal sign (=) in the environment-string table for that environment variable. If the string in `Expression` cannot be found in the environment-string table, a zero-length string ("") is returned. + + If `Expression` contains an integer, the string occupying that numeric position in the environment-string table is returned. In this case, returns all of the text, including the name of the environment variable. If there is no environment string in the specified position, returns a zero-length string. + > [!IMPORTANT] -> The function requires environment permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - This example uses the function to supply the entry number and length of the `PATH` statement from the environment-string table. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet28"::: - +> The function requires environment permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + This example uses the function to supply the entry number and length of the `PATH` statement from the environment-string table. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet28"::: + ]]> @@ -907,26 +907,26 @@ End Sub Required. expression containing the name of the application or project whose key settings are requested. Required. expression containing the name of the section whose key settings are requested. returns an object that contains a two-dimensional array of strings. The strings contain all the key settings in the specified section, plus their corresponding values. Returns a list of key settings and their respective values (originally created with ) from an application's entry in the Windows registry. Using the feature gives you greater productivity and performance in registry operations than . For more information, see . - A list of key settings and their respective values (originally created with ) from an application's entry in the Windows registry. - + A list of key settings and their respective values (originally created with ) from an application's entry in the Windows registry. + Using the feature gives you greater productivity and performance in registry operations than . For more information, see . - User is not logged in. @@ -984,93 +984,93 @@ End Sub Optional. . The full path and name of the file containing the object to retrieve. If is omitted, is required. - Required if is not supplied. . A string representing the class of the object. The argument has the following syntax and parts: - - appname.objecttype - - [1|1] Parameter - - [1|2] Description - - [2|1] appname - - [2|2] Required. . The name of the application providing the object. - - [3|1] objecttype - + Required if is not supplied. . A string representing the class of the object. The argument has the following syntax and parts: + + appname.objecttype + + [1|1] Parameter + + [1|2] Description + + [2|1] appname + + [2|2] Required. . The name of the application providing the object. + + [3|1] objecttype + [3|2] Required. . The type or class of object to create. Returns a reference to an object provided by a COM component. A reference to an object provided by a COM component. - [!NOTE] -> Use the `GetObject` function when there is a current instance of the object or if you want to create the object with a file loaded. If there is no current instance, and you do not want the object started with a file loaded, use the function. -> -> If an object has registered itself as an ActiveX single-instance object, only one instance of the object is created, no matter how many times `CreateObject` is called. With a single-instance object, `GetObject` always returns the same instance when called with the zero-length string (`""`) syntax, and it causes an error if the `PathName` argument is omitted. You cannot use `GetObject` to obtain a reference to a class created with Visual Basic. - +> Use the `GetObject` function when there is a current instance of the object or if you want to create the object with a file loaded. If there is no current instance, and you do not want the object started with a file loaded, use the function. +> +> If an object has registered itself as an ActiveX single-instance object, only one instance of the object is created, no matter how many times `CreateObject` is called. With a single-instance object, `GetObject` always returns the same instance when called with the zero-length string (`""`) syntax, and it causes an error if the `PathName` argument is omitted. You cannot use `GetObject` to obtain a reference to a class created with Visual Basic. + > [!IMPORTANT] -> The `GetObject` function requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - - - -## Examples - The following example uses the `GetObject` function to obtain a reference to a specific Microsoft Excel worksheet (`excelObj`). It uses the worksheet's `Application` property to make Excel visible, to close it, and to perform other actions. Using two API calls, the `detectExcel` procedure looks for Excel, and if it is running, enters it in the Running Object table. The first call to `GetObject` causes an error if Excel is not already running, which in this example causes the `excelWasNotRunning` flag to be set to `True`. The second call to `GetObject` specifies a file to open. If Excel is not already running, the second call starts it and returns a reference to the worksheet represented by the specified file, `test.xls`. The file must exist in the specified location; otherwise, Visual Basic throws a . Next, the example code makes both Excel and the window containing the specified worksheet visible. - - This example requires `Option Strict Off` because it uses late binding, where objects are assigned to variables of type `Object`. You can specify `Option Strict On` and declare objects of specific object types if you add a reference to the Excel type library from the **COM** tab of the **Add Reference** dialog box of the **Project** menu in Visual Studio. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet2"::: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet4"::: - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet5"::: - - When you call the `getExcel` function, a check is made to see if Excel is already running. If it is not, then an instance is created. - +> The `GetObject` function requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). + + + +## Examples + The following example uses the `GetObject` function to obtain a reference to a specific Microsoft Excel worksheet (`excelObj`). It uses the worksheet's `Application` property to make Excel visible, to close it, and to perform other actions. Using two API calls, the `detectExcel` procedure looks for Excel, and if it is running, enters it in the Running Object table. The first call to `GetObject` causes an error if Excel is not already running, which in this example causes the `excelWasNotRunning` flag to be set to `True`. The second call to `GetObject` specifies a file to open. If Excel is not already running, the second call starts it and returns a reference to the worksheet represented by the specified file, `test.xls`. The file must exist in the specified location; otherwise, Visual Basic throws a . Next, the example code makes both Excel and the window containing the specified worksheet visible. + + This example requires `Option Strict Off` because it uses late binding, where objects are assigned to variables of type `Object`. You can specify `Option Strict On` and declare objects of specific object types if you add a reference to the Excel type library from the **COM** tab of the **Add Reference** dialog box of the **Project** menu in Visual Studio. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet2"::: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet4"::: + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrExcelObject/VB/Class1.vb" id="Snippet5"::: + + When you call the `getExcel` function, a check is made to see if Excel is already running. If it is not, then an instance is created. + > [!IMPORTANT] -> For simplicity, the preceding example assumes that any window called `XLMAIN` belongs to an instance of Microsoft Excel. If another object, possibly launched by illicit tampering, created a window with that name, it would receive all the messages you intended for Excel. In an application to be used for production, you should include some more rigorous testing to verify that `XLMAIN` really belongs to Excel. - +> For simplicity, the preceding example assumes that any window called `XLMAIN` belongs to an instance of Microsoft Excel. If another object, possibly launched by illicit tampering, created a window with that name, it would receive all the messages you intended for Excel. In an application to be used for production, you should include some more rigorous testing to verify that `XLMAIN` really belongs to Excel. + ]]> No object of the specified class type exists. @@ -1140,28 +1140,28 @@ drawObj.SaveAs("C:\Drawings\sample.drw") Required. expression containing the name of the key setting to return. Optional. Expression containing the value to return if no value is set in the setting. If omitted, is assumed to be a zero-length string (""). Returns a key setting value from an application's entry in the Windows registry. The feature gives you greater productivity and performance in registry operations than . For more information, see . - A key setting value from an application's entry in the Windows registry. - + A key setting value from an application's entry in the Windows registry. + The feature gives you greater productivity and performance in registry operations than . - . - - - -## Examples - This example first uses the `SaveSetting` function to make entries in the Windows registry for the application specified as `AppName`, and then uses the `GetSetting` function to display one of the settings. Because the `Default` argument is specified, some value is guaranteed to be returned. Notice that `Section` names cannot be retrieved with `GetSetting`. Finally, the `DeleteSetting` function removes all the application's entries. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet61"::: - + . + + + +## Examples + This example first uses the `SaveSetting` function to make entries in the Windows registry for the application specified as `AppName`, and then uses the `GetSetting` function to display one of the settings. Because the `Default` argument is specified, some value is guaranteed to be returned. Notice that `Section` names cannot be retrieved with `GetSetting`. Finally, the `DeleteSetting` function removes all the application's entries. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet61"::: + ]]> One or more arguments are not expressions, or user is not logged in. @@ -1215,20 +1215,20 @@ drawObj.SaveAs("C:\Drawings\sample.drw") Returns one of two objects, depending on the evaluation of an expression. Returns one of two objects, depending on the evaluation of an expression. - @@ -1281,23 +1281,23 @@ drawObj.SaveAs("C:\Drawings\sample.drw") Displays a prompt in a dialog box, waits for the user to input text or click a button, and then returns a string containing the contents of the text box. Displays a prompt in a dialog box, waits for the user to input text or click a button, and then returns a string containing the contents of the text box. - [!NOTE] -> The `InputBox` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see [Requesting Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/yd267cce(v%3dvs.100)) and . - - - -## Examples - This example shows various ways to use the `InputBox` function to prompt the user to enter a value. If the x and y positions are omitted, the dialog box is automatically centered for the respective axes. The variable `MyValue` contains the value entered by the user if the user clicks OK or presses the ENTER key. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet67"::: - +> The `InputBox` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see [Requesting Permissions](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/yd267cce(v%3dvs.100)) and . + + + +## Examples + This example shows various ways to use the `InputBox` function to prompt the user to enter a value. If the x and y positions are omitted, the dialog box is automatically centered for the respective axes. The variable `MyValue` contains the value entered by the user if the user clicks OK or presses the ENTER key. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet67"::: + ]]> @@ -1353,49 +1353,49 @@ drawObj.SaveAs("C:\Drawings\sample.drw") One of the following values: ConstantValue1234567 - event for the form. - + event for the form. + > [!NOTE] -> The `MsgBox` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . - - The `MsgBoxStyle` enumeration values are listed in the following table. - -|Member|Value|Description| -|-|-|-| -|Member|Value|Description| -|`OKOnly`|0|Displays OK button only.| -|`OKCancel`|1|Displays OK and Cancel buttons.| -|`AbortRetryIgnore`|2|Displays Abort, Retry, and Ignore buttons.| -|`YesNoCancel`|3|Displays Yes, No, and Cancel buttons.| -|`YesNo`|4|Displays Yes and No buttons.| -|`RetryCancel`|5|Displays Retry and Cancel buttons.| -|`Critical`|16|Displays Critical Message icon.| -|`Question`|32|Displays Warning Query icon.| -|`Exclamation`|48|Displays Warning Message icon.| -|`Information`|64|Displays Information Message icon.| -|`DefaultButton1`|0|First button is default.| -|`DefaultButton2`|256|Second button is default.| -|`DefaultButton3`|512|Third button is default.| -|`ApplicationModal`|0|Application is modal. The user must respond to the message box before continuing work in the current application.| -|`SystemModal`|4096|System is modal. All applications are suspended until the user responds to the message box.| -|`MsgBoxSetForeground`|65536|Specifies the message box window as the foreground window.| -|`MsgBoxRight`|524288|Text is right-aligned.| -|`MsgBoxRtlReading`|1048576|Specifies text should appear as right-to-left reading on Hebrew and Arabic systems.| - +> The `MsgBox` function requires `UIPermission` at the level, which may affect its execution in partial-trust situations. For more information, see . + + The `MsgBoxStyle` enumeration values are listed in the following table. + +|Member|Value|Description| +|-|-|-| +|Member|Value|Description| +|`OKOnly`|0|Displays OK button only.| +|`OKCancel`|1|Displays OK and Cancel buttons.| +|`AbortRetryIgnore`|2|Displays Abort, Retry, and Ignore buttons.| +|`YesNoCancel`|3|Displays Yes, No, and Cancel buttons.| +|`YesNo`|4|Displays Yes and No buttons.| +|`RetryCancel`|5|Displays Retry and Cancel buttons.| +|`Critical`|16|Displays Critical Message icon.| +|`Question`|32|Displays Warning Query icon.| +|`Exclamation`|48|Displays Warning Message icon.| +|`Information`|64|Displays Information Message icon.| +|`DefaultButton1`|0|First button is default.| +|`DefaultButton2`|256|Second button is default.| +|`DefaultButton3`|512|Third button is default.| +|`ApplicationModal`|0|Application is modal. The user must respond to the message box before continuing work in the current application.| +|`SystemModal`|4096|System is modal. All applications are suspended until the user responds to the message box.| +|`MsgBoxSetForeground`|65536|Specifies the message box window as the foreground window.| +|`MsgBoxRight`|524288|Text is right-aligned.| +|`MsgBoxRtlReading`|1048576|Specifies text should appear as right-to-left reading on Hebrew and Arabic systems.| + The first group of values (0-5) describes the number and type of buttons displayed in the dialog box. The second group (16, 32, 48, 64) describes the icon style. The third group (0, 256, 512) determines which button is the default. The fourth group (0, 4096) determines the modality of the message box, and the fifth group specifies whether or not the message box window is the foreground window, along with the alignment and direction of the text. When adding numbers to create a final value for the `Buttons` argument, use only one number from each group. - -## Examples - This example uses the `MsgBox` function to display a critical-error message in a dialog box with Yes and No buttons. The No button is specified as the default response. This is done by combining the `MsgBox` constant values into one numeric expression. In this case, adding 4 (the Yes/No button combination) and 16 (the **Critical Message** window) and 256 (the second button as default button) gives a total of 276. The value returned by the `MsgBox` function depends on the button chosen by the user: Yes returns a value of 6; No returns a value of 7. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet20"::: - + +## Examples + This example uses the `MsgBox` function to display a critical-error message in a dialog box with Yes and No buttons. The No button is specified as the default response. This is done by combining the `MsgBox` constant values into one numeric expression. In this case, adding 4 (the Yes/No button combination) and 16 (the **Critical Message** window) and 256 (the second button as default button) gives a total of 276. The value returned by the `MsgBox` function depends on the button chosen by the user: Yes returns a value of 6; No returns a value of 7. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet20"::: + ]]> @@ -1447,32 +1447,32 @@ drawObj.SaveAs("C:\Drawings\sample.drw") Returns a string representing the calculated range that contains a number. A string representing the calculated range that contains a number. - @@ -1525,24 +1525,24 @@ drawObj.SaveAs("C:\Drawings\sample.drw") Required. Expression containing the value to which is being set. Saves or creates an application entry in the Windows registry. The feature gives you greater productivity and performance in registry operations than . For more information, see . - . - -## Examples - The following example first uses the `SaveSetting` function to make entries in the Windows registry for the `MyApp` application, and then uses the `DeleteSetting` function to remove them. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet56"::: - + +## Examples + The following example first uses the `SaveSetting` function to make entries in the Windows registry for the `MyApp` application, and then uses the `DeleteSetting` function to remove them. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrCatRef/VB/Class1.vb" id="Snippet56"::: + ]]> Key registry could not be created, or user is not logged in. @@ -1597,7 +1597,7 @@ drawObj.SaveAs("C:\Drawings\sample.drw") - Required. . Name of the program to execute, together with any required arguments and command-line switches. can also include the drive and the directory path or folder. + Required. . Name of the program to execute, together with any required arguments and command-line switches. can also include the drive and the directory path or folder. If you do not know the path to the program, you can use the to locate it. For example, you can call My.Computer.FileSystem.GetFiles("C:\", True, "testFile.txt"), which returns the full path of every file named testFile.txt anywhere on drive C:\\. Required. . Name of the program to execute, together with any required arguments and command-line switches. can also include the drive and the directory path or folder. If you do not know the path to the program, you can use the to locate it. For example, you can call My.Computer.FileSystem.GetFiles("C:\", True, "testFile.txt"), which returns the full path of every file named testFile.txt anywhere on drive C:\\. @@ -1607,62 +1607,62 @@ drawObj.SaveAs("C:\Drawings\sample.drw") Runs an executable program and returns an integer containing the program's process ID if it is still running. An integer containing the program's process ID if it is still running. 0 if the program already finished executing. - error occurs. This can happen, for example, when you attempt to run a 16-bit program, such as `command.com`, from an application using . For a workaround, you can run a 32-bit program that calls the desired 16-bit program. In the case of `command.com`, you can run `cmd.exe` as an alternative. - -## Waiting for Completion - By default, the `Shell` function runs the program asynchronously. This means that a program started with the `Shell` function might not finish executing before the statements following the `Shell` function are executed. If you want to wait for the program to finish before you continue, set `Wait` to `True`. - -## Determining the Exit Code - A process can return an *exit code* when it terminates. However, you cannot use `Shell` to retrieve this exit code, because `Shell` returns zero if it waits for termination, and also because the process runs in a different object from `Shell`. - - To retrieve the exit code from a process, you must write your own code to initiate the process and wait for termination. The following example shows how to initiate a process, wait for it to terminate, and retrieve its exit code. - -```vb -Dim procID As Integer -Dim newProc As Diagnostics.Process -newProc = Diagnostics.Process.Start("C:\WINDOWS\NOTEPAD.EXE") -procID = newProc.Id -newProc.WaitForExit() -Dim procEC As Integer = -1 -If newProc.HasExited Then - procEC = newProc.ExitCode -End If -MsgBox("Process with ID " & CStr(ProcID) & _ - " terminated with exit code " & CStr(procEC)) -``` - -## Protecting the File Specification - You should always enclose the entire path and file specification in quotation marks, as the following example shows. - -```vb -ID = Shell("""C:\Program Files\display.exe"" -a -q", , True, 100000) -``` - - Each pair of adjacent double quotation marks (`" "`) within the string literal is interpreted as one double quotation character in the string. Therefore, the preceding example presents the following string to the `Shell` function: - -```console -"C:\Program Files\display.exe" -a -q -``` - - If you did not have the path enclosed in quotation marks, Windows would look for a file called `Program.exe` in the C:\ directory, instead of `display.exe` in the C:\Program Files directory. - + error occurs. This can happen, for example, when you attempt to run a 16-bit program, such as `command.com`, from an application using . For a workaround, you can run a 32-bit program that calls the desired 16-bit program. In the case of `command.com`, you can run `cmd.exe` as an alternative. + +## Waiting for Completion + By default, the `Shell` function runs the program asynchronously. This means that a program started with the `Shell` function might not finish executing before the statements following the `Shell` function are executed. If you want to wait for the program to finish before you continue, set `Wait` to `True`. + +## Determining the Exit Code + A process can return an *exit code* when it terminates. However, you cannot use `Shell` to retrieve this exit code, because `Shell` returns zero if it waits for termination, and also because the process runs in a different object from `Shell`. + + To retrieve the exit code from a process, you must write your own code to initiate the process and wait for termination. The following example shows how to initiate a process, wait for it to terminate, and retrieve its exit code. + +```vb +Dim procID As Integer +Dim newProc As Diagnostics.Process +newProc = Diagnostics.Process.Start("C:\WINDOWS\NOTEPAD.EXE") +procID = newProc.Id +newProc.WaitForExit() +Dim procEC As Integer = -1 +If newProc.HasExited Then + procEC = newProc.ExitCode +End If +MsgBox("Process with ID " & CStr(ProcID) & _ + " terminated with exit code " & CStr(procEC)) +``` + +## Protecting the File Specification + You should always enclose the entire path and file specification in quotation marks, as the following example shows. + +```vb +ID = Shell("""C:\Program Files\display.exe"" -a -q", , True, 100000) +``` + + Each pair of adjacent double quotation marks (`" "`) within the string literal is interpreted as one double quotation character in the string. Therefore, the preceding example presents the following string to the `Shell` function: + +```console +"C:\Program Files\display.exe" -a -q +``` + + If you did not have the path enclosed in quotation marks, Windows would look for a file called `Program.exe` in the C:\ directory, instead of `display.exe` in the C:\Program Files directory. + > [!IMPORTANT] -> If you do not enclose the path and file specification in quotation marks, there is a security risk if the file name or a path node contains spaces. In the preceding example, the path node `\Program Files` includes a space. If the specification were not inside quotation marks and a program named `Program.exe` had been installed in C:\\, for example by illicit tampering, Windows would execute it instead of `display.exe`. - +> If you do not enclose the path and file specification in quotation marks, there is a security risk if the file name or a path node contains spaces. In the preceding example, the path node `\Program Files` includes a space. If the specification were not inside quotation marks and a program named `Program.exe` had been installed in C:\\, for example by illicit tampering, Windows would execute it instead of `display.exe`. + > [!IMPORTANT] > The `Shell` function requires unmanaged code permission, which might affect its execution in partial-trust situations. For more information, see and [Code Access Permissions](/previous-versions/dotnet/netframework-4.0/h846e9b3(v=vs.100)). - -## Examples - The following example uses the `Shell` function to run an application specified by the user. Specifying as the second argument opens the application in normal size and gives it the focus. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet47"::: - + +## Examples + The following example uses the `Shell` function to run an application specified by the user. Specifying as the second argument opens the application in normal size and gives it the focus. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet47"::: + ]]> @@ -1722,23 +1722,23 @@ ID = Shell("""C:\Program Files\display.exe"" -a -q", , True, 100000) Evaluates a list of expressions and returns an value corresponding to the first expression in the list that is . Evaluates a list of expressions and returns an value corresponding to the first expression in the list that is . - [!NOTE] > The expressions in the argument list can include function calls. As part of preparing the argument list for the call to `Switch`, the Visual Basic compiler calls every function in every expression. This means that you cannot rely on a particular function not being called if an expression earlier in the argument list is `True`. - -## Examples - The following example uses the `Switch` function to return the name of a language that matches the name of a city. It requires that `Option Strict` be `Off`. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet48"::: - - Because the namespace also contains a class called , a call to the `Switch` function must be qualified with the namespace. - + +## Examples + The following example uses the `Switch` function to return the name of a language that matches the name of a city. It requires that `Option Strict` be `Off`. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet48"::: + + Because the namespace also contains a class called , a call to the `Switch` function must be qualified with the namespace. + ]]> Number of arguments is odd. diff --git a/xml/Microsoft.VisualBasic/Strings.xml b/xml/Microsoft.VisualBasic/Strings.xml index 14d4e6b8dda..ea5a119795b 100644 --- a/xml/Microsoft.VisualBasic/Strings.xml +++ b/xml/Microsoft.VisualBasic/Strings.xml @@ -40,18 +40,18 @@ The module contains procedures used to perform string operations. - String Manipulation Summary @@ -105,23 +105,23 @@ Returns an integer value representing the character code corresponding to a character. The character code corresponding to a character. - [!NOTE] -> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. - - - -## Examples - The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: - +> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. + + + +## Examples + The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: + ]]> @@ -170,23 +170,23 @@ Returns an integer value representing the character code corresponding to a character. The character code corresponding to a character. - [!NOTE] -> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. - - - -## Examples - The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: - +> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. + + + +## Examples + The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: + ]]> @@ -244,23 +244,23 @@ Returns an integer value representing the character code corresponding to a character. The character code corresponding to a character. - [!NOTE] -> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. - - - -## Examples - The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: - +> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. + + + +## Examples + The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: + ]]> @@ -309,23 +309,23 @@ Returns an integer value representing the character code corresponding to a character. The character code corresponding to a character. - [!NOTE] -> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. - - - -## Examples - The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: - +> The `AscB` function of earlier versions of Visual Basic returns a code for a byte, rather than a character. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `AscB` is no longer supported. + + + +## Examples + The following example uses the `Asc` function to return `Integer` character codes corresponding to the first letter in each string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrFunctions/VB/Class1.vb" id="Snippet19"::: + ]]> @@ -374,29 +374,29 @@ Returns the character associated with the specified character code. The character associated with the specified character code. - class in the namespace to determine if the current thread is using a single-byte character set (SBCS) or a double-byte character set (DBCS). It then takes `CharCode` as a code point in the appropriate set. The range can be 0 through 255 for SBCS characters and -32768 through 65535 for DBCS characters. - - The returned value depends on the code page for the current thread, which is contained in the property of the class in the namespace. You can obtain by specifying `System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage`. - - `ChrW` takes `CharCode` as a Unicode code point. The range is independent of the culture and code page settings for the current thread. Values from -32768 through -1 are treated the same as values in the range +32768 through +65535. - - Numbers from 0 through 31 are the same as standard nonprintable ASCII codes. For example, `Chr(10)` returns a line feed character. - + class in the namespace to determine if the current thread is using a single-byte character set (SBCS) or a double-byte character set (DBCS). It then takes `CharCode` as a code point in the appropriate set. The range can be 0 through 255 for SBCS characters and -32768 through 65535 for DBCS characters. + + The returned value depends on the code page for the current thread, which is contained in the property of the class in the namespace. You can obtain by specifying `System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage`. + + `ChrW` takes `CharCode` as a Unicode code point. The range is independent of the culture and code page settings for the current thread. Values from -32768 through -1 are treated the same as values in the range +32768 through +65535. + + Numbers from 0 through 31 are the same as standard nonprintable ASCII codes. For example, `Chr(10)` returns a line feed character. + > [!NOTE] -> The `ChrB` function in earlier versions of Visual Basic returns a single byte. It is used primarily for converting strings in double-byte character set (DBCS) applications. All strings in Visual Basic and the .NET Framework are in Unicode, and `ChrB` is no longer supported. - - - -## Examples - The following example uses the `Chr` function to return the character associated with the specified character code. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet7"::: - +> The `ChrB` function in earlier versions of Visual Basic returns a single byte. It is used primarily for converting strings in double-byte character set (DBCS) applications. All strings in Visual Basic and the .NET Framework are in Unicode, and `ChrB` is no longer supported. + + + +## Examples + The following example uses the `Chr` function to return the character associated with the specified character code. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet7"::: + ]]> @@ -447,29 +447,29 @@ Returns the character associated with the specified character code. The character associated with the specified character code. - class in the namespace to determine if the current thread is using a single-byte character set (SBCS) or a double-byte character set (DBCS). It then takes `CharCode` as a code point in the appropriate set. The range can be 0 through 255 for SBCS characters and -32768 through 65535 for DBCS characters. - - The returned value depends on the code page for the current thread, which is contained in the property of the class in the namespace. You can obtain by specifying `System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage`. - - `ChrW` takes `CharCode` as a Unicode code point. The range is independent of the culture and code page settings for the current thread. Values from -32768 through -1 are treated the same as values in the range +32768 through +65535. - - Numbers from 0 through 31 are the same as standard nonprintable ASCII codes. For example, `Chr(10)` returns a line feed character. - + class in the namespace to determine if the current thread is using a single-byte character set (SBCS) or a double-byte character set (DBCS). It then takes `CharCode` as a code point in the appropriate set. The range can be 0 through 255 for SBCS characters and -32768 through 65535 for DBCS characters. + + The returned value depends on the code page for the current thread, which is contained in the property of the class in the namespace. You can obtain by specifying `System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage`. + + `ChrW` takes `CharCode` as a Unicode code point. The range is independent of the culture and code page settings for the current thread. Values from -32768 through -1 are treated the same as values in the range +32768 through +65535. + + Numbers from 0 through 31 are the same as standard nonprintable ASCII codes. For example, `Chr(10)` returns a line feed character. + > [!NOTE] -> The `ChrB` function in earlier versions of Visual Basic returns a single byte. It is used primarily for converting strings in double-byte character set (DBCS) applications. All strings in Visual Basic and the .NET Framework are in Unicode, and `ChrB` is no longer supported. - - - -## Examples - The following example uses the `Chr` function to return the character associated with the specified character code. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet7"::: - +> The `ChrB` function in earlier versions of Visual Basic returns a single byte. It is used primarily for converting strings in double-byte character set (DBCS) applications. All strings in Visual Basic and the .NET Framework are in Unicode, and `ChrB` is no longer supported. + + + +## Examples + The following example uses the `Chr` function to return the character associated with the specified character code. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet7"::: + ]]> @@ -555,27 +555,27 @@ Returns a zero-based array containing a subset of a array based on specified filter criteria. A zero-based array containing a subset of a array based on specified filter criteria. - @@ -648,27 +648,27 @@ Returns a zero-based array containing a subset of a array based on specified filter criteria. A zero-based array containing a subset of a array based on specified filter criteria. - @@ -723,175 +723,175 @@ Returns a string formatted according to instructions contained in a format expression. A string formatted according to instructions contained in a format expression. - method also provides similar functionality. - - If you are formatting a nonlocalized numeric string, you should use a user-defined numeric format to ensure that you get the look you want. - - If you try to format a number without specifying `Style`, the `Format` function provides functionality similar to the `Str` function, although it is internationally aware. However, positive numbers formatted as strings using the `Format` function don't include a leading space reserved for the sign of the value; those converted using the `Str` function retain the leading space. - -## Different Formats for Different Numeric Values - A user-defined format expression for numbers can have from one to three sections separated by semicolons. If the `Style` argument of the `Format` function contains one of the predefined numeric formats, only one section is allowed. - -|If you use|This is the result| -|-|-| -|One section only|The format expression applies to all values.| -|Two sections|The first section applies to positive values and zeros; the second applies to negative values.| -|Three sections|The first section applies to positive values, the second applies to negative values, and the third applies to zeros.| - - The following example has two sections: the first defines the format for positive values and zeros; the second section defines the format for negative values. Since the `Style` argument of the `Format` function takes a string, it is enclosed by quotation marks. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet18"::: - - If you include semicolons with nothing between them, the missing section is printed using the format of the positive value. For example, the following format displays positive and negative values using the format in the first section and displays `Zero` if the value is zero. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet19"::: - -## Predefined Numeric Formats - The following table identifies the predefined numeric format names. These may be used by name as the `Style` argument for the `Format` function: - -|Format name|Description| -|-|-| -|`General Number`, `G`, or `g`|Displays number with no thousand separator.

For example, `Format(&H3FA, "g")` returns `1018`.| -|`Currency`, `C`, or `c`|Displays number with thousand separator, if appropriate; displays two digits to the right of the decimal separator. Output is based on system locale settings.

For example, `Format(1234567, "c")` returns `$1,234,567.00`.| -|`Fixed`, `F`, or `f`|Displays at least one digit to the left and two digits to the right of the decimal separator.

For example, `Format(1234567, "f")` returns `1234567.00`.| -|`Standard`, `N`, or `n`|Displays number with thousand separator, at least one digit to the left and two digits to the right of the decimal separator.

For example, `Format(1234567, "n")` returns `1,234,567.00`.| -|`Percent`|Displays number multiplied by 100 with a percent sign (%) appended immediately to the right; always displays two digits to the right of the decimal separator.

For example, `Format(0.4744, "Percent")` returns `47.44%`.| -|`P`, or `p`|Displays number with thousandths separator multiplied by 100 with a percent sign (%) appended to the right and separated by a single space; always displays two digits to the right of the decimal separator.

For example, `Format(0.80345, "p")` returns `80.35 %`.| -|`Scientific`|Uses standard scientific notation, providing two significant digits.

For example, `Format(1234567, "Scientific")` returns `1.23E+06`.| -|`E`, or `e`|Uses standard scientific notation, providing six significant digits.

For example, `Format(1234567, "e")` returns `1.234567e+006`.| -|`D`, or `d`|Displays number as a string that contains the value of the number in Decimal (base 10) format. This option is supported for integral types (`Byte`, `Short`, `Integer`, `Long`) only.

For example, `Format(&H7F, "d")` returns `127`.| -|`X`, or `x`|Displays number as a string that contains the value of the number in Hexadecimal (base 16) format. This option is supported for integral types (`Byte`, `Short`, `Integer`, `Long`) only.

For example, `Format(127, "x")` returns `7f`.| -|`Yes/No`|Displays `No` if number is 0; otherwise, displays `Yes`.

For example, `Format(0, "Yes/No")` returns `No`.| -|`True/False`|Displays `False` if number is 0; otherwise, displays `True`.

For example, `Format(1, "True/False")` returns `True`.| -|`On/Off`|Displays `Off` if number is 0; otherwise, displays `On`.

For example, `Format(1, "On/Off")` returns `On`.| - -### Smart Device Developer Notes - The `Yes/No`, `True/False`, and `On/Off` formats are not supported. - -## User-Defined Numeric Formats - The following table identifies characters you can use to create user-defined number formats. These may be used to build the `Style` argument for the `Format` function: - -|Character|Description| -|-|-| -|None|Displays the number with no formatting.| -|(`0`)|Digit placeholder. Displays a digit or a zero. If the expression has a digit in the position where the zero appears in the format string, display it; otherwise, displays a zero in that position.

If the number has fewer digits than there are zeros (on either side of the decimal) in the format expression, displays leading or trailing zeros. If the number has more digits to the right of the decimal separator than there are zeros to the right of the decimal separator in the format expression, rounds the number to as many decimal places as there are zeros. If the number has more digits to the left of the decimal separator than there are zeros to the left of the decimal separator in the format expression, displays the extra digits without modification.| -|(`#`)|Digit placeholder. Displays a digit or nothing. If the expression has a digit in the position where the `#` character appears in the format string, displays it; otherwise, displays nothing in that position.

This symbol works like the `0` digit placeholder, except that leading and trailing zeros aren't displayed if the number has fewer digits than there are `#` characters on either side of the decimal separator in the format expression.| -|(`.`)|Decimal placeholder. The decimal placeholder determines how many digits are displayed to the left and right of the decimal separator. If the format expression contains only `#` characters to the left of this symbol; numbers smaller than 1 begin with a decimal separator. To display a leading zero displayed with fractional numbers, use zero as the first digit placeholder to the left of the decimal separator. In some locales, a comma is used as the decimal separator. The actual character used as a decimal placeholder in the formatted output depends on the number format recognized by your system. Thus, you should use the period as the decimal placeholder in your formats even if you are in a locale that uses a comma as a decimal placeholder. The formatted string will appear in the format correct for the locale.| -|(`%`)|Percent placeholder. Multiplies the expression by 100. The percent character (`%`) is inserted in the position where it appears in the format string.| -|(`,`)|Thousand separator. The thousand separator separates thousands from hundreds within a number that has four or more places to the left of the decimal separator. Standard use of the thousand separator is specified if the format contains a thousand separator surrounded by digit placeholders (`0` or `#`).

A thousand separator immediately to the left of the decimal separator (whether or not a decimal is specified) or as the rightmost character in the string means "scale the number by dividing it by 1,000, rounding as needed." Numbers smaller than 1,000 but greater or equal to 500 are displayed as `1`, and numbers smaller than 500 are displayed as `0`. Two adjacent thousand separators in this position scale by a factor of 1 million, and an additional factor of 1,000 for each additional separator.

Multiple separators in any position other than immediately to the left of the decimal separator or the rightmost position in the string are treated simply as specifying the use of a thousand separator. In some locales, a period is used as a thousand separator. The actual character used as the thousand separator in the formatted output depends on the Number Format recognized by your system. Thus, you should use the comma as the thousand separator in your formats even if you are in a locale that uses a period as a thousand separator. The formatted string will appear in the format correct for the locale.

For example, consider the three following format strings:

- `"#,0."`, which uses the thousands separator to format the number 100 million as the string "100,000,000".
- `"#0,."`, which uses scaling by a factor of one thousand to format the number 100 million as the string "100000".
- `"#,0,."`, which uses the thousands separator and scaling by one thousand to format the number 100 million as the string "100,000".| -|(`:`)|Time separator. In some locales, other characters may be used to represent the time separator. The time separator separates hours, minutes, and seconds when time values are formatted. The actual character used as the time separator in formatted output is determined by your system settings.| -|(`/`)|Date separator. In some locales, other characters may be used to represent the date separator. The date separator separates the day, month, and year when date values are formatted. The actual character used as the date separator in formatted output is determined by your system settings.| -|(`E-``E+``e-``e+`)|Scientific format. If the format expression contains at least one digit placeholder (`0` or `#`) to the left of `E-`, `E+`, `e-`, or `e+`, the number is displayed in scientific format and `E` or `e` is inserted between the number and its exponent. The number of digit placeholders to the left determines the number of digits in the exponent. Use `E-` or `e-` to place a minus sign next to negative exponents. Use `E+` or `e+` to place a minus sign next to negative exponents and a plus sign next to positive exponents. You must also include digit placeholders to the right of this symbol to get correct formatting.| -|`-` `+` `$` ( )|Literal characters. These characters are displayed exactly as typed in the format string. To display a character other than one of those listed, precede it with a backslash (`\`) or enclose it in double quotation marks (" ").| -|(`\`)|Displays the next character in the format string. To display a character that has special meaning as a literal character, precede it with a backslash (`\`). The backslash itself isn't displayed. Using a backslash is the same as enclosing the next character in double quotation marks. To display a backslash, use two backslashes (`\\`).

Examples of characters that can't be displayed as literal characters are the date-formatting and time-formatting characters (`a`, `c`, `d`, `h`, `m`, `n`, `p`, `q`, `s`, `t`, `w`, `y`, `/`, and `:`), the numeric-formatting characters (`#`, `0`, `%`, `E`, `e`, comma, and period), and the string-formatting characters (`@`, `&`, `<`, `>`, and `!`).| -|(`"``ABC``"`)|Displays the string inside the double quotation marks (" "). To include a string in the style argument from within code, you must use `Chr(34)` to enclose the text (`34` is the character code for a quotation mark (")).| - -### Legacy Code Example - The following table contains some sample format expressions for numbers. (These examples all assume that your system's locale setting is English-U.S.) The first column contains the format strings for the `Style` argument of the `Format` function; the other columns contain the resulting output if the formatted data has the value given in the column headings. - -|Format (`Style`)|"5" formatted as|"-5" formatted as|"0.5" formatted as| -|-|-|-|-| -|`Zero-length string ("")`|`5`|`-5`|`0.5`| -|`0`|`5`|`-5`|`1`| -|`0.00`|`5.00`|`-5.00`|`0.50`| -|`#,##0`|`5`|`-5`|`1`| -|`$#,##0;($#,##0)`|`$5`|`($5)`|`$1`| -|`$#,##0.00;($#,##0.00)`|`$5.00`|`($5.00)`|`$0.50`| -|`0%`|`500%`|`-500%`|`50%`| -|`0.00%`|`500.00%`|`-500.00%`|`50.00%`| -|`0.00E+00`|`5.00E+00`|`-5.00E+00`|`5.00E-01`| -|`0.00E-00`|`5.00E00`|`-5.00E00`|`5.00E-01`| - -## Predefined Date/Time Formats - The following table identifies the predefined date and time format names. These may be used by name as the style argument for the `Format` function: - -|Format Name|Description| -|-|-| -|`General Date`, or `G`|Displays a date and/or time. For example, `3/12/2008 11:07:31 AM`. Date display is determined by your application's current culture value.| -|`Long Date`, `Medium Date`, or `D`|Displays a date according to your current culture's long date format. For example, `Wednesday, March 12, 2008`.| -|`Short Date`, or `d`|Displays a date using your current culture's short date format. For example, `3/12/2008`.

The `d` character displays the day in a user-defined date format.| -|`Long Time`, `Medium Time`, or `T`|Displays a time using your current culture's long time format; typically includes hours, minutes, seconds. For example, `11:07:31 AM`.| -|`Short Time` or `t`|Displays a time using your current culture's short time format. For example, `11:07 AM`.

The `t` character displays `AM` or `PM` values for locales that use a 12-hour clock in a user-defined time format.| -|`f`|Displays the long date and short time according to your current culture's format. For example, `Wednesday, March 12, 2008 11:07 AM`.| -|`F`|Displays the long date and long time according to your current culture's format. For example, `Wednesday, March 12, 2008 11:07:31 AM`.| -|`g`|Displays the short date and short time according to your current culture's format. For example, `3/12/2008 11:07 AM`.| -|`M`, `m`|Displays the month and the day of a date. For example, `March 12`.

The `M` character displays the month in a user-defined date format. The `m` character displays the minutes in a user-defined time format.| -|`R`, `r`|Formats the date according to the property. For example, `Wed, 12 Mar 2008 11:07:31 GMT`. The formatted date does not adjust the value of the date and time. You must adjust the Date/Time value to GMT before calling the `Format` function.| -|`s`|Formats the date and time as a sortable index. For example, `2008-03-12T11:07:31`.

The `s` character displays the seconds in a user-defined time format.| -|`u`|Formats the date and time as a GMT sortable index. For example, `2008-03-12 11:07:31Z`.| -|`U`|Formats the date and time with the long date and long time as GMT. For example, `Wednesday, March 12, 2008 6:07:31 PM`.| -|`Y`, `y`|Formats the date as the year and month. For example, `March, 2008`.

The `Y` and `y` characters display the year in a user-defined date format.| - - For more information about the application's current culture information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). - -## User-Defined Date/Time Formats - The following table shows characters you can use to create user-defined date/time formats. Unlike in earlier versions of Visual Basic, these format characters are case-sensitive. - -|Character|Description| -|-|-| -|(`:`)|Time separator. In some locales, other characters may be used to represent the time separator. The time separator separates hours, minutes, and seconds when time values are formatted. The actual character that is used as the time separator in formatted output is determined by your application's current culture value.| -|(`/`)|Date separator. In some locales, other characters may be used to represent the date separator. The date separator separates the day, month, and year when date values are formatted. The actual character that is used as the date separator in formatted output is determined by your application's current culture.| -|(`%`)|Used to indicate that the following character should be read as a single-letter format without regard to any trailing letters. Also used to indicate that a single-letter format is read as a user-defined format. See what follows for additional details.| -|`d`|Displays the day as a number without a leading zero (for example, `1`). Use `%d` if this is the only character in your user-defined numeric format.| -|`dd`|Displays the day as a number with a leading zero (for example, `01`).| -|`ddd`|Displays the day as an abbreviation (for example, `Sun`).| -|`dddd`|Displays the day as a full name (for example, `Sunday`).| -|`M`|Displays the month as a number without a leading zero (for example, January is represented as `1`). Use `%M` if this is the only character in your user-defined numeric format.| -|`MM`|Displays the month as a number with a leading zero (for example, `01/12/01`).| -|`MMM`|Displays the month as an abbreviation (for example, `Jan`).| -|`MMMM`|Displays the month as a full month name (for example, `January`).| -|`gg`|Displays the period/era string (for example, `A.D.`).| -|`h`|Displays the hour as a number without leading zeros using the 12-hour clock (for example, `1:15:15 PM`). Use `%h` if this is the only character in your user-defined numeric format.| -|`hh`|Displays the hour as a number with leading zeros using the 12-hour clock (for example, `01:15:15 PM`).| -|`H`|Displays the hour as a number without leading zeros using the 24-hour clock (for example, `1:15:15`). Use `%H` if this is the only character in your user-defined numeric format.| -|`HH`|Displays the hour as a number with leading zeros using the 24-hour clock (for example, `01:15:15`).| -|`m`|Displays the minute as a number without leading zeros (for example, `12:1:15`). Use `%m` if this is the only character in your user-defined numeric format.| -|`mm`|Displays the minute as a number with leading zeros (for example, `12:01:15`).| -|`s`|Displays the second as a number without leading zeros (for example, `12:15:5`). Use `%s` if this is the only character in your user-defined numeric format.| -|`ss`|Displays the second as a number with leading zeros (for example, `12:15:05`).| -|`f`|Displays fractions of seconds. For example `ff` displays hundredths of seconds, whereas `ffff` displays ten-thousandths of seconds. You may use up to seven `f` symbols in your user-defined format. Use `%f` if this is the only character in your user-defined numeric format.| -|`t`|Uses the 12-hour clock and displays an uppercase `A` for any hour before noon; displays an uppercase `P` for any hour between noon and 11:59 P.M. Use `%t` if this is the only character in your user-defined numeric format.| -|`tt`|For locales that use a 12-hour clock, displays an uppercase `AM` with any hour before noon; displays an uppercase `PM` with any hour between noon and 11:59 P.M.

For locales that use a 24-hour clock, displays nothing.| -|`y`|Displays the year number (0-9) without leading zeros. Use `%y` if this is the only character in your user-defined numeric format.| -|`yy`|Displays the year in two-digit numeric format with a leading zero, if applicable.| -|`yyy`|Displays the year in four-digit numeric format.| -|`yyyy`|Displays the year in four-digit numeric format.| -|`z`|Displays the timezone offset without a leading zero (for example, `-8`). Use `%z` if this is the only character in your user-defined numeric format.| -|`zz`|Displays the timezone offset with a leading zero (for example, `-08`)| -|`zzz`|Displays the full timezone offset (for example, `-08:00`)| - -### Legacy Code Example - The following are examples of user-defined date and time formats for `December 7, 1958, 8:50 PM, 35 seconds`: - -|Format|Displays| -|-|-| -|`M/d/yy`|`12/7/58`| -|`d-MMM`|`7-Dec`| -|`d-MMMM-yy`|`7-December-58`| -|`d MMMM`|`7 December`| -|`MMMM yy`|`December 58`| -|`hh:mm tt`|`08:50 PM`| -|`h:mm:ss t`|`8:50:35 P`| -|`H:mm`|`20:50`| -|`H:mm:ss`|`20:50:35`| -|`M/d/yyyy H:mm`|`12/7/1958 20:50`| - -### Smart Device Developer Notes - The minimum time resolution for a device is determined by the manufacturer of the device. If the time resolution for the device is coarse enough, the `f` format character returns 0 when run on that device. - - - -## Examples - This example shows various uses of the `Format` function to format values using both `String` formats and user-defined formats. For the date separator (`/`), time separator (`:`), and the AM/PM indicators (`t` and `tt`), the actual formatted output displayed by your system depends on the locale settings the code is using. When times and dates are displayed in the development environment, the short time format and short date format of the code locale are used. - + method also provides similar functionality. + + If you are formatting a nonlocalized numeric string, you should use a user-defined numeric format to ensure that you get the look you want. + + If you try to format a number without specifying `Style`, the `Format` function provides functionality similar to the `Str` function, although it is internationally aware. However, positive numbers formatted as strings using the `Format` function don't include a leading space reserved for the sign of the value; those converted using the `Str` function retain the leading space. + +## Different Formats for Different Numeric Values + A user-defined format expression for numbers can have from one to three sections separated by semicolons. If the `Style` argument of the `Format` function contains one of the predefined numeric formats, only one section is allowed. + +|If you use|This is the result| +|-|-| +|One section only|The format expression applies to all values.| +|Two sections|The first section applies to positive values and zeros; the second applies to negative values.| +|Three sections|The first section applies to positive values, the second applies to negative values, and the third applies to zeros.| + + The following example has two sections: the first defines the format for positive values and zeros; the second section defines the format for negative values. Since the `Style` argument of the `Format` function takes a string, it is enclosed by quotation marks. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet18"::: + + If you include semicolons with nothing between them, the missing section is printed using the format of the positive value. For example, the following format displays positive and negative values using the format in the first section and displays `Zero` if the value is zero. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet19"::: + +## Predefined Numeric Formats + The following table identifies the predefined numeric format names. These may be used by name as the `Style` argument for the `Format` function: + +|Format name|Description| +|-|-| +|`General Number`, `G`, or `g`|Displays number with no thousand separator.

For example, `Format(&H3FA, "g")` returns `1018`.| +|`Currency`, `C`, or `c`|Displays number with thousand separator, if appropriate; displays two digits to the right of the decimal separator. Output is based on system locale settings.

For example, `Format(1234567, "c")` returns `$1,234,567.00`.| +|`Fixed`, `F`, or `f`|Displays at least one digit to the left and two digits to the right of the decimal separator.

For example, `Format(1234567, "f")` returns `1234567.00`.| +|`Standard`, `N`, or `n`|Displays number with thousand separator, at least one digit to the left and two digits to the right of the decimal separator.

For example, `Format(1234567, "n")` returns `1,234,567.00`.| +|`Percent`|Displays number multiplied by 100 with a percent sign (%) appended immediately to the right; always displays two digits to the right of the decimal separator.

For example, `Format(0.4744, "Percent")` returns `47.44%`.| +|`P`, or `p`|Displays number with thousandths separator multiplied by 100 with a percent sign (%) appended to the right and separated by a single space; always displays two digits to the right of the decimal separator.

For example, `Format(0.80345, "p")` returns `80.35 %`.| +|`Scientific`|Uses standard scientific notation, providing two significant digits.

For example, `Format(1234567, "Scientific")` returns `1.23E+06`.| +|`E`, or `e`|Uses standard scientific notation, providing six significant digits.

For example, `Format(1234567, "e")` returns `1.234567e+006`.| +|`D`, or `d`|Displays number as a string that contains the value of the number in Decimal (base 10) format. This option is supported for integral types (`Byte`, `Short`, `Integer`, `Long`) only.

For example, `Format(&H7F, "d")` returns `127`.| +|`X`, or `x`|Displays number as a string that contains the value of the number in Hexadecimal (base 16) format. This option is supported for integral types (`Byte`, `Short`, `Integer`, `Long`) only.

For example, `Format(127, "x")` returns `7f`.| +|`Yes/No`|Displays `No` if number is 0; otherwise, displays `Yes`.

For example, `Format(0, "Yes/No")` returns `No`.| +|`True/False`|Displays `False` if number is 0; otherwise, displays `True`.

For example, `Format(1, "True/False")` returns `True`.| +|`On/Off`|Displays `Off` if number is 0; otherwise, displays `On`.

For example, `Format(1, "On/Off")` returns `On`.| + +### Smart Device Developer Notes + The `Yes/No`, `True/False`, and `On/Off` formats are not supported. + +## User-Defined Numeric Formats + The following table identifies characters you can use to create user-defined number formats. These may be used to build the `Style` argument for the `Format` function: + +|Character|Description| +|-|-| +|None|Displays the number with no formatting.| +|(`0`)|Digit placeholder. Displays a digit or a zero. If the expression has a digit in the position where the zero appears in the format string, display it; otherwise, displays a zero in that position.

If the number has fewer digits than there are zeros (on either side of the decimal) in the format expression, displays leading or trailing zeros. If the number has more digits to the right of the decimal separator than there are zeros to the right of the decimal separator in the format expression, rounds the number to as many decimal places as there are zeros. If the number has more digits to the left of the decimal separator than there are zeros to the left of the decimal separator in the format expression, displays the extra digits without modification.| +|(`#`)|Digit placeholder. Displays a digit or nothing. If the expression has a digit in the position where the `#` character appears in the format string, displays it; otherwise, displays nothing in that position.

This symbol works like the `0` digit placeholder, except that leading and trailing zeros aren't displayed if the number has fewer digits than there are `#` characters on either side of the decimal separator in the format expression.| +|(`.`)|Decimal placeholder. The decimal placeholder determines how many digits are displayed to the left and right of the decimal separator. If the format expression contains only `#` characters to the left of this symbol; numbers smaller than 1 begin with a decimal separator. To display a leading zero displayed with fractional numbers, use zero as the first digit placeholder to the left of the decimal separator. In some locales, a comma is used as the decimal separator. The actual character used as a decimal placeholder in the formatted output depends on the number format recognized by your system. Thus, you should use the period as the decimal placeholder in your formats even if you are in a locale that uses a comma as a decimal placeholder. The formatted string will appear in the format correct for the locale.| +|(`%`)|Percent placeholder. Multiplies the expression by 100. The percent character (`%`) is inserted in the position where it appears in the format string.| +|(`,`)|Thousand separator. The thousand separator separates thousands from hundreds within a number that has four or more places to the left of the decimal separator. Standard use of the thousand separator is specified if the format contains a thousand separator surrounded by digit placeholders (`0` or `#`).

A thousand separator immediately to the left of the decimal separator (whether or not a decimal is specified) or as the rightmost character in the string means "scale the number by dividing it by 1,000, rounding as needed." Numbers smaller than 1,000 but greater or equal to 500 are displayed as `1`, and numbers smaller than 500 are displayed as `0`. Two adjacent thousand separators in this position scale by a factor of 1 million, and an additional factor of 1,000 for each additional separator.

Multiple separators in any position other than immediately to the left of the decimal separator or the rightmost position in the string are treated simply as specifying the use of a thousand separator. In some locales, a period is used as a thousand separator. The actual character used as the thousand separator in the formatted output depends on the Number Format recognized by your system. Thus, you should use the comma as the thousand separator in your formats even if you are in a locale that uses a period as a thousand separator. The formatted string will appear in the format correct for the locale.

For example, consider the three following format strings:

- `"#,0."`, which uses the thousands separator to format the number 100 million as the string "100,000,000".
- `"#0,."`, which uses scaling by a factor of one thousand to format the number 100 million as the string "100000".
- `"#,0,."`, which uses the thousands separator and scaling by one thousand to format the number 100 million as the string "100,000".| +|(`:`)|Time separator. In some locales, other characters may be used to represent the time separator. The time separator separates hours, minutes, and seconds when time values are formatted. The actual character used as the time separator in formatted output is determined by your system settings.| +|(`/`)|Date separator. In some locales, other characters may be used to represent the date separator. The date separator separates the day, month, and year when date values are formatted. The actual character used as the date separator in formatted output is determined by your system settings.| +|(`E-``E+``e-``e+`)|Scientific format. If the format expression contains at least one digit placeholder (`0` or `#`) to the left of `E-`, `E+`, `e-`, or `e+`, the number is displayed in scientific format and `E` or `e` is inserted between the number and its exponent. The number of digit placeholders to the left determines the number of digits in the exponent. Use `E-` or `e-` to place a minus sign next to negative exponents. Use `E+` or `e+` to place a minus sign next to negative exponents and a plus sign next to positive exponents. You must also include digit placeholders to the right of this symbol to get correct formatting.| +|`-` `+` `$` ( )|Literal characters. These characters are displayed exactly as typed in the format string. To display a character other than one of those listed, precede it with a backslash (`\`) or enclose it in double quotation marks (" ").| +|(`\`)|Displays the next character in the format string. To display a character that has special meaning as a literal character, precede it with a backslash (`\`). The backslash itself isn't displayed. Using a backslash is the same as enclosing the next character in double quotation marks. To display a backslash, use two backslashes (`\\`).

Examples of characters that can't be displayed as literal characters are the date-formatting and time-formatting characters (`a`, `c`, `d`, `h`, `m`, `n`, `p`, `q`, `s`, `t`, `w`, `y`, `/`, and `:`), the numeric-formatting characters (`#`, `0`, `%`, `E`, `e`, comma, and period), and the string-formatting characters (`@`, `&`, `<`, `>`, and `!`).| +|(`"``ABC``"`)|Displays the string inside the double quotation marks (" "). To include a string in the style argument from within code, you must use `Chr(34)` to enclose the text (`34` is the character code for a quotation mark (")).| + +### Legacy Code Example + The following table contains some sample format expressions for numbers. (These examples all assume that your system's locale setting is English-U.S.) The first column contains the format strings for the `Style` argument of the `Format` function; the other columns contain the resulting output if the formatted data has the value given in the column headings. + +|Format (`Style`)|"5" formatted as|"-5" formatted as|"0.5" formatted as| +|-|-|-|-| +|`Zero-length string ("")`|`5`|`-5`|`0.5`| +|`0`|`5`|`-5`|`1`| +|`0.00`|`5.00`|`-5.00`|`0.50`| +|`#,##0`|`5`|`-5`|`1`| +|`$#,##0;($#,##0)`|`$5`|`($5)`|`$1`| +|`$#,##0.00;($#,##0.00)`|`$5.00`|`($5.00)`|`$0.50`| +|`0%`|`500%`|`-500%`|`50%`| +|`0.00%`|`500.00%`|`-500.00%`|`50.00%`| +|`0.00E+00`|`5.00E+00`|`-5.00E+00`|`5.00E-01`| +|`0.00E-00`|`5.00E00`|`-5.00E00`|`5.00E-01`| + +## Predefined Date/Time Formats + The following table identifies the predefined date and time format names. These may be used by name as the style argument for the `Format` function: + +|Format Name|Description| +|-|-| +|`General Date`, or `G`|Displays a date and/or time. For example, `3/12/2008 11:07:31 AM`. Date display is determined by your application's current culture value.| +|`Long Date`, `Medium Date`, or `D`|Displays a date according to your current culture's long date format. For example, `Wednesday, March 12, 2008`.| +|`Short Date`, or `d`|Displays a date using your current culture's short date format. For example, `3/12/2008`.

The `d` character displays the day in a user-defined date format.| +|`Long Time`, `Medium Time`, or `T`|Displays a time using your current culture's long time format; typically includes hours, minutes, seconds. For example, `11:07:31 AM`.| +|`Short Time` or `t`|Displays a time using your current culture's short time format. For example, `11:07 AM`.

The `t` character displays `AM` or `PM` values for locales that use a 12-hour clock in a user-defined time format.| +|`f`|Displays the long date and short time according to your current culture's format. For example, `Wednesday, March 12, 2008 11:07 AM`.| +|`F`|Displays the long date and long time according to your current culture's format. For example, `Wednesday, March 12, 2008 11:07:31 AM`.| +|`g`|Displays the short date and short time according to your current culture's format. For example, `3/12/2008 11:07 AM`.| +|`M`, `m`|Displays the month and the day of a date. For example, `March 12`.

The `M` character displays the month in a user-defined date format. The `m` character displays the minutes in a user-defined time format.| +|`R`, `r`|Formats the date according to the property. For example, `Wed, 12 Mar 2008 11:07:31 GMT`. The formatted date does not adjust the value of the date and time. You must adjust the Date/Time value to GMT before calling the `Format` function.| +|`s`|Formats the date and time as a sortable index. For example, `2008-03-12T11:07:31`.

The `s` character displays the seconds in a user-defined time format.| +|`u`|Formats the date and time as a GMT sortable index. For example, `2008-03-12 11:07:31Z`.| +|`U`|Formats the date and time with the long date and long time as GMT. For example, `Wednesday, March 12, 2008 6:07:31 PM`.| +|`Y`, `y`|Formats the date as the year and month. For example, `March, 2008`.

The `Y` and `y` characters display the year in a user-defined date format.| + + For more information about the application's current culture information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). + +## User-Defined Date/Time Formats + The following table shows characters you can use to create user-defined date/time formats. Unlike in earlier versions of Visual Basic, these format characters are case-sensitive. + +|Character|Description| +|-|-| +|(`:`)|Time separator. In some locales, other characters may be used to represent the time separator. The time separator separates hours, minutes, and seconds when time values are formatted. The actual character that is used as the time separator in formatted output is determined by your application's current culture value.| +|(`/`)|Date separator. In some locales, other characters may be used to represent the date separator. The date separator separates the day, month, and year when date values are formatted. The actual character that is used as the date separator in formatted output is determined by your application's current culture.| +|(`%`)|Used to indicate that the following character should be read as a single-letter format without regard to any trailing letters. Also used to indicate that a single-letter format is read as a user-defined format. See what follows for additional details.| +|`d`|Displays the day as a number without a leading zero (for example, `1`). Use `%d` if this is the only character in your user-defined numeric format.| +|`dd`|Displays the day as a number with a leading zero (for example, `01`).| +|`ddd`|Displays the day as an abbreviation (for example, `Sun`).| +|`dddd`|Displays the day as a full name (for example, `Sunday`).| +|`M`|Displays the month as a number without a leading zero (for example, January is represented as `1`). Use `%M` if this is the only character in your user-defined numeric format.| +|`MM`|Displays the month as a number with a leading zero (for example, `01/12/01`).| +|`MMM`|Displays the month as an abbreviation (for example, `Jan`).| +|`MMMM`|Displays the month as a full month name (for example, `January`).| +|`gg`|Displays the period/era string (for example, `A.D.`).| +|`h`|Displays the hour as a number without leading zeros using the 12-hour clock (for example, `1:15:15 PM`). Use `%h` if this is the only character in your user-defined numeric format.| +|`hh`|Displays the hour as a number with leading zeros using the 12-hour clock (for example, `01:15:15 PM`).| +|`H`|Displays the hour as a number without leading zeros using the 24-hour clock (for example, `1:15:15`). Use `%H` if this is the only character in your user-defined numeric format.| +|`HH`|Displays the hour as a number with leading zeros using the 24-hour clock (for example, `01:15:15`).| +|`m`|Displays the minute as a number without leading zeros (for example, `12:1:15`). Use `%m` if this is the only character in your user-defined numeric format.| +|`mm`|Displays the minute as a number with leading zeros (for example, `12:01:15`).| +|`s`|Displays the second as a number without leading zeros (for example, `12:15:5`). Use `%s` if this is the only character in your user-defined numeric format.| +|`ss`|Displays the second as a number with leading zeros (for example, `12:15:05`).| +|`f`|Displays fractions of seconds. For example `ff` displays hundredths of seconds, whereas `ffff` displays ten-thousandths of seconds. You may use up to seven `f` symbols in your user-defined format. Use `%f` if this is the only character in your user-defined numeric format.| +|`t`|Uses the 12-hour clock and displays an uppercase `A` for any hour before noon; displays an uppercase `P` for any hour between noon and 11:59 P.M. Use `%t` if this is the only character in your user-defined numeric format.| +|`tt`|For locales that use a 12-hour clock, displays an uppercase `AM` with any hour before noon; displays an uppercase `PM` with any hour between noon and 11:59 P.M.

For locales that use a 24-hour clock, displays nothing.| +|`y`|Displays the year number (0-9) without leading zeros. Use `%y` if this is the only character in your user-defined numeric format.| +|`yy`|Displays the year in two-digit numeric format with a leading zero, if applicable.| +|`yyy`|Displays the year in four-digit numeric format.| +|`yyyy`|Displays the year in four-digit numeric format.| +|`z`|Displays the timezone offset without a leading zero (for example, `-8`). Use `%z` if this is the only character in your user-defined numeric format.| +|`zz`|Displays the timezone offset with a leading zero (for example, `-08`)| +|`zzz`|Displays the full timezone offset (for example, `-08:00`)| + +### Legacy Code Example + The following are examples of user-defined date and time formats for `December 7, 1958, 8:50 PM, 35 seconds`: + +|Format|Displays| +|-|-| +|`M/d/yy`|`12/7/58`| +|`d-MMM`|`7-Dec`| +|`d-MMMM-yy`|`7-December-58`| +|`d MMMM`|`7 December`| +|`MMMM yy`|`December 58`| +|`hh:mm tt`|`08:50 PM`| +|`h:mm:ss t`|`8:50:35 P`| +|`H:mm`|`20:50`| +|`H:mm:ss`|`20:50:35`| +|`M/d/yyyy H:mm`|`12/7/1958 20:50`| + +### Smart Device Developer Notes + The minimum time resolution for a device is determined by the manufacturer of the device. If the time resolution for the device is coarse enough, the `f` format character returns 0 when run on that device. + + + +## Examples + This example shows various uses of the `Format` function to format values using both `String` formats and user-defined formats. For the date separator (`/`), time separator (`:`), and the AM/PM indicators (`t` and `tt`), the actual formatted output displayed by your system depends on the locale settings the code is using. When times and dates are displayed in the development environment, the short time format and short date format of the code locale are used. + > [!NOTE] -> For locales that use a 24-hour clock, the AM/PM indicators (`t` and `tt`) display nothing. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet27"::: - +> For locales that use a 24-hour clock, the AM/PM indicators (`t` and `tt`) display nothing. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet27"::: + ]]>
@@ -951,31 +951,31 @@ Returns an expression formatted as a currency value using the currency symbol defined in the system control panel. An expression formatted as a currency value using the currency symbol defined in the system control panel. - [!NOTE] -> All settings information comes from the locale of the application. By default, that will be the locale set in the control panel. However, it may be changed programmatically by using the .NET Framework, except leading zero, which comes from the `Number` tab. - - The `IncludeLeadingDigit`, `UseParensForNegativeNumbers`, and `GroupDigits` arguments take the following TriState enumeration values. - -|Value|Description| -|-|-| -|`TriState.True`|True| -|`TriState.False`|False| -|`TriState.UseDefault`|The computer's regional settings| - - - -## Examples - The following example illustrates the use of the `FormatCurrency` function. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet32"::: - +> All settings information comes from the locale of the application. By default, that will be the locale set in the control panel. However, it may be changed programmatically by using the .NET Framework, except leading zero, which comes from the `Number` tab. + + The `IncludeLeadingDigit`, `UseParensForNegativeNumbers`, and `GroupDigits` arguments take the following TriState enumeration values. + +|Value|Description| +|-|-| +|`TriState.True`|True| +|`TriState.False`|False| +|`TriState.UseDefault`|The computer's regional settings| + + + +## Examples + The following example illustrates the use of the `FormatCurrency` function. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet32"::: + ]]> Number of digits after decimal point is greater than 99. @@ -1028,31 +1028,31 @@ Returns a string expression representing a date/time value. A string expression representing a date/time value. - [!NOTE] -> If you pass the `Expression` argument as a `String` literal, `FormatDateTime` interprets it according to the setting of your application. However, if you pass it as a `Date` literal, use the format #mm/dd/yyyy#, because `FormatDateTime` always interprets a `Date` literal according to the English (US) culture. This is necessary because, if an application is developed and coded using `Date` literals from one culture, but is then executed on a platform with a different culture, the `Date` literals could be parsed incorrectly. - - The `NamedFormat` argument has the following settings. - -|Constant|Description| -|-|-| -|`DateFormat.GeneralDate`|Display a date and/or time. Display a date part as a short date. If there is a time part, display it as a long time. If present, both parts display.| -|`DateFormat.LongDate`|Display a date using the long date format specified in your computer's regional settings.| -|`DateFormat.ShortDate`|Display a date using the short date format specified in your computer's regional settings.| -|`DateFormat.LongTime`|Display a time using the time format specified in your computer's regional settings.| -|`DateFormat.ShortTime`|Display a time using the 24-hour format (hh:mm).| - - - -## Examples - This example demonstrates the use of the `FormatDateTime` function. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet3"::: - +> If you pass the `Expression` argument as a `String` literal, `FormatDateTime` interprets it according to the setting of your application. However, if you pass it as a `Date` literal, use the format #mm/dd/yyyy#, because `FormatDateTime` always interprets a `Date` literal according to the English (US) culture. This is necessary because, if an application is developed and coded using `Date` literals from one culture, but is then executed on a platform with a different culture, the `Date` literals could be parsed incorrectly. + + The `NamedFormat` argument has the following settings. + +|Constant|Description| +|-|-| +|`DateFormat.GeneralDate`|Display a date and/or time. Display a date part as a short date. If there is a time part, display it as a long time. If present, both parts display.| +|`DateFormat.LongDate`|Display a date using the long date format specified in your computer's regional settings.| +|`DateFormat.ShortDate`|Display a date using the short date format specified in your computer's regional settings.| +|`DateFormat.LongTime`|Display a time using the time format specified in your computer's regional settings.| +|`DateFormat.ShortTime`|Display a time using the 24-hour format (hh:mm).| + + + +## Examples + This example demonstrates the use of the `FormatDateTime` function. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet3"::: + ]]> @@ -1118,29 +1118,29 @@ Returns an expression formatted as a number. An expression formatted as a number. - [!NOTE] -> All settings information comes from the locale of the application. By default, that will be the locale set in the control panel. However, it may be changed programmatically by using the .NET Framework. - - The `IncludeLeadingDigit`, `UseParensForNegativeNumbers`, and `GroupDigits` arguments have the following settings. - -|Constant|Description| -|-|-| -|`TriState.True`|True| -|`TriState.False`|False| -|`TriState.UseDefault`|The computer's regional settings| - - - -## Examples - This example demonstrates the `FormatNumber` function. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet15"::: - +> All settings information comes from the locale of the application. By default, that will be the locale set in the control panel. However, it may be changed programmatically by using the .NET Framework. + + The `IncludeLeadingDigit`, `UseParensForNegativeNumbers`, and `GroupDigits` arguments have the following settings. + +|Constant|Description| +|-|-| +|`TriState.True`|True| +|`TriState.False`|False| +|`TriState.UseDefault`|The computer's regional settings| + + + +## Examples + This example demonstrates the `FormatNumber` function. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet15"::: + ]]> Type is not numeric. @@ -1204,29 +1204,29 @@ Returns an expression formatted as a percentage (that is, multiplied by 100) with a trailing % character. An expression formatted as a percentage (that is, multiplied by 100) with a trailing % character. - [!NOTE] -> All settings information comes from the locale of the application. By default, that will be the locale set in the control panel. However, it may be changed programmatically by using the .NET Framework. - - The `IncludeLeadingDigit`, `UseParensForNegativeNumbers`, and `GroupDigits` arguments have the following settings. - -|Constant|Description| -|-|-| -|`TriState.True`|True| -|`TriState.False`|False| -|`TriState.Default`|The computer's regional settings| - - - -## Examples - This example illustrates the use of the `FormatPercent` function. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet28"::: - +> All settings information comes from the locale of the application. By default, that will be the locale set in the control panel. However, it may be changed programmatically by using the .NET Framework. + + The `IncludeLeadingDigit`, `UseParensForNegativeNumbers`, and `GroupDigits` arguments have the following settings. + +|Constant|Description| +|-|-| +|`TriState.True`|True| +|`TriState.False`|False| +|`TriState.Default`|The computer's regional settings| + + + +## Examples + This example illustrates the use of the `FormatPercent` function. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet28"::: + ]]> Type is not numeric. @@ -1279,18 +1279,18 @@ value representing the character from the specified index in the supplied string. - @@ -1384,26 +1384,26 @@
- [!NOTE] -> The `InStrB` function in previous versions of Visual Basic returns a number of bytes rather than a character position. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `InStrB` is no longer supported. - - The `Compare` argument settings are: - -|Constant|Value|Description| -|-|-|-| -|`Binary`|0|Performs a binary comparison| +> The `InStrB` function in previous versions of Visual Basic returns a number of bytes rather than a character position. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `InStrB` is no longer supported. + + The `Compare` argument settings are: + +|Constant|Value|Description| +|-|-|-| +|`Binary`|0|Performs a binary comparison| |`Text`|1|Performs a text comparison| - -## Examples + +## Examples This example uses the `InStr` function to return the position of the first occurrence of one string within another. In the first example, the search starts from the fourth character and returns the next lower case "p" because `CompareMethod` is `Text` and therefore case insensitive. The position is always relative to the beginning of the string, regardless of the start position. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet8"::: - + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -1505,28 +1505,28 @@
- [!NOTE] -> The `InStrB` function in previous versions of Visual Basic returns a number of bytes rather than a character position. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `InStrB` is no longer supported. - - The `Compare` argument settings are: - -|Constant|Value|Description| -|-|-|-| -|`Binary`|0|Performs a binary comparison| -|`Text`|1|Performs a text comparison| - - - -## Examples - This example uses the `InStr` function to return the position of the first occurrence of one string within another. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet8"::: - +> The `InStrB` function in previous versions of Visual Basic returns a number of bytes rather than a character position. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and `InStrB` is no longer supported. + + The `Compare` argument settings are: + +|Constant|Value|Description| +|-|-|-| +|`Binary`|0|Performs a binary comparison| +|`Text`|1|Performs a text comparison| + + + +## Examples + This example uses the `InStr` function to return the position of the first occurrence of one string within another. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet8"::: + ]]> @@ -1623,25 +1623,25 @@ - @@ -1706,18 +1706,18 @@ Returns a string created by joining a number of substrings contained in an array. A string created by joining a number of substrings contained in an array. - @@ -1773,18 +1773,18 @@ Returns a string created by joining a number of substrings contained in an array. A string created by joining a number of substrings contained in an array. - @@ -1840,23 +1840,23 @@ Returns a string or character converted to lowercase. A string or character converted to lowercase. - [!IMPORTANT] -> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). - - - -## Examples - This example uses the `LCase` function to return a lowercase version of a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet12"::: - +> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). + + + +## Examples + This example uses the `LCase` function to return a lowercase version of a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet12"::: + ]]> @@ -1908,23 +1908,23 @@ Returns a string or character converted to lowercase. A string or character converted to lowercase. - [!IMPORTANT] -> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). - - - -## Examples - This example uses the `LCase` function to return a lowercase version of a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet12"::: - +> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). + + + +## Examples + This example uses the `LCase` function to return a lowercase version of a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet12"::: + ]]> @@ -1979,21 +1979,21 @@ Returns a string containing a specified number of characters from the left side of a string. A string containing a specified number of characters from the left side of a string. - [!NOTE] -> The `LeftB` function in previous versions of Visual Basic returns a string in bytes rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LeftB` is no longer supported. - - - -## Examples - This example demonstrates the use of the `Left` function to return a substring of a given `String`. In a class that has a `Left` property, it may be necessary to fully qualify the `Left` function. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet20"::: - +> The `LeftB` function in previous versions of Visual Basic returns a string in bytes rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LeftB` is no longer supported. + + + +## Examples + This example demonstrates the use of the `Left` function to return a substring of a given `String`. In a class that has a `Left` property, it may be necessary to fully qualify the `Left` function. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet20"::: + ]]> @@ -2051,29 +2051,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2120,29 +2120,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2189,29 +2189,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2258,29 +2258,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2327,29 +2327,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2396,29 +2396,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2465,29 +2465,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2534,29 +2534,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2603,29 +2603,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2683,29 +2683,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2757,29 +2757,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2827,29 +2827,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2897,29 +2897,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -2971,29 +2971,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -3046,29 +3046,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -3121,29 +3121,29 @@ Returns an integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. An integer containing either the number of characters in a string or the nominal number of bytes required to store a variable. - [!NOTE] -> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. - +> The `Len` function may not be able to determine the actual number of storage bytes required when used with variable-length strings in user-defined data types. + > [!NOTE] -> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. - -## Smart Device Developer Notes - The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. - - - -## Examples - This example uses `Len` to return the number of characters in a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: - +> The `LenB` function in earlier versions of Visual Basic returns the number of bytes in a string rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `LenB` is no longer supported. + +## Smart Device Developer Notes + The `Len` function accepts only `String` and `Object` variables as parameters. If an `Object` contains a `String`, it will return the length of the `String`. If a parameter is a NULL `Object` reference, the function returns zero. If an `Object` contains any other type, an exception is thrown. + + + +## Examples + This example uses `Len` to return the number of characters in a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet33"::: + ]]> @@ -3201,18 +3201,18 @@ Returns a left-aligned string containing the specified string adjusted to the specified length. A left-aligned string containing the specified string adjusted to the specified length. - @@ -3266,18 +3266,18 @@ Returns a string containing a copy of a specified string with no leading spaces (), no trailing spaces (), or no leading or trailing spaces (). A string containing a copy of a specified string with no leading spaces (), no trailing spaces (), or no leading or trailing spaces (). - @@ -3337,23 +3337,23 @@ Returns a string that contains all the characters starting from a specified position in a string. A string that consists of all the characters starting from the specified position in the string. - [!NOTE] -> The `MidB` function in previous versions of Visual Basic returns a string in bytes rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic strings are in Unicode, and `MidB` is no longer supported. - - - -## Examples - The last line in this example uses this overload of the `Mid` function to return the fifth and subsequent characters from a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet17"::: - +> The `MidB` function in previous versions of Visual Basic returns a string in bytes rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic strings are in Unicode, and `MidB` is no longer supported. + + + +## Examples + The last line in this example uses this overload of the `Mid` function to return the fifth and subsequent characters from a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet17"::: + ]]> @@ -3420,23 +3420,23 @@ Returns a string that contains a specified number of characters starting from a specified position in a string. A string that consists of the specified number of characters starting from the specified position in the string. - [!NOTE] -> The `MidB` function in previous versions of Visual Basic returns a string in bytes rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic strings are in Unicode, and `MidB` is no longer supported. - - - -## Examples - The first two `Mid` functions in this example return the specified number of characters from a string, starting from the given positions. (The last function illustrates the overload and only specifies the starting point for the string extraction.) - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet17"::: - +> The `MidB` function in previous versions of Visual Basic returns a string in bytes rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic strings are in Unicode, and `MidB` is no longer supported. + + + +## Examples + The first two `Mid` functions in this example return the specified number of characters from a string, starting from the given positions. (The last function illustrates the overload and only specifies the starting point for the string extraction.) + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet17"::: + ]]> @@ -3509,27 +3509,27 @@ One of the following values. IfReplace returns is zero-length or Copy of is zero-length Copy of with no occurrences of is zero-length or , or is greater than length of is 0 Copy of - @@ -3586,21 +3586,21 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string containing a specified number of characters from the right side of a string. A string containing a specified number of characters from the right side of a string. - [!NOTE] -> The `RightB` function in earlier versions of Visual Basic returns a string in bytes, rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `RightB` is no longer supported. - - - -## Examples - This example demonstrates the use of the `Right` function to return a substring of a given `String`. In a class that has a `Right` property, it may be necessary to fully qualify the `Right` function. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet21"::: - +> The `RightB` function in earlier versions of Visual Basic returns a string in bytes, rather than characters. It is used primarily for converting strings in double-byte character set (DBCS) applications. All current Visual Basic strings are in Unicode, and `RightB` is no longer supported. + + + +## Examples + This example demonstrates the use of the `Right` function to return a substring of a given `String`. In a class that has a `Right` property, it may be necessary to fully qualify the `Right` function. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet21"::: + ]]> @@ -3659,18 +3659,18 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a right-aligned string containing the specified string adjusted to the specified length. A right-aligned string containing the specified string adjusted to the specified length. - @@ -3724,18 +3724,18 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string containing a copy of a specified string with no leading spaces (), no trailing spaces (), or no leading or trailing spaces (). A string containing a copy of a specified string with no leading spaces (), no trailing spaces (), or no leading or trailing spaces (). - @@ -3783,18 +3783,18 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string consisting of the specified number of spaces. A string consisting of the specified number of spaces. - @@ -3861,44 +3861,44 @@ Dim aString As String = Replace(TestString, "o", "i") array. If is a zero-length string (""), returns a single-element array containing a zero-length string. If is a zero-length string, or if it does not appear anywhere in , returns a single-element array containing the entire string. - @@ -3955,23 +3955,23 @@ Dim aString As String = Replace(TestString, "o", "i") One of the following values: IfStrComp returns sorts ahead of -1 is equal to 0 sorts after 1 - @@ -4030,48 +4030,48 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string converted as specified. A string converted as specified. - [!IMPORTANT] -> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). - - The `Conversion` argument settings are: - -|Enumeration member|Description| -|-|-| -|`VbStrConv.None`|Performs no conversion| -|`VbStrConv.LinguisticCasing`|Uses linguistic rules for casing, rather than File System (default). Valid with `VbStrConv.UpperCase` and `VbStrConv.LowerCase` only.| -|`VbStrConv.UpperCase`|Converts the string to uppercase characters.| -|`VbStrConv.LowerCase`|Converts the string to lowercase characters.| -|`VbStrConv.ProperCase`|Converts the first letter of every word in string to uppercase.| -|`VbStrConv.Wide` *|Converts narrow (half-width) characters in the string to wide (full-width) characters. [!INCLUDE[vbstrconv-wide](~/includes/vbstrconv-wide-md.md)]| -|`VbStrConv.Narrow` *|Converts wide (full-width) characters in the string to narrow (half-width) characters.| -|`VbStrConv.Katakana` **|Converts Hiragana characters in the string to Katakana characters.| -|`VbStrConv.Hiragana` **|Converts Katakana characters in the string to Hiragana characters.| -|`VbStrConv.SimplifiedChinese` *|Converts Traditional Chinese characters to Simplified Chinese.| -|`VbStrConv.TraditionalChinese` *|Converts Simplified Chinese characters to Traditional Chinese.| - - * Applies to Asian locales. - - ** Applies to Japan only. - +> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). + + The `Conversion` argument settings are: + +|Enumeration member|Description| +|-|-| +|`VbStrConv.None`|Performs no conversion| +|`VbStrConv.LinguisticCasing`|Uses linguistic rules for casing, rather than File System (default). Valid with `VbStrConv.UpperCase` and `VbStrConv.LowerCase` only.| +|`VbStrConv.UpperCase`|Converts the string to uppercase characters.| +|`VbStrConv.LowerCase`|Converts the string to lowercase characters.| +|`VbStrConv.ProperCase`|Converts the first letter of every word in string to uppercase.| +|`VbStrConv.Wide` *|Converts narrow (half-width) characters in the string to wide (full-width) characters. [!INCLUDE[vbstrconv-wide](~/includes/vbstrconv-wide-md.md)]| +|`VbStrConv.Narrow` *|Converts wide (full-width) characters in the string to narrow (half-width) characters.| +|`VbStrConv.Katakana` **|Converts Hiragana characters in the string to Katakana characters.| +|`VbStrConv.Hiragana` **|Converts Katakana characters in the string to Hiragana characters.| +|`VbStrConv.SimplifiedChinese` *|Converts Traditional Chinese characters to Simplified Chinese.| +|`VbStrConv.TraditionalChinese` *|Converts Simplified Chinese characters to Traditional Chinese.| + + * Applies to Asian locales. + + ** Applies to Japan only. + > [!NOTE] -> These constants are specified in the .NET Framework common language runtime. As a result, they can be used anywhere in your code in place of the actual values. Most can be combined (for example, `UpperCase + Wide`), except when they are mutually exclusive (for example, `VbStrConv.Wide + VbStrConv.Narrow`). - - The following are valid word separators for proper casing: Null (`Chr$(0)`), horizontal tab (`Chr$(9)`), line feed (`Chr$(10)`), vertical tab (`Chr$(11)`), form feed (`Chr$(12)`), carriage return (`Chr$(13)`), space (single-byte character set) (`Chr$(32)`). The actual value for a space, which can be full or half width, varies by country/region for East Asian cultures. - - - -## Examples - This example converts text into all lowercase letters. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet6"::: - +> These constants are specified in the .NET Framework common language runtime. As a result, they can be used anywhere in your code in place of the actual values. Most can be combined (for example, `UpperCase + Wide`), except when they are mutually exclusive (for example, `VbStrConv.Wide + VbStrConv.Narrow`). + + The following are valid word separators for proper casing: Null (`Chr$(0)`), horizontal tab (`Chr$(9)`), line feed (`Chr$(10)`), vertical tab (`Chr$(11)`), form feed (`Chr$(12)`), carriage return (`Chr$(13)`), space (single-byte character set) (`Chr$(32)`). The actual value for a space, which can be full or half width, varies by country/region for East Asian cultures. + + + +## Examples + This example converts text into all lowercase letters. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet6"::: + ]]> Unsupported , < 0 or > 2048, or unsupported conversion for specified locale. @@ -4131,18 +4131,18 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string or object consisting of the specified character repeated the specified number of times. A string or object consisting of the specified character repeated the specified number of times. - @@ -4194,18 +4194,18 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string or object consisting of the specified character repeated the specified number of times. A string or object consisting of the specified character repeated the specified number of times. - @@ -4257,18 +4257,18 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string or object consisting of the specified character repeated the specified number of times. A string or object consisting of the specified character repeated the specified number of times. - @@ -4326,21 +4326,21 @@ Dim aString As String = Replace(TestString, "o", "i") Returns a string in which the order of the text elements in the specified string is reversed. A string in which the order of the text elements in the specified string is reversed. - @@ -4392,18 +4392,18 @@ For more information about how .NET divides a string instance into text elements Returns a string containing a copy of a specified string with no leading spaces (), no trailing spaces (), or no leading or trailing spaces (). A string containing a copy of a specified string with no leading spaces (), no trailing spaces (), or no leading or trailing spaces (). - @@ -4460,23 +4460,23 @@ For more information about how .NET divides a string instance into text elements Returns a string or character containing the specified string converted to uppercase. A string or character containing the specified string converted to uppercase. - [!IMPORTANT] -> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). - - - -## Examples - This example uses the `UCase` function to return an uppercase version of a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet31"::: - +> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). + + + +## Examples + This example uses the `UCase` function to return an uppercase version of a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet31"::: + ]]> @@ -4530,23 +4530,23 @@ For more information about how .NET divides a string instance into text elements Returns a string or character containing the specified string converted to uppercase. A string or character containing the specified string converted to uppercase. - [!IMPORTANT] -> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). - - - -## Examples - This example uses the `UCase` function to return an uppercase version of a string. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet31"::: - +> If your application makes security decisions based on the result of a comparison or case-change operation, then the operation should use the method, and pass or for the `comparisonType` argument. For more information, see [How Culture Affects Strings in Visual Basic](/dotnet/visual-basic/programming-guide/language-features/strings/how-culture-affects-strings). + + + +## Examples + This example uses the `UCase` function to return an uppercase version of a string. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrStrings/VB/Class1.vb" id="Snippet31"::: + ]]> diff --git a/xml/Microsoft.VisualBasic/VBCodeProvider.xml b/xml/Microsoft.VisualBasic/VBCodeProvider.xml index 60f1f27c5ad..7a53b07affa 100644 --- a/xml/Microsoft.VisualBasic/VBCodeProvider.xml +++ b/xml/Microsoft.VisualBasic/VBCodeProvider.xml @@ -33,22 +33,22 @@ Provides access to instances of the Visual Basic code generator and code compiler. - and implementations. - + and implementations. + > [!NOTE] -> This class contains a link demand and an inheritance demand at the class level that applies to all members. A is thrown when either the immediate caller or the derived class does not have full-trust permission. - - - -## Examples - The following example uses either the C# or Visual Basic code provider to compile a source file. The example checks the input file extension and uses the corresponding or for compilation. The input file is compiled into an executable file, and any compilation errors are displayed to the console. - +> This class contains a link demand and an inheritance demand at the class level that applies to all members. A is thrown when either the immediate caller or the derived class does not have full-trust permission. + + + +## Examples + The following example uses either the C# or Visual Basic code provider to compile a source file. The example checks the input file extension and uses the corresponding or for compilation. The input file is compiled into an executable file, and any compilation errors are displayed to the console. + :::code language="csharp" source="~/snippets/csharp/Microsoft.CSharp/CSharpCodeProvider/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/CodeDom_CodeProviders/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/CodeDom_CodeProviders/VB/source.vb" id="Snippet2"::: + ]]> @@ -127,40 +127,40 @@ A object that contains the provider options. Initializes a new instance of the class by using the specified provider options. - ](/dotnet/framework/configure-apps/file-schema/compiler/provideroption-element) element in the configuration file. You can identify the version of the you want to use by specifying the `` element, supplying "CompilerVersion" as the option name, and supplying the version number (for example, "v3.5") as the option value. You must precede the version number with a lower case "v". The following configuration file example demonstrates how to specify that version 3.5 of the Visual Basic code provider should be used. - -```xml - - - - - - - - - - -``` +In .NET Framework apps, you can obtain the value for `providerOptions` from the [\](/dotnet/framework/configure-apps/file-schema/compiler/provideroption-element) element in the configuration file. You can identify the version of the you want to use by specifying the `` element, supplying "CompilerVersion" as the option name, and supplying the version number (for example, "v3.5") as the option value. You must precede the version number with a lower case "v". The following configuration file example demonstrates how to specify that version 3.5 of the Visual Basic code provider should be used. + +```xml + + + + + + + + + + +``` ## Examples - The following example shows how to specify the compiler version when creating a new instance of the class. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/vbprovider.provideroptions/vb/program.vb" id="Snippet1"::: - + The following example shows how to specify the compiler version when creating a new instance of the class. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/vbprovider.provideroptions/vb/program.vb" id="Snippet1"::: + ]]> @@ -297,11 +297,11 @@ In .NET Framework apps, you can obtain the value for `providerOptions` from the Gets the file name extension to use when creating source code files. The file name extension to use for generated source code files. - @@ -344,19 +344,19 @@ In .NET Framework apps, you can obtain the value for `providerOptions` from the The to use when generating the code. Generates code for the specified class member using the specified text writer and code generator options. - method to create a code fragment to be used in a CodeDOM graph. This code example is part of a larger example provided for the method of the class. - + method to create a code fragment to be used in a CodeDOM graph. This code example is part of a larger example provided for the method of the class. + :::code language="csharp" source="~/snippets/csharp/Microsoft.CSharp/CSharpCodeProvider/GenerateCodeFromMember/program.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/CodeDom_GenerateCodeFromMember/vb/module1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/CodeDom_GenerateCodeFromMember/vb/module1.vb" id="Snippet3"::: + ]]> @@ -400,11 +400,11 @@ In .NET Framework apps, you can obtain the value for `providerOptions` from the Gets a for the specified type of object. A for the specified type. -
diff --git a/xml/Microsoft.VisualBasic/VBFixedArrayAttribute.xml b/xml/Microsoft.VisualBasic/VBFixedArrayAttribute.xml index f41d16e0360..3728159b2eb 100644 --- a/xml/Microsoft.VisualBasic/VBFixedArrayAttribute.xml +++ b/xml/Microsoft.VisualBasic/VBFixedArrayAttribute.xml @@ -40,19 +40,19 @@ Indicates that an array in a structure or non-local variable should be treated as a fixed-length array. - [!NOTE] -> The `VBFixedArrayAttribute` is informational and does not allocate any storage. The purpose of this attribute is to modify how arrays in structures and non-local variables are used by methods or API calls that recognize the `VBFixedArrayAttribute`. Keep in mind that this attribute does not convert a variable length array to a fixed array and that you must still allocate array storage using `Dim` or `ReDim` statements. - +> The `VBFixedArrayAttribute` is informational and does not allocate any storage. The purpose of this attribute is to modify how arrays in structures and non-local variables are used by methods or API calls that recognize the `VBFixedArrayAttribute`. Keep in mind that this attribute does not convert a variable length array to a fixed array and that you must still allocate array storage using `Dim` or `ReDim` statements. + ]]> @@ -104,11 +104,11 @@ Initializes the value of upper field, which represents the size of the first dimension of the array. Initializes the value of the property. - @@ -151,11 +151,11 @@ Initializes the value of upper field, which represents the size of the second dimension of the array. Initializes the value of the property. - @@ -195,11 +195,11 @@ Returns the bounds of the array. Contains an integer array that represents the bounds of the array. - @@ -238,11 +238,11 @@ Returns the size of the array. Contains an integer that represents the number of elements in the array. - diff --git a/xml/Microsoft.VisualBasic/VBFixedStringAttribute.xml b/xml/Microsoft.VisualBasic/VBFixedStringAttribute.xml index 974a86d3a1f..4cb56c2b23d 100644 --- a/xml/Microsoft.VisualBasic/VBFixedStringAttribute.xml +++ b/xml/Microsoft.VisualBasic/VBFixedStringAttribute.xml @@ -36,19 +36,19 @@ Indicates that a string should be treated as if it were fixed length. - [!NOTE] -> The `VBFixedStringAttribute` is informational and cannot be used to convert a variable length string to a fixed string. The purpose of this attribute is to modify how strings in structures and non-local variables are used by methods or API calls that recognize the `VBFixedStringAttribute`. Keep in mind that this attribute does not change the actual length of the string itself. - +> The `VBFixedStringAttribute` is informational and cannot be used to convert a variable length string to a fixed string. The purpose of this attribute is to modify how strings in structures and non-local variables are used by methods or API calls that recognize the `VBFixedStringAttribute`. Keep in mind that this attribute does not change the actual length of the string itself. + ]]> @@ -92,11 +92,11 @@ The length of the fixed string. Initializes the value of the field. - @@ -143,11 +143,11 @@ Gets the length of the string. The length of the string. - Attributes (Visual Basic) diff --git a/xml/Microsoft.VisualBasic/VBMath.xml b/xml/Microsoft.VisualBasic/VBMath.xml index f432d65ee6d..0af2bf14433 100644 --- a/xml/Microsoft.VisualBasic/VBMath.xml +++ b/xml/Microsoft.VisualBasic/VBMath.xml @@ -36,18 +36,18 @@ The module contains procedures used to perform mathematical operations. - Math Summary @@ -98,26 +98,26 @@ Initializes the random-number generator. - [!NOTE] -> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. - +> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. + > [!IMPORTANT] -> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. For more information, see . - - - -## Examples - This example uses the `Randomize` statement to initialize the random-number generator. Because the number argument has been omitted, `Randomize` uses the return value from the `Timer` function as the new seed value. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: - +> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. For more information, see . + + + +## Examples + This example uses the `Randomize` statement to initialize the random-number generator. Because the number argument has been omitted, `Randomize` uses the return value from the `Timer` function as the new seed value. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: + ]]> @@ -160,26 +160,26 @@ Optional. An or any valid numeric expression. Initializes the random-number generator. - [!NOTE] -> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. Using `Randomize` with the same value for `Number` does not repeat the previous sequence. - +> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. Using `Randomize` with the same value for `Number` does not repeat the previous sequence. + > [!IMPORTANT] -> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. For more information, see . - - - -## Examples - This example uses the `Randomize` statement to initialize the random-number generator. Because the number argument has been omitted, `Randomize` uses the return value from the `Timer` function as the new seed value. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: - +> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. For more information, see . + + + +## Examples + This example uses the `Randomize` statement to initialize the random-number generator. Because the number argument has been omitted, `Randomize` uses the return value from the `Timer` function as the new seed value. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: + ]]> @@ -235,32 +235,32 @@ Returns a random number of type . The next random number in the sequence. - [!NOTE] -> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. - +> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. + > [!IMPORTANT] -> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. - - - -## Examples - This example uses the `Rnd` function to generate a random integer value in the range from 1 to 6. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: - +> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. + + + +## Examples + This example uses the `Rnd` function to generate a random integer value in the range from 1 to 6. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: + ]]> @@ -304,36 +304,36 @@ Returns a random number of type . If number is less than zero, Rnd generates the same number every time, using as the seed. If number is greater than zero, Rnd generates the next random number in the sequence. If number is equal to zero, Rnd generates the most recently generated number. If number is not supplied, Rnd generates the next random number in the sequence. - [!NOTE] -> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. Using `Randomize` with the same value for `Number` does not repeat the previous sequence. - +> To repeat sequences of random numbers, call `Rnd` with a negative argument immediately before using `Randomize` with a numeric argument. Using `Randomize` with the same value for `Number` does not repeat the previous sequence. + > [!IMPORTANT] -> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. - - - -## Examples - This example uses the `Rnd` function to generate a random integer value in the range from 1 to 6. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: - +> Because the `Random` statement and the `Rnd` function start with a seed value and generate numbers that fall within a finite range, the results may be predictable by someone who knows the algorithm used to generate them. Consequently, the `Random` statement and the `Rnd` function should not be used to generate random numbers for use in cryptography. + + + +## Examples + This example uses the `Rnd` function to generate a random integer value in the range from 1 to 6. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_VBCSharp/VbVbalrMath/VB/Class1.vb" id="Snippet21"::: + ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.xml b/xml/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.xml index eee910cf23f..bd2a208845c 100644 --- a/xml/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.xml +++ b/xml/Microsoft.Win32.SafeHandles/CriticalHandleMinusOneIsInvalid.xml @@ -49,16 +49,16 @@ Provides a base class for Win32 critical handle implementations in which the value of -1 indicates an invalid handle. - class. It describes the format of an invalid handle that uses a value of -1. Further derivations of this class (for example, file or registry handles) can specialize this further. - - This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - + class. It describes the format of an invalid handle that uses a value of -1. Further derivations of this class (for example, file or registry handles) can specialize this further. + + This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + > [!NOTE] -> See the class for important information on critical handle security and thread safety. - +> See the class for important information on critical handle security and thread safety. + ]]> @@ -154,11 +154,11 @@ if the handle is not valid; otherwise, . - diff --git a/xml/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.xml b/xml/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.xml index 2685a794069..3cd574f60e2 100644 --- a/xml/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.xml +++ b/xml/Microsoft.Win32.SafeHandles/CriticalHandleZeroOrMinusOneIsInvalid.xml @@ -49,18 +49,18 @@ Provides a base class for Win32 critical handle implementations in which the value of either 0 or -1 indicates an invalid handle. - class. It describes the format of an invalid handle. For example, some handles use -1 as an invalid handle value, while others use 0. Further derivations of this class (for example, file or registry handles) can specialize this further. - - Use the class when you need to wrap an unmanaged resource that does not have an existing managed wrapper. - - This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - + class. It describes the format of an invalid handle. For example, some handles use -1 as an invalid handle value, while others use 0. Further derivations of this class (for example, file or registry handles) can specialize this further. + + Use the class when you need to wrap an unmanaged resource that does not have an existing managed wrapper. + + This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + > [!NOTE] -> See the class for important information on critical handle security and thread safety. - +> See the class for important information on critical handle security and thread safety. + ]]> @@ -156,11 +156,11 @@ if the handle is not valid; otherwise, . - diff --git a/xml/Microsoft.Win32.SafeHandles/SafeFileHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeFileHandle.xml index fb4145752a9..5e47503b09b 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeFileHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeFileHandle.xml @@ -81,22 +81,22 @@ Represents a wrapper class for a file handle. - . A value of 0 or -1 is an invalid file handle. - + . A value of 0 or -1 is an invalid file handle. + > [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - - - -## Examples - The following code example demonstrates how to open a file using the class and the unmanaged `CreateFile` function. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + + + +## Examples + The following code example demonstrates how to open a file using the class and the unmanaged `CreateFile` function. + :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32.SafeHandles/SafeFileHandle/Overview/sample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.SafeHandles.SafeFileHandle/vb/sample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.SafeHandles.SafeFileHandle/vb/sample.vb" id="Snippet1"::: + ]]> @@ -185,14 +185,14 @@ to reliably release the handle during the finalization phase; to prevent reliable release (not recommended). Initializes a new instance of the class. - class and the unmanaged `CreateFile` function. - + class and the unmanaged `CreateFile` function. + :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32.SafeHandles/SafeFileHandle/.ctor/sample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.SafeHandles.SafeFileHandle.ctor/vb/sample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.SafeHandles.SafeFileHandle.ctor/vb/sample.vb" id="Snippet1"::: + ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.xml b/xml/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.xml index b57ccd1f351..3535a33a029 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeHandleMinusOneIsInvalid.xml @@ -49,14 +49,14 @@ Provides a base class for Win32 safe handle implementations in which the value of -1 indicates an invalid handle. - class. It describes the format of an invalid handle that uses a value of -1. Further derivations of this class (for example, file or registry handles) can specialize this further. See the class for an example of a class that derives from . - + class. It describes the format of an invalid handle that uses a value of -1. Further derivations of this class (for example, file or registry handles) can specialize this further. See the class for an example of a class that derives from . + > [!WARNING] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`-`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`-`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> @@ -158,11 +158,11 @@ if the handle is not valid; otherwise, . - diff --git a/xml/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.xml b/xml/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.xml index 3c32c32c2c5..19e1fae594e 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeHandleZeroOrMinusOneIsInvalid.xml @@ -49,16 +49,16 @@ Provides a base class for Win32 safe handle implementations in which the value of either 0 or -1 indicates an invalid handle. - class. It describes the format of an invalid handle. For example, some handles use -1 as an invalid handle value, while others use 0. Further derivations of this class (for example, file or registry handles) can specialize this further. See the class for an example of a class that derives from . - + class. It describes the format of an invalid handle. For example, some handles use -1 as an invalid handle value, while others use 0. Further derivations of this class (for example, file or registry handles) can specialize this further. See the class for an example of a class that derives from . + > [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - - Use the class whenever you need to safely wrap an unmanaged resource that does not have an existing managed wrapper. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + + Use the class whenever you need to safely wrap an unmanaged resource that does not have an existing managed wrapper. + ]]> @@ -161,11 +161,11 @@ if the handle is not valid; otherwise, . - diff --git a/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedFileHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedFileHandle.xml index 6e836738d82..312943e4081 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedFileHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedFileHandle.xml @@ -61,7 +61,7 @@ Use the property to obtain the safe handle. > [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedViewHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedViewHandle.xml index e837afd9ded..1409bb64430 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedViewHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeMemoryMappedViewHandle.xml @@ -49,14 +49,14 @@ Provides a safe handle that represents a view of a block of unmanaged memory for random access. - property to obtain the safe handle. - + property to obtain the safe handle. + > [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/SafeNCryptKeyHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeNCryptKeyHandle.xml index 3b2eed1dd54..4e6d079a827 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeNCryptKeyHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeNCryptKeyHandle.xml @@ -53,14 +53,14 @@ Provides a safe handle that represents a key (NCRYPT_KEY_HANDLE). - [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> @@ -159,10 +159,10 @@ is . - is closed. - - -or- - + is closed. + + -or- + is invalid. diff --git a/xml/Microsoft.Win32.SafeHandles/SafeNCryptProviderHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeNCryptProviderHandle.xml index a072bbe802a..23f1bbe3776 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeNCryptProviderHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeNCryptProviderHandle.xml @@ -53,14 +53,14 @@ Provides a safe handle that represents a key storage provider (NCRYPT_PROV_HANDLE). - [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/SafeNCryptSecretHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeNCryptSecretHandle.xml index 5c606563cc2..0dadc0a6049 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeNCryptSecretHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeNCryptSecretHandle.xml @@ -53,14 +53,14 @@ Provides a safe handle that represents a secret agreement value (NCRYPT_SECRET_HANDLE). - [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/SafePipeHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafePipeHandle.xml index 9c239c672d9..0f189454844 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafePipeHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafePipeHandle.xml @@ -56,14 +56,14 @@ Represents a wrapper class for a pipe handle. - . A value of 0 or -1 is an invalid pipe handle. - + . A value of 0 or -1 is an invalid pipe handle. + > [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/SafeProcessHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeProcessHandle.xml index 5f2d9b5a552..1dc25974d7f 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeProcessHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeProcessHandle.xml @@ -126,13 +126,13 @@ to reliably let release the handle during the finalization phase; otherwise, . Initializes a new instance of the class from the specified handle, indicating whether to release the handle during the finalization phase. - [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> diff --git a/xml/Microsoft.Win32.SafeHandles/SafeRegistryHandle.xml b/xml/Microsoft.Win32.SafeHandles/SafeRegistryHandle.xml index 0c36c84dd5a..e1ecffd5dfb 100644 --- a/xml/Microsoft.Win32.SafeHandles/SafeRegistryHandle.xml +++ b/xml/Microsoft.Win32.SafeHandles/SafeRegistryHandle.xml @@ -42,14 +42,14 @@ Represents a safe handle to the Windows registry. - object, and then use it to create registry keys with the method. - -> [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - + object, and then use it to create registry keys with the method. + +> [!IMPORTANT] +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + ]]> @@ -116,11 +116,11 @@ to reliably release the handle during the finalization phase; to prevent reliable release. Initializes a new instance of the class. - diff --git a/xml/Microsoft.Win32/CommonDialog.xml b/xml/Microsoft.Win32/CommonDialog.xml index 614e98f86f2..85675ff79fc 100644 --- a/xml/Microsoft.Win32/CommonDialog.xml +++ b/xml/Microsoft.Win32/CommonDialog.xml @@ -130,11 +130,11 @@ Defines the common dialog box hook procedure that is overridden to add specific functionality to a common dialog box. Always returns . - handles dialog initialization by centering the dialog window, relative to the screen, and to set focus to the default control. - + handles dialog initialization by centering the dialog window, relative to the screen, and to set focus to the default control. + ]]> @@ -203,11 +203,11 @@ When overridden in a derived class, is called to display a particular type of Win32 common dialog. If the user clicks the **OK** button of the dialog that is displayed (e.g. , ), is returned; otherwise, . - @@ -220,17 +220,17 @@ Displays a common dialog. - performs initialization tasks for all common dialogs before calling . Since requires an owner window, attempts to assign one in the following order of precedence: - -- The current application's *active window*. - -- The current application's *parking window*. - -- An internally generated hidden window. - + performs initialization tasks for all common dialogs before calling . Since requires an owner window, attempts to assign one in the following order of precedence: + +- The current application's *active window*. + +- The current application's *parking window*. + +- An internally generated hidden window. + ]]> @@ -268,13 +268,13 @@ Displays a common dialog. If the user clicks the OK button of the dialog that is displayed (e.g. , ), is returned; otherwise, . - performs initialization tasks for all common dialogs before calling . - - In the current implementation, the derived classes ( and ) will only return `true` or `false`. - + performs initialization tasks for all common dialogs before calling . + + In the current implementation, the derived classes ( and ) will only return `true` or `false`. + ]]> @@ -315,13 +315,13 @@ Displays a common dialog. If the user clicks the OK button of the dialog that is displayed (e.g. , ), is returned; otherwise, . - performs initialization tasks for all common dialogs before calling . Additionally, the dialog that is eventually shown is assigned an owner window, which is specified by the `owner` parameter. - - In the current implementation, the derived classes ( and ) will only return `true` or `false`. - + performs initialization tasks for all common dialogs before calling . Additionally, the dialog that is eventually shown is assigned an owner window, which is specified by the `owner` parameter. + + In the current implementation, the derived classes ( and ) will only return `true` or `false`. + ]]> diff --git a/xml/Microsoft.Win32/FileDialog.xml b/xml/Microsoft.Win32/FileDialog.xml index 17cd141b23d..70c4372b0ca 100644 --- a/xml/Microsoft.Win32/FileDialog.xml +++ b/xml/Microsoft.Win32/FileDialog.xml @@ -457,17 +457,17 @@ Open and save file dialog boxes have a **Favorite Links** panel on the left side You can specify a subset of file types to be displayed by setting the property. Each file type can represent a specific type of file, such as the following: -- Word Documents (*.doc) +- Word Documents (*.doc) -- Excel Worksheets (*.xls) +- Excel Worksheets (*.xls) -- PowerPoint Presentations (*.ppt) +- PowerPoint Presentations (*.ppt) Alternatively, a file type can represent a group of related file types, such as the following: -- Office Files (*.doc, *.xls, *.ppt) +- Office Files (*.doc, *.xls, *.ppt) -- All Files (*.\*) +- All Files (*.\*) To specify a subset of the types of files that are displayed, you set the property with a string value (the *filter string*) that specifies one or more types of files to filter by. The following shows the expected format of the filter string: diff --git a/xml/Microsoft.Win32/Registry.xml b/xml/Microsoft.Win32/Registry.xml index cb5e1fa731a..ce525707b02 100644 --- a/xml/Microsoft.Win32/Registry.xml +++ b/xml/Microsoft.Win32/Registry.xml @@ -313,14 +313,14 @@ The following code example stores values of several data types in an example key The string `valueName` is not case-sensitive. > [!NOTE] -> A registry key can contain one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `valueName`. +> A registry key can contain one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `valueName`. Valid root names are HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_CLASSES_ROOT, HKEY_USERS, HKEY_PERFORMANCE_DATA, HKEY_CURRENT_CONFIG, and HKEY_DYN_DATA. For example, in Visual Basic the string "HKEY_CURRENT_USER\MyTestKey" accesses key/value pairs for the subkey "MyTestKey" in the HKEY_CURRENT_USER root. When the method retrieves expandable string values (), it expands environment strings using data from the local environment. If a value containing expandable references to environment variables has been stored as a string (), rather than as an expandable string (), does not expand it. You can expand such a string after it has been retrieved by calling the method. > [!NOTE] -> The recommended way to retrieve data from HKEY_PERFORMANCE_DATA is to use the class rather than the method. +> The recommended way to retrieve data from HKEY_PERFORMANCE_DATA is to use the class rather than the method. The and methods open and close registry keys each time they are used, so they do not perform as well as the methods of the class if you access a large number of values. @@ -456,7 +456,7 @@ The following code example stores values of several data types in an example key To obtain performance data from a remote system, you must use the method, with the computer name of the remote system and the Registry.PerformanceData key. This call retrieves a key representing the performance data for the remote system. To retrieve the data, call using this key, rather than the Registry.PerformanceData key. > [!NOTE] -> On Windows Server 2003, a user must at least belong to the Performance Monitor Users group in order to access subkeys of this base key. +> On Windows Server 2003, a user must at least belong to the Performance Monitor Users group in order to access subkeys of this base key. @@ -554,7 +554,7 @@ The following code example stores values of several data types in an example key Because many values can be stored in each key in the registry, you must use the `valueName` parameter to specify the particular value you want to set. > [!NOTE] -> A registry key can contain one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `valueName`. +> A registry key can contain one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `valueName`. If `valueName` does not exist in the key, it is created and the associated value is set to `value`. @@ -563,7 +563,7 @@ The following code example stores values of several data types in an example key Valid root names include HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_CLASSES_ROOT, HKEY_USERS, HKEY_PERFORMANCE_DATA, HKEY_CURRENT_CONFIG, and HKEY_DYN_DATA. > [!NOTE] -> The method opens a registry key, sets the value, and closes the key each time it is called. If you need to modify a large number of values, the method might provide better performance. The class also provides methods that allow you to add an access control list (ACL) to a registry key, to test the data type of a value before retrieving it, and to delete keys. +> The method opens a registry key, sets the value, and closes the key each time it is called. If you need to modify a large number of values, the method might provide better performance. The class also provides methods that allow you to add an access control list (ACL) to a registry key, to test the data type of a value before retrieving it, and to delete keys. This overload of stores 64-bit integers as strings (). To store 64-bit numbers as values, use the method overload. @@ -656,7 +656,7 @@ The following code example stores values of several data types in an example key Because many values can be stored in each key in the registry, you must use the `valueName` parameter to specify the particular value you want to set. > [!NOTE] -> A registry key can contain one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `valueName`. +> A registry key can contain one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `valueName`. If `valueName` does not exist in the key, it is created and the associated value is set to `value`. @@ -665,12 +665,12 @@ The following code example stores values of several data types in an example key Valid root names include HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_CLASSES_ROOT, HKEY_USERS, HKEY_PERFORMANCE_DATA, HKEY_CURRENT_CONFIG, and HKEY_DYN_DATA. > [!NOTE] -> The method opens a registry key, sets the value, and closes the key each time it is called. If you need to modify a large number of values, the method might provide better performance. The class also provides methods that allow you to add an access control list (ACL) to a registry key, to test the data type of a value before retrieving it, and to delete keys. +> The method opens a registry key, sets the value, and closes the key each time it is called. If you need to modify a large number of values, the method might provide better performance. The class also provides methods that allow you to add an access control list (ACL) to a registry key, to test the data type of a value before retrieving it, and to delete keys. If the type of the specified `value` does not match the specified `valueKind`, and the data cannot be converted, is thrown. For example, you can store a as a , but only if its value is less than the maximum value of a . You cannot store a single string value as a . > [!NOTE] -> If boxed values are passed for or , the conversion is done using the invariant culture. +> If boxed values are passed for or , the conversion is done using the invariant culture. ## Examples The following code example stores values of several data types in an example key, creating the key as it does so, and then retrieves and displays the values. The example demonstrates storing and retrieving the default (nameless) name/value pair, and the use of `defaultValue` when a name/value pair does not exist. diff --git a/xml/Microsoft.Win32/RegistryKey.xml b/xml/Microsoft.Win32/RegistryKey.xml index d17c6bfa608..06be1b59a9f 100644 --- a/xml/Microsoft.Win32/RegistryKey.xml +++ b/xml/Microsoft.Win32/RegistryKey.xml @@ -52,34 +52,34 @@ Represents a key-level node in the Windows registry. This class is a registry encapsulation. - , use one of the static members of the class. - - The registry acts as a central repository of information for the operating system and the applications on a computer. The registry is organized in a hierarchical format, based on a logical ordering of the elements stored within it (please see for the base-level items in this hierarchy). When storing information in the registry, select the appropriate location based on the type of information being stored. Be sure to avoid destroying information created by other applications, because this can cause those applications to exhibit unexpected behavior, and can also have an adverse effect upon your own application. - + , use one of the static members of the class. + + The registry acts as a central repository of information for the operating system and the applications on a computer. The registry is organized in a hierarchical format, based on a logical ordering of the elements stored within it (please see for the base-level items in this hierarchy). When storing information in the registry, select the appropriate location based on the type of information being stored. Be sure to avoid destroying information created by other applications, because this can cause those applications to exhibit unexpected behavior, and can also have an adverse effect upon your own application. + > [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - - Registry keys are the base unit of organization in the registry, and can be compared to folders in File Explorer. A particular key can have subkeys, just as a folder can have subfolders. Each key can be deleted, as long as the user has the appropriate permissions to do so, and the key is not a base key or at the level directly under the base keys. Each key can also have multiple values associated with it (a value can be compared to a file), which are used to store the information - for example, information about an application installed on the computer. Each value holds one particular piece of information, which can be retrieved or updated when required. For instance, you can create a for your company, under the key HKEY_LOCAL_MACHINE\Software, and then a subkey for each application that your company creates. Each subkey holds the information specific to that application, such as color settings, screen location and size, or recognized file extensions. - - Note that information stored in the registry is available to other applications and users, and therefore should not be used to store security data or critical application information. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + + Registry keys are the base unit of organization in the registry, and can be compared to folders in File Explorer. A particular key can have subkeys, just as a folder can have subfolders. Each key can be deleted, as long as the user has the appropriate permissions to do so, and the key is not a base key or at the level directly under the base keys. Each key can also have multiple values associated with it (a value can be compared to a file), which are used to store the information - for example, information about an application installed on the computer. Each value holds one particular piece of information, which can be retrieved or updated when required. For instance, you can create a for your company, under the key HKEY_LOCAL_MACHINE\Software, and then a subkey for each application that your company creates. Each subkey holds the information specific to that application, such as color settings, screen location and size, or recognized file extensions. + + Note that information stored in the registry is available to other applications and users, and therefore should not be used to store security data or critical application information. + > [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - - Starting in the .NET Framework 4, the length of a registry key is no longer limited to 255 characters. - - - -## Examples - The following code example shows how to create a subkey under HKEY_CURRENT_USER, manipulate its contents, and then delete the subkey. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + + Starting in the .NET Framework 4, the length of a registry key is no longer limited to 255 characters. + + + +## Examples + The following code example shows how to create a subkey under HKEY_CURRENT_USER, manipulate its contents, and then delete the subkey. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet1"::: + ]]> @@ -118,22 +118,22 @@ Closes the key and flushes it to disk if its contents have been modified. - class. - + class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: + ]]> @@ -186,23 +186,23 @@ Creates a new subkey or opens an existing subkey for write access. The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned. - [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - - - -## Examples - The following code example shows how to create a subkey under HKEY_CURRENT_USER, manipulate its contents, and then delete the subkey. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + + + +## Examples + The following code example shows how to create a subkey under HKEY_CURRENT_USER, manipulate its contents, and then delete the subkey. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet1"::: + ]]> @@ -210,10 +210,10 @@ The user does not have the permissions required to create or open the registry key. The on which this method is being invoked is closed (closed keys cannot be accessed). The cannot be written to; for example, it was not opened as a writable key , or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -262,16 +262,16 @@ Creates a new subkey or opens an existing subkey for write access, using the specified permission check option. The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned. - [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - - In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + + In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. + ]]> @@ -281,10 +281,10 @@ contains an invalid value. The on which this method is being invoked is closed (closed keys cannot be accessed). The cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -335,26 +335,26 @@ Creates a new subkey or opens an existing subkey with the specified access. Available starting with .NET Framework 4.6. The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned. - [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - - In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + + In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. + ]]> is . The user does not have the permissions required to create or open the registry key. The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -411,22 +411,22 @@ Creates a new subkey or opens an existing subkey for write access, using the specified permission check option and registry security. The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned. - method creates a registry key that has the access control specified by the `registrySecurity` parameter. The object that is returned represents the registry key, but that object is not restricted by the access control specified in the `registrySecurity` parameter. - - If `permissionCheck` is , the key is opened for read/write access. If `permissionCheck` is , the key is opened for read access. - - For backward compatibility, the key is opened for reading and writing if `permissionCheck` is and the parent key also has . If the parent key has any other setting, read/write status is controlled by the parent key's setting. - - In order to perform this action, the user must have permissions at this level and below in the registry hierarchy. - + method creates a registry key that has the access control specified by the `registrySecurity` parameter. The object that is returned represents the registry key, but that object is not restricted by the access control specified in the `registrySecurity` parameter. + + If `permissionCheck` is , the key is opened for read/write access. If `permissionCheck` is , the key is opened for read access. + + For backward compatibility, the key is opened for reading and writing if `permissionCheck` is and the parent key also has . If the parent key has any other setting, read/write status is controlled by the parent key's setting. + + In order to perform this action, the user must have permissions at this level and below in the registry hierarchy. + > [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - - In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + + In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. + ]]> @@ -436,10 +436,10 @@ contains an invalid value. The on which this method is being invoked is closed (closed keys cannot be accessed). The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -492,16 +492,16 @@ Creates a new subkey or opens an existing subkey with the specified access. Available starting with .NET Framework 4.6. The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned. - [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - - In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + + In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. + ]]> @@ -510,10 +510,10 @@ does not specify a valid Option. The user does not have the permissions required to create or open the registry key. The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key, or an attempt to create a key in the root. @@ -568,21 +568,21 @@ Creates a subkey or opens a subkey for write access, using the specified permission check and registry options. The newly created subkey, or if the operation failed. - object, specify an empty string ("") for `subkey`. - + object, specify an empty string ("") for `subkey`. + ]]> is . The current object is closed (closed keys cannot be accessed). The current object cannot be written to; for example, it was not opened as a writable key, or the user does not have the required access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key or an attempt to create a key in the root. The user does not have the permissions required to create or open the registry key. @@ -641,21 +641,21 @@ Creates a subkey or opens a subkey for write access, using the specified permission check option, registry option, and registry security. The newly created subkey, or if the operation failed. - object, specify an empty string ("") for `subkey`. - + object, specify an empty string ("") for `subkey`. + ]]> is . The current object is closed. Closed keys cannot be accessed. The current object cannot be written to; for example, it was not opened as a writable key, or the user does not have the required access rights. - The nesting level exceeds 510. - - -or- - + The nesting level exceeds 510. + + -or- + A system error occurred, such as deletion of the key or an attempt to create a key in the root. The user does not have the permissions required to create or open the registry key. @@ -706,22 +706,22 @@ The name of the subkey to delete. This string is not case-sensitive. Deletes the specified subkey. - . - - Use caution when deleting registry keys. - - - -## Examples - The following example demonstrates how to use . - + . + + Use caution when deleting registry keys. + + + +## Examples + The following example demonstrates how to use . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source2.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source2.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source2.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source2.vb" id="Snippet5"::: + ]]> The has child subkeys. @@ -782,13 +782,13 @@ Indicates whether an exception should be raised if the specified subkey cannot be found. If this argument is and the specified subkey does not exist, an exception is raised. If this argument is and the specified subkey does not exist, no action is taken. Deletes the specified subkey, and specifies whether an exception is raised if the subkey is not found. - . - - Use caution when deleting registry keys. - + . + + Use caution when deleting registry keys. + ]]> @@ -858,31 +858,31 @@ The subkey to delete. This string is not case-sensitive. Deletes a subkey and any child subkeys recursively. - [!CAUTION] -> Deleting a particular key will remove all entries below the key in the tree. No warning will be provided. If you want to delete a subkey only when it has no child subkeys, use the method. - - - -## Examples - This code example is part of a larger example provided for the class. - +> Deleting a particular key will remove all entries below the key in the tree. No warning will be provided. If you want to delete a subkey only when it has no child subkeys, use the method. + + + +## Examples + This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: + ]]> is . - Deletion of a root hive is attempted. - - -or- - + Deletion of a root hive is attempted. + + -or- + does not specify a valid registry subkey. An I/O error has occurred. The user does not have the permissions required to delete the key. @@ -942,10 +942,10 @@ Indicates whether an exception should be raised if the specified subkey cannot be found. If this argument is and the specified subkey does not exist, an exception is raised. If this argument is and the specified subkey does not exist, no action is taken. Deletes the specified subkey and any child subkeys recursively, and specifies whether an exception is raised if the subkey is not found. To be added. - An attempt was made to delete the root hive of the tree. - - -or- - + An attempt was made to delete the root hive of the tree. + + -or- + does not specify a valid registry subkey, and is . is . @@ -1000,15 +1000,15 @@ The name of the value to delete. Deletes the specified value from this key. - class. - + class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet3"::: + ]]> @@ -1068,18 +1068,18 @@ Indicates whether an exception should be raised if the specified value cannot be found. If this argument is and the specified value does not exist, an exception is raised. If this argument is and the specified value does not exist, no action is taken. Deletes the specified value from this key, and specifies whether an exception is raised if the value is not found. - - is not a valid reference to a value and is . - - -or- - + is not a valid reference to a value and is . + + -or- + is . The user does not have the permissions required to delete the value. The being manipulated is closed (closed keys cannot be accessed). @@ -1132,16 +1132,16 @@ Releases all resources used by the current instance of the class. - . The `Dispose` method leaves the in an unusable state. After calling `Dispose`, you must release all references to the so the garbage collector can reclaim the memory that the was occupying. - - For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). - + . The `Dispose` method leaves the in an unusable state. After calling `Dispose`, you must release all references to the so the garbage collector can reclaim the memory that the was occupying. + + For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). + > [!NOTE] -> Always call `Dispose` before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. - +> Always call `Dispose` before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. + ]]> @@ -1210,17 +1210,17 @@ Writes all the attributes of the specified open registry key into the registry. - , the `Flush` function returns only when all the data has been written to the registry. - - The `Flush` function might also write out parts of or all of the other keys. Calling this function excessively can have a negative effect on an application's performance. - - An application should only call `Flush` if it must be absolute certain that registry changes are recorded to disk. In general, `Flush` rarely, if ever, need be used. - + , the `Flush` function returns only when all the data has been written to the registry. + + The `Flush` function might also write out parts of or all of the other keys. Calling this function excessively can have a negative effect on an application's performance. + + An application should only call `Flush` if it must be absolute certain that registry changes are recorded to disk. In general, `Flush` rarely, if ever, need be used. + ]]> @@ -1335,13 +1335,13 @@ Creates a registry key from a specified handle and registry view setting. A registry key. - but the machine is running a 32-bit operating system, the returned key will use the view. - + but the machine is running a 32-bit operating system, the returned key will use the view. + ]]> @@ -1399,13 +1399,13 @@ Returns the access control security for the current registry key. An object that describes the access control permissions on the registry key represented by the current . - method overload with the bitwise combination of the following flags: , , and . You can use that overload to search for other permissions. - - The user must have rights to call this method. - + method overload with the bitwise combination of the following flags: , , and . You can use that overload to search for other permissions. + + The user must have rights to call this method. + ]]> The user does not have the necessary permissions. @@ -1454,13 +1454,13 @@ Returns the specified sections of the access control security for the current registry key. An object that describes the access control permissions on the registry key represented by the current . - , , and . Alternatively, you can use the method overload, which specifies exactly that combination of values. - - The user must have rights to call this method. - + , , and . Alternatively, you can use the method overload, which specifies exactly that combination of values. + + The user must have rights to call this method. + ]]> The user does not have the necessary permissions. @@ -1509,20 +1509,20 @@ Retrieves an array of strings that contains all the subkey names. An array of strings that contains the names of the subkeys for the current key. - class. - + class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: + ]]> The user does not have the permissions required to read from the key. @@ -1587,32 +1587,32 @@ Retrieves the value associated with the specified name. Returns if the name/value pair does not exist in the registry. The value associated with , or if is not found. - [!NOTE] -> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `name`. - - When the method retrieves expandable string values (), it expands environment strings using data from the local environment. To retrieve expandable string values from the registry on a remote computer, use the method overload to specify that you do not want environment strings expanded. - +> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `name`. + + When the method retrieves expandable string values (), it expands environment strings using data from the local environment. To retrieve expandable string values from the registry on a remote computer, use the method overload to specify that you do not want environment strings expanded. + > [!NOTE] -> If a value containing expandable references to environment variables has been stored as a string (), rather than as an expandable string (), does not expand it. You can expand such a string after it has been retrieved by calling the method. - +> If a value containing expandable references to environment variables has been stored as a string (), rather than as an expandable string (), does not expand it. You can expand such a string after it has been retrieved by calling the method. + > [!NOTE] -> The recommended way to retrieve data from the key is to use the class rather than the method. -> -> does not support reading values of type REG_NONE or REG_LINK. In both cases, the default value (`null`) is returned instead of the actual value. - - - -## Examples - The following code example creates a test key and adds values of different data types to the key. The example then reads the name/value pairs and displays them to the console, using the method to retrieve the corresponding registry data types. - +> The recommended way to retrieve data from the key is to use the class rather than the method. +> +> does not support reading values of type REG_NONE or REG_LINK. In both cases, the default value (`null`) is returned instead of the actual value. + + + +## Examples + The following code example creates a test key and adds values of different data types to the key. The example then reads the name/value pairs and displays them to the console, using the method to retrieve the corresponding registry data types. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/GetValue/source2.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/VB/source.vb" id="Snippet1"::: + ]]> The user does not have the permissions required to read from the registry key. @@ -1679,33 +1679,33 @@ Retrieves the value associated with the specified name. If the name is not found, returns the default value that you provide. The value associated with , with any embedded environment variables left unexpanded, or if is not found. - to handle the case where a name does not exist yet - for example, the first time your application is run. Whenever you call this overload, use the `defaultValue` parameter to specify the value to return if `name` does not exist. - + to handle the case where a name does not exist yet - for example, the first time your application is run. Whenever you call this overload, use the `defaultValue` parameter to specify the value to return if `name` does not exist. + > [!NOTE] -> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `name`. - - When the method retrieves expandable string values (), it expands environment strings using data from the local environment. To retrieve expandable string values from the registry on a remote computer, use the overload to specify that you do not want environment strings expanded. - +> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `name`. + + When the method retrieves expandable string values (), it expands environment strings using data from the local environment. To retrieve expandable string values from the registry on a remote computer, use the overload to specify that you do not want environment strings expanded. + > [!NOTE] -> If a value containing expandable references to environment variables has been stored as a string (), rather than as an expandable string (), the method does not expand it. You can expand such a string after it has been retrieved by calling the method. - +> If a value containing expandable references to environment variables has been stored as a string (), rather than as an expandable string (), the method does not expand it. You can expand such a string after it has been retrieved by calling the method. + > [!NOTE] -> The recommended way to retrieve data from the key is to use the class rather than the method. -> -> does not support reading values of type REG_NONE or REG_LINK. In both cases, the default value (`null`) is returned instead of the actual value. - - - -## Examples - The following code example creates a test key with a value and retrieves that value. The example then attempts to retrieve a nonexistent value from the key; in this case the method returns the specified default value. - +> The recommended way to retrieve data from the key is to use the class rather than the method. +> +> does not support reading values of type REG_NONE or REG_LINK. In both cases, the default value (`null`) is returned instead of the actual value. + + + +## Examples + The following code example creates a test key with a value and retrieves that value. The example then attempts to retrieve a nonexistent value from the key; in this case the method returns the specified default value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_Classic/classic RegistryKey.GetValue Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/GetValue/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_Classic/classic RegistryKey.GetValue Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_Classic/classic RegistryKey.GetValue Example/VB/source.vb" id="Snippet1"::: + ]]> The user does not have the permissions required to read from the registry key. @@ -1777,27 +1777,27 @@ Retrieves the value associated with the specified name and retrieval options. If the name is not found, returns the default value that you provide. The value associated with , processed according to the specified , or if is not found. - when retrieving a registry value of type to retrieve the string without expanding embedded environment variables. - - Use the `defaultValue` parameter to specify the value to return if `name` does not exist. - + when retrieving a registry value of type to retrieve the string without expanding embedded environment variables. + + Use the `defaultValue` parameter to specify the value to return if `name` does not exist. + > [!NOTE] -> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `name`. -> -> does not support reading values of type REG_NONE or REG_LINK. In both cases, the default value (`null`) is returned instead of the actual value. - - - -## Examples - The following code sample creates a test key, adds a value with an embedded environment variable, and retrieves the value in both expanded and unexpanded forms. - +> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve this unnamed value, specify either `null` or the empty string ("") for `name`. +> +> does not support reading values of type REG_NONE or REG_LINK. In both cases, the default value (`null`) is returned instead of the actual value. + + + +## Examples + The following code sample creates a test key, adds a value with an embedded environment variable, and retrieves the value in both expanded and unexpanded forms. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/RegistryValueOptions/CPP/RegistryValueOptions.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/GetValue/source1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryValueOptions/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryValueOptions/VB/source.vb" id="Snippet1"::: + ]]> The user does not have the permissions required to read from the registry key. @@ -1862,32 +1862,32 @@ Retrieves the registry data type of the value associated with the specified name. The registry data type of the value associated with . - [!NOTE] -> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve the registry data type of this unnamed value, specify either `null` or the empty string ("") for `name`. - - For a description of supported registry data types, please see the enumeration. - - - -## Examples - The following code example creates a test key and adds values of different data types to the key. The example then reads the name/value pairs and displays them to the console, using the method to retrieve the corresponding registry data types. - +> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To retrieve the registry data type of this unnamed value, specify either `null` or the empty string ("") for `name`. + + For a description of supported registry data types, please see the enumeration. + + + +## Examples + The following code example creates a test key and adds values of different data types to the key. The example then reads the name/value pairs and displays them to the console, using the method to retrieve the corresponding registry data types. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/GetValue/source2.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/VB/source.vb" id="Snippet1"::: + ]]> The user does not have the permissions required to read from the registry key. The that contains the specified value is closed (closed keys cannot be accessed). - The subkey that contains the specified value does not exist. - - -or- - + The subkey that contains the specified value does not exist. + + -or- + The name/value pair specified by does not exist. The user does not have the necessary registry rights. @@ -1937,22 +1937,22 @@ Retrieves an array of strings that contains all the value names associated with this key. An array of strings that contains the value names for the current key. - method includes the empty string. - - - -## Examples - This code example is part of a larger example provided for the class. - + method includes the empty string. + + + +## Examples + This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: + ]]> The user does not have the permissions required to read from the registry key. @@ -2051,20 +2051,20 @@ Retrieves the name of the key. The absolute (qualified) name of the key. - class. - + class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: + ]]> The is closed (closed keys cannot be accessed). @@ -2178,22 +2178,22 @@ Opens a new that represents the requested key on a remote machine. The requested registry key. - . The requested key must be a root key on the remote machine, and is identified by the appropriate value. - - In order for a key to be opened remotely, both the server and client machines must be running the remote registry service, and have remote administration enabled. - - - -## Examples - The following code example shows how to open a registry key on a remote computer and enumerate the values of the key. The remote computer must be running the remote registry service. Specify the name of the remote computer as a command-line argument when invoking the program. - + . The requested key must be a root key on the remote machine, and is identified by the appropriate value. + + In order for a key to be opened remotely, both the server and client machines must be running the remote registry service, and have remote administration enabled. + + + +## Examples + The following code example shows how to open a registry key on a remote computer and enumerate the values of the key. The remote computer must be running the remote registry service. Specify the name of the remote computer as a command-line argument when invoking the program. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey.OpenRemoteBaseKey/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryHive/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey.OpenRemoteBaseKey/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey.OpenRemoteBaseKey/VB/source.vb" id="Snippet1"::: + ]]> @@ -2256,15 +2256,15 @@ Opens a new registry key that represents the requested key on a remote machine with the specified view. The requested registry key. - . The requested key must be a root key on the remote machine, and is identified by the appropriate value. - - In order for a key to be opened remotely, both the server and client machines must be running the remote registry service, and have remote administration enabled. - - On the 64-bit versions of Windows, portions of the registry are stored separately for 32-bit and 64-bit applications. There is a 32-bit view for 32-bit applications and a 64-bit view for 64-bit applications. If `view` is but the remote machine is running a 32-bit operating system, the returned key will use the view. - + . The requested key must be a root key on the remote machine, and is identified by the appropriate value. + + In order for a key to be opened remotely, both the server and client machines must be running the remote registry service, and have remote administration enabled. + + On the 64-bit versions of Windows, portions of the registry are stored separately for 32-bit and 64-bit applications. There is a 32-bit view for 32-bit applications and a 64-bit view for 64-bit applications. If `view` is but the remote machine is running a 32-bit operating system, the returned key will use the view. + ]]> @@ -2331,24 +2331,24 @@ Retrieves a subkey as read-only. The subkey requested, or if the operation failed. - method that allows you to specify write access, such as the overload or the overload. - - If the specified subkey cannot be found, then `null` is returned. - - In order to use the method, you must have an instance of . To get an instance of , use the one of the static members of the class. - - - -## Examples - The following code example creates a test key and uses the method to open it, demonstrating both overloads of the method. - + method that allows you to specify write access, such as the overload or the overload. + + If the specified subkey cannot be found, then `null` is returned. + + In order to use the method, you must have an instance of . To get an instance of , use the one of the static members of the class. + + + +## Examples + The following code example creates a test key and uses the method to open it, demonstrating both overloads of the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/RegistryKey.OpenSubKey/CPP/opensubkey.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/OpenSubKey/opensubkey.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryKey.OpenSubKey/VB/opensubkey.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryKey.OpenSubKey/VB/opensubkey.vb" id="Snippet1"::: + ]]> @@ -2418,23 +2418,23 @@ Retrieves the specified subkey for read or read/write access. The subkey requested, or if the operation failed. - , the key is opened for reading and writing; if `permissionCheck` is or , the key is opened for reading unless the parent key was opened with . - - In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. - - - -## Examples - The following code example creates a subkey containing 100 key/value pairs and closes it. The example opens the subkey with , records the time it takes to read all the values, and closes the subkey. The example opens the subkey with and records the time it takes to read all the values. Finally, the example computes and displays the percentage improvement. - + , the key is opened for reading and writing; if `permissionCheck` is or , the key is opened for reading unless the parent key was opened with . + + In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. + + + +## Examples + The following code example creates a subkey containing 100 key/value pairs and closes it. The example opens the subkey with , records the time it takes to read all the values, and closes the subkey. The example opens the subkey with and records the time it takes to read all the values. Finally, the example computes and displays the percentage improvement. + :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/OpenSubKey/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryKey.OpenSubKey_PermCheck/vb/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryKey.OpenSubKey_PermCheck/vb/source.vb" id="Snippet1"::: + ]]> @@ -2505,24 +2505,24 @@ Retrieves a specified subkey, and specifies whether write access is to be applied to the key. The subkey requested, or if the operation failed. - method, you must have an instance of the method. To get an instance of , use one of the static members of the class. - - - -## Examples - The following code example creates a test key and uses the method to open it, demonstrating both overloads of the method. - + method, you must have an instance of the method. To get an instance of , use one of the static members of the class. + + + +## Examples + The following code example creates a test key and uses the method to open it, demonstrating both overloads of the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/RegistryKey.OpenSubKey/CPP/opensubkey.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/OpenSubKey/opensubkey.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryKey.OpenSubKey/VB/opensubkey.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistryKey.OpenSubKey/VB/opensubkey.vb" id="Snippet1"::: + ]]> @@ -2593,11 +2593,11 @@ Retrieves a subkey with the specified name and access rights. Available starting with .NET Framework 4.6. The subkey requested, or if the operation failed. - method that allows you to specify write access. - + method that allows you to specify write access. + ]]> @@ -2662,17 +2662,17 @@ Retrieves the specified subkey for read or read/write access, requesting the specified access rights. The subkey requested, or if the operation failed. - , the key is opened for reading and writing; if `permissionCheck` is or , the key is opened for reading unless the parent key was opened with . - - The access specified for `permissionCheck` takes precedence over the access specified for `rights`. For example, if you specify for `permissionCheck` and for `rights`, an attempt to write to the subkey throws an exception. - - In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. - + , the key is opened for reading and writing; if `permissionCheck` is or , the key is opened for reading unless the parent key was opened with . + + The access specified for `permissionCheck` takes precedence over the access specified for `rights`. For example, if you specify for `permissionCheck` and for `rights`, an attempt to write to the subkey throws an exception. + + In order to use the method, you must have an instance of the class. To get an instance of , use one of the static members of the class. + ]]> @@ -2681,10 +2681,10 @@ contains an invalid value. The is closed (closed keys cannot be accessed). - includes invalid registry rights values. - - -or- - + includes invalid registry rights values. + + -or- + The user does not have the requested permissions. @@ -2735,25 +2735,25 @@ The access control security to apply to the current subkey. Applies Windows access control security to an existing registry key. - method to obtain a object representing the existing Windows access control security, modify that object, and then use the method to update security for the key. - + method to obtain a object representing the existing Windows access control security, modify that object, and then use the method to update security for the key. + > [!CAUTION] -> The object specified for `registrySecurity` replaces the existing security for the registry key. To add permissions for a new user, use the method to obtain the existing access control security, and then modify it. - - - -## Examples - The following code example creates a test key. The current user is allowed and rights but denied and rights. Subsequent attempts to manipulate the key succeed or fail depending on these permissions. - - Before the key is deleted, the code pauses. You can switch to the registry editor and verify that the same access rights apply when the key is accessed using the registry editor. (This works best if you use **RunAs** from the command line to run the registry editor and the sample code as a local user without administrator rights. The registry editor always allows an administrator to change permissions, even if the particular administrator has been denied those rights. If you have defined a local user named TestUser, the command `runas /user:TestUser cmd` opens a command window from which you can run the registry editor and then the sample code.) - +> The object specified for `registrySecurity` replaces the existing security for the registry key. To add permissions for a new user, use the method to obtain the existing access control security, and then modify it. + + + +## Examples + The following code example creates a test key. The current user is allowed and rights but denied and rights. Subsequent attempts to manipulate the key succeed or fail depending on these permissions. + + Before the key is deleted, the code pauses. You can switch to the registry editor and verify that the same access rights apply when the key is accessed using the registry editor. (This works best if you use **RunAs** from the command line to run the registry editor and the sample code as a local user without administrator rights. The registry editor always allows an administrator to change permissions, even if the particular administrator has been denied those rights. If you have defined a local user named TestUser, the command `runas /user:TestUser cmd` opens a command window from which you can run the registry editor and then the sample code.) + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/RegistrySecurity101/cpp/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/SetAccessControl/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistrySecurity101/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/RegistrySecurity101/VB/source.vb" id="Snippet1"::: + ]]> The current object represents a key with access control security, and the caller does not have rights. @@ -2818,34 +2818,34 @@ The data to be stored. Sets the specified name/value pair. - [!NOTE] -> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `name`. - - In order to set values in a key, you must open the key with write access. After you have opened a key with write access, you can change any of the name/value pairs in that key. - - If the specified `name` does not exist in the key, it is created and the associated value is set to `value`. - - This overload of stores 64-bit integers as strings (). To store 64-bit numbers as values, use the overload that specifies . - - This overload of stores all string values as , even if they contain expandable references to environment variables. To save string values as expandable strings (), use the overload that specifies . - - Numeric types other than 32-bit integers are stored as strings by this method overload. Enumeration elements are stored as strings containing the element names. - +> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `name`. + + In order to set values in a key, you must open the key with write access. After you have opened a key with write access, you can change any of the name/value pairs in that key. + + If the specified `name` does not exist in the key, it is created and the associated value is set to `value`. + + This overload of stores 64-bit integers as strings (). To store 64-bit numbers as values, use the overload that specifies . + + This overload of stores all string values as , even if they contain expandable references to environment variables. To save string values as expandable strings (), use the overload that specifies . + + Numeric types other than 32-bit integers are stored as strings by this method overload. Enumeration elements are stored as strings containing the element names. + > [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - -## Examples - The following code example shows how the method determines the registry data type when it sets values. The example creates a test key and adds values of different data types to the key. The example then reads the name/value pairs and displays them to the console, using the method to display the corresponding registry data types. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + +## Examples + The following code example shows how the method determines the registry data type when it sets values. The example creates a test key and adds values of different data types to the key. The example then reads the name/value pairs and displays them to the console, using the method to display the corresponding registry data types. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey.SetValue1/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/SetValue/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey.SetValue1/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey.SetValue1/VB/source.vb" id="Snippet1"::: + ]]> @@ -2919,36 +2919,36 @@ The registry data type to use when storing the data. Sets the value of a name/value pair in the registry key, using the specified registry data type. - [!NOTE] -> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `name`. - - In order to set values in a key, you must open the key with write access. After you have opened a key with write access, you can change any of the name/value pairs in that key. - - If the specified `name` does not exist in the key, it is created, and the associated value is set to `value`. - +> A registry key can have one value that is not associated with any name. When this unnamed value is displayed in the registry editor, the string "(Default)" appears instead of a name. To set this unnamed value, specify either `null` or the empty string ("") for `name`. + + In order to set values in a key, you must open the key with write access. After you have opened a key with write access, you can change any of the name/value pairs in that key. + + If the specified `name` does not exist in the key, it is created, and the associated value is set to `value`. + > [!NOTE] -> Specifying the registry data type is the same as using the overload. - - If the type of the specified `value` does not match the specified `valueKind`, and the data cannot be converted, is thrown. For example, you can store a as a , but only if its value is less than the maximum value of a . You cannot store a single string value as a . - +> Specifying the registry data type is the same as using the overload. + + If the type of the specified `value` does not match the specified `valueKind`, and the data cannot be converted, is thrown. For example, you can store a as a , but only if its value is less than the maximum value of a . You cannot store a single string value as a . + > [!NOTE] -> If boxed values are passed for or , the conversion is done using the invariant culture. - +> If boxed values are passed for or , the conversion is done using the invariant culture. + > [!CAUTION] -> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. - -## Examples - The following code example creates a test key and uses the method to store several values, specifying the registry data type for each value. The example then reads the name/value pairs and displays them to the console, using the method to display the corresponding registry data types. - +> Do not expose objects in such a way that a malicious program could create thousands of meaningless subkeys or key/value pairs. For example, do not allow callers to enter arbitrary keys or values. + +## Examples + The following code example creates a test key and uses the method to store several values, specifying the registry data type for each value. The example then reads the name/value pairs and displays them to the console, using the method to display the corresponding registry data types. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/GetValue/source2.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryValueKind/VB/source.vb" id="Snippet1"::: + ]]> @@ -3004,20 +3004,20 @@ Retrieves the count of subkeys of the current key. The number of subkeys of the current key. - class. - + class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: + ]]> The user does not have read permission for the key. @@ -3055,7 +3055,7 @@ . ]]> @@ -3103,20 +3103,20 @@ This method has the same effect as calling Retrieves a string representation of this key. A string representing the key. If the specified key is invalid (cannot be found) then is returned. - class. - + class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet4"::: + ]]> The being accessed is closed (closed keys cannot be accessed). @@ -3163,20 +3163,20 @@ This method has the same effect as calling Retrieves the count of values in the key. The number of name/value pairs in the key. - method and specifying either `null` or the empty string ("") for `name`. If the default value has never been set, it does not contribute to the total count returned by the property; once it has been set, however, it is always counted. - - - -## Examples - This code example is part of a larger example provided for the class. - + method and specifying either `null` or the empty string ("") for `name`. If the default value has never been set, it does not contribute to the total count returned by the property; once it has been set, however, it is always counted. + + + +## Examples + This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/RegistryKey/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Microsoft.Win32.RegistryKey2/VB/source.vb" id="Snippet2"::: + ]]> The user does not have read permission for the key. @@ -3225,19 +3225,19 @@ This method has the same effect as calling Gets the view that was used to create the registry key. - The view that was used to create the registry key. - - -or- - + The view that was used to create the registry key. + + -or- + , if no view was used. - . - + . + ]]> diff --git a/xml/Microsoft.Win32/SystemEvents.xml b/xml/Microsoft.Win32/SystemEvents.xml index de30934ceeb..eedb6606e20 100644 --- a/xml/Microsoft.Win32/SystemEvents.xml +++ b/xml/Microsoft.Win32/SystemEvents.xml @@ -39,63 +39,63 @@ Provides access to system event notifications. This class cannot be inherited. - class provides the ability to respond to specific types of system events. - - When a system event is raised, any delegates attached to the event are called using the thread that monitors for system events. Therefore, you should make any calls from your event handlers thread-safe. If you need to call a system event that is not exposed as a member of this class, you can use the method. - + class provides the ability to respond to specific types of system events. + + When a system event is raised, any delegates attached to the event are called using the thread that monitors for system events. Therefore, you should make any calls from your event handlers thread-safe. If you need to call a system event that is not exposed as a member of this class, you can use the method. + > [!CAUTION] -> Do not perform time-consuming processing on the thread that raises a system event handler because it might prevent other applications from functioning. - +> Do not perform time-consuming processing on the thread that raises a system event handler because it might prevent other applications from functioning. + > [!NOTE] -> Some system events might not be raised on Windows Vista. Be sure to verify that your application works as expected on Windows Vista. - - - -## Examples - This section contains two examples. The first example shows how to use system events in an ordinary application, and the second example shows how to use system events in a Windows service. - - **Example 1** - - The following code example registers interest in some system events and then waits for any of those events to occur. The output shown occurs if the user changes the display resolution. - +> Some system events might not be raised on Windows Vista. Be sure to verify that your application works as expected on Windows Vista. + + + +## Examples + This section contains two examples. The first example shows how to use system events in an ordinary application, and the second example shows how to use system events in a Windows service. + + **Example 1** + + The following code example registers interest in some system events and then waits for any of those events to occur. The output shown occurs if the user changes the display resolution. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/SystemEvents/cpp/SystemEvents.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/SystemEvents/Overview/SystemEvents.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet1"::: - - **Example 2** - - The following code example demonstrates a very simple Windows service that handles the and events. The example includes a service named `SimpleService`, a form named `HiddenForm`, and an installer. The form provides the message loop that is required by system events. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet1"::: + + **Example 2** + + The following code example demonstrates a very simple Windows service that handles the and events. The example includes a service named `SimpleService`, a form named `HiddenForm`, and an installer. The form provides the message loop that is required by system events. + > [!NOTE] -> Services do not have message loops, unless they are allowed to interact with the desktop. If the message loop is not provided by a hidden form, as in this example, the service must be run under the local system account, and manual intervention is required to enable interaction with the desktop. That is, the administrator must manually check the **Allow service to interact with desktop** check box on the **Log On** tab of the service properties dialog box. In that case, a message loop is automatically provided. This option is available only when the service is run under the local system account. Interaction with the desktop cannot be enabled programmatically. - - The service in this example starts a thread that runs an instance of `HiddenForm`. The events are hooked up and handled in the form. The events must be hooked up in the load event of the form, to make sure that the form is completely loaded first; otherwise the events will not be raised. - +> Services do not have message loops, unless they are allowed to interact with the desktop. If the message loop is not provided by a hidden form, as in this example, the service must be run under the local system account, and manual intervention is required to enable interaction with the desktop. That is, the administrator must manually check the **Allow service to interact with desktop** check box on the **Log On** tab of the service properties dialog box. In that case, a message loop is automatically provided. This option is available only when the service is run under the local system account. Interaction with the desktop cannot be enabled programmatically. + + The service in this example starts a thread that runs an instance of `HiddenForm`. The events are hooked up and handled in the form. The events must be hooked up in the load event of the form, to make sure that the form is completely loaded first; otherwise the events will not be raised. + > [!NOTE] -> The example provides all the necessary code, including the form initialization code typically generated by Visual Studio designers. If you are developing your service in Visual Studio, you can omit the second partial class and use the **Properties** window to set the height and width of the hidden form to zero, the border style to , and the window state to . - - To run the example: - -1. Compile the code from the command line. The name that you use for the source file is not important. - -2. Install the service from the command line using the [Installutil.exe (Installer Tool)](/dotnet/framework/tools/installutil-exe-installer-tool) utility. For example, `InstallUtil example.exe` if the source file name is `example.cs` or `example.vb`. You must be an administrator to install the service. - -3. Use the Services console to start the service. - -4. Change the system time, or change user preferences, such as mouse properties. - -5. View the messages in the **Application** category of Event Viewer. - -6. Use the Services console to stop the service. - -7. Uninstall the service from the command line by using the `/u` option. For example, `InstallUtil /u example.exe`. - +> The example provides all the necessary code, including the form initialization code typically generated by Visual Studio designers. If you are developing your service in Visual Studio, you can omit the second partial class and use the **Properties** window to set the height and width of the hidden form to zero, the border style to , and the window state to . + + To run the example: + +1. Compile the code from the command line. The name that you use for the source file is not important. + +2. Install the service from the command line using the [Installutil.exe (Installer Tool)](/dotnet/framework/tools/installutil-exe-installer-tool) utility. For example, `InstallUtil example.exe` if the source file name is `example.cs` or `example.vb`. You must be an administrator to install the service. + +3. Use the Services console to start the service. + +4. Change the system time, or change user preferences, such as mouse properties. + +5. View the messages in the **Application** category of Event Viewer. + +6. Use the Services console to stop the service. + +7. Uninstall the service from the command line by using the `/u` option. For example, `InstallUtil /u example.exe`. + :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/SystemEvents/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/ManagedWindowsService/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/ManagedWindowsService/VB/source.vb" id="Snippet1"::: + ]]> @@ -180,22 +180,22 @@ Occurs when the user changes the display settings. - [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - - - -## Examples - The following code example demonstrates how to monitor the event. This code example is part of a larger example provided for the class. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + + + +## Examples + The following code example demonstrates how to monitor the event. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/SystemEvents/cpp/SystemEvents.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/SystemEvents/Overview/SystemEvents.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet2"::: + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -234,13 +234,13 @@ Occurs when the display settings are changing. - [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -286,14 +286,14 @@ Occurs before the thread that listens for system events is terminated. - [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -332,13 +332,13 @@ Occurs when the user adds fonts to or removes fonts from the system. - [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -380,13 +380,13 @@ A delegate to invoke using the thread that listens for system events. Invokes the specified delegate using the thread that listens for system events. - class. - - When you call this method, the specified delegate will be invoked by the thread that your application is using to process system events. - + class. + + When you call this method, the specified delegate will be invoked by the thread that your application is using to process system events. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -486,17 +486,17 @@ Occurs when the system is running out of available RAM. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -538,25 +538,25 @@ Occurs when the user switches to an application that uses a different palette. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - - - -## Examples - The following code example demonstrates how to monitor the event. This code example is part of a larger example provided for the class. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + + + +## Examples + The following code example demonstrates how to monitor the event. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/SystemEvents/cpp/SystemEvents.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/SystemEvents/Overview/SystemEvents.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet2"::: + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -595,16 +595,16 @@ Occurs when the user suspends or resumes the system. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -646,16 +646,16 @@ Occurs when the user is logging off or shutting down the system. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -697,90 +697,90 @@ Occurs when the user is trying to log off or shut down the system. - property to `true` will request that the session continues to run. It provides no guarantee that the session will not end. - - If you are using in a Windows form to detect a system logoff or reboot, there is no deterministic way to decide whether the event will fire before this event. - - If you want to perform some special tasks before is fired, you need to ensure that fires before . To do this, you need to trap the `WM_QUERYENDSESSION` in the form by overriding the `WndProc` function. This example demonstrates how to do this. - -```vb -Private Shared WM_QUERYENDSESSION As Integer = &H11 - Private Shared systemShutdown As Boolean = False - Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message) - If m.Msg = WM_QUERYENDSESSION Then - MessageBox.Show("queryendsession: this is a logoff, shutdown, or reboot") - systemShutdown = True - End If - ' If this is WM_QUERYENDSESSION, the closing event should be raised in the base WndProc. - MyBase.WndProc(m) - End Sub 'WndProc - Private Sub Form1_Closing(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing - If (systemShutdown) Then - ' Reset the variable because the user might cancel the shutdown. - systemShutdown = False - If (System.Windows.Forms.DialogResult.Yes = _ - MessageBox.Show("My application", "Do you want to save your work before logging off?", MessageBoxButtons.YesNo)) Then - e.Cancel = True - Else - e.Cancel = False - End If - End If - End Sub - -``` - -```csharp -private static int WM_QUERYENDSESSION = 0x11; -private static bool systemShutdown = false; -protected override void WndProc(ref System.Windows.Forms.Message m) -{ - if (m.Msg==WM_QUERYENDSESSION) - { - MessageBox.Show("queryendsession: this is a logoff, shutdown, or reboot"); - systemShutdown = true; - } - - // If this is WM_QUERYENDSESSION, the closing event should be - // raised in the base WndProc. - base.WndProc(ref m); - -} //WndProc - -private void Form1_Closing( - System.Object sender, - System.ComponentModel.CancelEventArgs e) -{ - if (systemShutdown) - // Reset the variable because the user might cancel the - // shutdown. - { - systemShutdown = false; - if (DialogResult.Yes==MessageBox.Show("My application", - "Do you want to save your work before logging off?", - MessageBoxButtons.YesNo)) - { - e.Cancel = true; - } - else - { - e.Cancel = false; - } - } -} -``` - + property to `true` will request that the session continues to run. It provides no guarantee that the session will not end. + + If you are using in a Windows form to detect a system logoff or reboot, there is no deterministic way to decide whether the event will fire before this event. + + If you want to perform some special tasks before is fired, you need to ensure that fires before . To do this, you need to trap the `WM_QUERYENDSESSION` in the form by overriding the `WndProc` function. This example demonstrates how to do this. + +```vb +Private Shared WM_QUERYENDSESSION As Integer = &H11 + Private Shared systemShutdown As Boolean = False + Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message) + If m.Msg = WM_QUERYENDSESSION Then + MessageBox.Show("queryendsession: this is a logoff, shutdown, or reboot") + systemShutdown = True + End If + ' If this is WM_QUERYENDSESSION, the closing event should be raised in the base WndProc. + MyBase.WndProc(m) + End Sub 'WndProc + Private Sub Form1_Closing(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing + If (systemShutdown) Then + ' Reset the variable because the user might cancel the shutdown. + systemShutdown = False + If (System.Windows.Forms.DialogResult.Yes = _ + MessageBox.Show("My application", "Do you want to save your work before logging off?", MessageBoxButtons.YesNo)) Then + e.Cancel = True + Else + e.Cancel = False + End If + End If + End Sub + +``` + +```csharp +private static int WM_QUERYENDSESSION = 0x11; +private static bool systemShutdown = false; +protected override void WndProc(ref System.Windows.Forms.Message m) +{ + if (m.Msg==WM_QUERYENDSESSION) + { + MessageBox.Show("queryendsession: this is a logoff, shutdown, or reboot"); + systemShutdown = true; + } + + // If this is WM_QUERYENDSESSION, the closing event should be + // raised in the base WndProc. + base.WndProc(ref m); + +} //WndProc + +private void Form1_Closing( + System.Object sender, + System.ComponentModel.CancelEventArgs e) +{ + if (systemShutdown) + // Reset the variable because the user might cancel the + // shutdown. + { + systemShutdown = false; + if (DialogResult.Yes==MessageBox.Show("My application", + "Do you want to save your work before logging off?", + MessageBoxButtons.YesNo)) + { + e.Cancel = true; + } + else + { + e.Cancel = false; + } + } +} +``` + > [!IMPORTANT] -> Console applications do not raise the event. - +> Console applications do not raise the event. + > [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -821,16 +821,16 @@ private void Form1_Closing( Occurs when the currently logged-in user has changed. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -870,16 +870,16 @@ private void Form1_Closing( Occurs when the user changes the time on the system clock. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -919,16 +919,16 @@ private void Form1_Closing( Occurs when a windows timer interval has expired. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -969,16 +969,16 @@ private void Form1_Closing( Occurs when a user preference has changed. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. @@ -1020,25 +1020,25 @@ private void Form1_Closing( Occurs when a user preference is changing. - [!NOTE] -> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. - +> This event is only raised if the message pump is running. In a Windows service, unless a hidden form is used or the message pump has been started manually, this event will not be raised. For a code example that shows how to handle system events by using a hidden form in a Windows service, see the class. + > [!CAUTION] -> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. - - - -## Examples - The following code example demonstrates how to monitor the event. This code example is part of a larger example provided for the class. - +> Because this is a static event, you must detach your event handlers when your application is disposed, or memory leaks will result. + + + +## Examples + The following code example demonstrates how to monitor the event. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/SystemEvents/cpp/SystemEvents.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/Microsoft.Win32/SystemEvents/Overview/SystemEvents.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/SystemEvents/VB/SystemEvents.vb" id="Snippet2"::: + ]]> System event notifications are not supported under the current context. Server processes, for example, might not support global system event notifications. diff --git a/xml/System.Activities.DurableInstancing/HasActivatableWorkflowEvent.xml b/xml/System.Activities.DurableInstancing/HasActivatableWorkflowEvent.xml index c07b896dcc0..863b25afad9 100644 --- a/xml/System.Activities.DurableInstancing/HasActivatableWorkflowEvent.xml +++ b/xml/System.Activities.DurableInstancing/HasActivatableWorkflowEvent.xml @@ -19,32 +19,32 @@ Represents an event that an instance store raises to notify generic hosts about the existence of activatable instances in the persistence database. - when it finds an activatable instance in the persistence store. If the instance store does not find an activatable instance in the persistence store, it should continue to monitor the persistence store for any activatable instances. - - After raising the HasActivatableWorkflowEvent, the instance store should stop monitoring the persistence store for activatable instances until it receives and executes the . The monitoring continues only if the command execution does not return any activatable workflow instances. - - When a generic host receives this event, it executes the against the instance store to obtain activation parameters required to create a workflow host. The generic host uses these activation parameters to create a workflow host, which in turn loads and runs the service instance. The activation parameters for the WAS activation type are: Site Name, Application Path (relative to the site), and Service Path (relative to the application). An instance store could return multiple sets of these three activation parameters. - - A generic host is a host that has an XName parameter named **ActivationType**, which should be set to a value supported by the instance store. Currently, the SQL Workflow Instance Store supports generic hosts with ActivationType parameter set to value: **WAS**. If the ActivationType is not set at all, the SQL Workflow Instance Store treats the host as a generic host. - + when it finds an activatable instance in the persistence store. If the instance store does not find an activatable instance in the persistence store, it should continue to monitor the persistence store for any activatable instances. + + After raising the HasActivatableWorkflowEvent, the instance store should stop monitoring the persistence store for activatable instances until it receives and executes the . The monitoring continues only if the command execution does not return any activatable workflow instances. + + When a generic host receives this event, it executes the against the instance store to obtain activation parameters required to create a workflow host. The generic host uses these activation parameters to create a workflow host, which in turn loads and runs the service instance. The activation parameters for the WAS activation type are: Site Name, Application Path (relative to the site), and Service Path (relative to the application). An instance store could return multiple sets of these three activation parameters. + + A generic host is a host that has an XName parameter named **ActivationType**, which should be set to a value supported by the instance store. Currently, the SQL Workflow Instance Store supports generic hosts with ActivationType parameter set to value: **WAS**. If the ActivationType is not set at all, the SQL Workflow Instance Store treats the host as a generic host. + > [!NOTE] -> The Workflow Management Service that ships with the code named "Dublin" (Application Server Extensions for .NET 4.0) is a generic host that has the activation type set to **WAS**. - +> The Workflow Management Service that ships with the code named "Dublin" (Application Server Extensions for .NET 4.0) is a generic host that has the activation type set to **WAS**. + ]]> diff --git a/xml/System.Activities.DurableInstancing/HasRunnableWorkflowEvent.xml b/xml/System.Activities.DurableInstancing/HasRunnableWorkflowEvent.xml index 91fbfa052d4..811a5e46bb8 100644 --- a/xml/System.Activities.DurableInstancing/HasRunnableWorkflowEvent.xml +++ b/xml/System.Activities.DurableInstancing/HasRunnableWorkflowEvent.xml @@ -19,23 +19,23 @@ Represents an event that the SQL Workflow Instance Store raises to notify workflow hosts about the existence of runnable instances in the persistence database. - when it finds a runnable instance in the persistence store that matches its workflow host type. If the instance store does not find a runnable instance in the persistence store, it should continue to monitor the persistence store for any runnable instances. - - After raising the HasRunnableWorkflowEvent, the instance store should stop monitoring the persistence store for runnable instances until it receives and executes the . The monitoring continues only if the TryLoadRunnableWorkflowCommand execution does not return any runnable instances. - - When a workflow host receives the HasRunnableWorkflowEvent, it executes the against the instance store to load the instance into the memory. - + when it finds a runnable instance in the persistence store that matches its workflow host type. If the instance store does not find a runnable instance in the persistence store, it should continue to monitor the persistence store for any runnable instances. + + After raising the HasRunnableWorkflowEvent, the instance store should stop monitoring the persistence store for runnable instances until it receives and executes the . The monitoring continues only if the TryLoadRunnableWorkflowCommand execution does not return any runnable instances. + + When a workflow host receives the HasRunnableWorkflowEvent, it executes the against the instance store to load the instance into the memory. + ]]> diff --git a/xml/System.Activities.DurableInstancing/QueryActivatableWorkflowsCommand.xml b/xml/System.Activities.DurableInstancing/QueryActivatableWorkflowsCommand.xml index 9ff81815850..19d5aa45206 100644 --- a/xml/System.Activities.DurableInstancing/QueryActivatableWorkflowsCommand.xml +++ b/xml/System.Activities.DurableInstancing/QueryActivatableWorkflowsCommand.xml @@ -16,32 +16,32 @@ Represents the command that a generic host executes against an instance store to retrieve activation parameters. The generic host uses these activation parameters to create a workflow host, which in turn loads a runnable service instance. - when it finds an activatable instance in the persistence store. If the instance store does not find an activatable instance in the persistence store, it should continue to monitor the persistence store for any activatable instances. - - After raising the HasActivatableWorkflowEvent, the instance store should stop monitoring the persistence store for activatable instances until it receives and executes the . The monitoring continues only if the command execution does not return any activatable workflow instances. - - When a generic host receives this event, it executes the against the instance store to obtain activation parameters required to create a workflow host. The generic host uses these activation parameters to create a workflow host, which in turn loads and runs the service instance. The activation parameters for the WAS activation type are: Site Name, Application Path (relative to the site), and Service Path (relative to the application). An instance store could return multiple sets of these three activation parameters. - - A generic host is a host that has an XName parameter named **ActivationType**, which should be set to a value supported by the instance store. Currently, the SQL Workflow Instance Store supports generic hosts with ActivationType parameter set to value: **WAS**. If the ActivationType is not set at all, the SQL Workflow Instance Store treats the host as a generic host. - + when it finds an activatable instance in the persistence store. If the instance store does not find an activatable instance in the persistence store, it should continue to monitor the persistence store for any activatable instances. + + After raising the HasActivatableWorkflowEvent, the instance store should stop monitoring the persistence store for activatable instances until it receives and executes the . The monitoring continues only if the command execution does not return any activatable workflow instances. + + When a generic host receives this event, it executes the against the instance store to obtain activation parameters required to create a workflow host. The generic host uses these activation parameters to create a workflow host, which in turn loads and runs the service instance. The activation parameters for the WAS activation type are: Site Name, Application Path (relative to the site), and Service Path (relative to the application). An instance store could return multiple sets of these three activation parameters. + + A generic host is a host that has an XName parameter named **ActivationType**, which should be set to a value supported by the instance store. Currently, the SQL Workflow Instance Store supports generic hosts with ActivationType parameter set to value: **WAS**. If the ActivationType is not set at all, the SQL Workflow Instance Store treats the host as a generic host. + > [!NOTE] -> The Workflow Management Service that ships with the code named "Dublin" (Application Server Extensions for .NET 4.0) is a generic host that has the activation type set to **WAS**. - +> The Workflow Management Service that ships with the code named "Dublin" (Application Server Extensions for .NET 4.0) is a generic host that has the activation type set to **WAS**. + ]]> diff --git a/xml/System.Activities.DurableInstancing/SqlWorkflowInstanceStore.xml b/xml/System.Activities.DurableInstancing/SqlWorkflowInstanceStore.xml index 0e72617307a..85f90935ebe 100644 --- a/xml/System.Activities.DurableInstancing/SqlWorkflowInstanceStore.xml +++ b/xml/System.Activities.DurableInstancing/SqlWorkflowInstanceStore.xml @@ -16,9 +16,9 @@ Derives from the abstract class of the persistence functionality and provides implementation to allow saving instance state information to and loading instance state information from an SQL Server 2005 or SQL Server 2008 database. - uses the to serialize complex types; all types used in workflows to be persisted with this instance store must be serializable using . ]]> @@ -216,17 +216,17 @@ Specifies the time period within which the host renews its lock on a workflow service instance. The time period. - of the form "hh:mm:ss". The minimum permitted value is "00:00:01" (1 sec). The default value of this property is "00:00:30" (30 seconds). ## Examples The following code sample demonstrates using HostLockRenewalPeriod in a . - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: - + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: + ]]> @@ -256,17 +256,17 @@ The following code sample demonstrates using HostLockRenewalPeriod in a Specifies the action to be taken after a workflow instance completes. Possible values are "DeleteNothing" and "DeleteAll". The default value is "DeleteAll". If the property is set to "DeleteNothing", the persistence provider keeps all the instance data and metadata in the persistence database after the workflow instance completes. If the property is set to "DeleteAll", the persistence provider deletes all the instance data and metadata after the workflow instance completes. The action to be taken after a workflow completes. - . - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: - + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: + ]]> @@ -296,17 +296,17 @@ The following code sample demonstrates using InstanceCompletionAction in a Specifies a value that indicates whether the instance data must be compressed. The possible values are "None" and "GZip". The default is "None". - . - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: - + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: + ]]> @@ -336,23 +336,23 @@ The following code sample demonstrates using InstanceEncodingOption in a Specifies the action to be taken when the persistence provider catches an . The action to be taken when the persistence provider catches an - . The service host receives an when it tries to lock an instance that is already locked by another owner. The possible values are in the following list: - -- **None**. The service host does not attempt to lock the instance and passes the to the caller. - -- **BasicRetry**. The service host reattempts to lock the instance with a linear retry interval and passes the exception to the caller at the end of the sequence. - + . The service host receives an when it tries to lock an instance that is already locked by another owner. The possible values are in the following list: + +- **None**. The service host does not attempt to lock the instance and passes the to the caller. + +- **BasicRetry**. The service host reattempts to lock the instance with a linear retry interval and passes the exception to the caller at the end of the sequence. + - **AggressiveRetry**. The service host reattempts to lock the instance with an exponentially increasing delay and passes the to the caller at the end of the sequence. The intervals are short in the beginning in an attempt to acquire the lock as quickly as possible and the intervals gets bigger with every unsuccessful attempt. - + ## Examples The following code sample demonstrates using InstanceLockedExceptionAction in a . - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: - + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: + ]]> @@ -455,14 +455,14 @@ The following code sample demonstrates using InstanceLockedExceptionAction in a The properties that must be promoted as a binary stream. Associates the specified properties with a workflow instance so that you can query for instances based on specific values for these properties. These properties that can be used in external queries can be of simple types (for example: Int64, String, and so on) or of a serialized binary type (byte[]). Binary properties are typically used to store tracking data. - . - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_sqlstoreextensibility/cs/program.cs" id="Snippet1"::: - + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_sqlstoreextensibility/cs/program.cs" id="Snippet1"::: + ]]> @@ -492,29 +492,29 @@ The following code sample demonstrates using Promote in a Specifies the time period after which the SQL Workflow Instance Store runs a detection task to detect any runnable or activatable workflow instances in the persistence database after the previous detection cycle. Returns . - runs an internal task that periodically wakes up and checks if any runnable instances exist in the persistence database. An instance is *runnable*, if it is not in the suspended state or the completed state and satisfies the following conditions: - -- The instance is unlocked and has a pending timer that has expired. - -- The instance is unlocked and its status is **Executing**. - -- The instance has an expired lock on it. - - The SQL Workflow Instance Store raises the when it finds a runnable instance in the database and also finds a workflow host capable of loading the instance running on the computer. - - When a workflow host receives this event, it executes the against the instance store to load the instance into the memory. - + runs an internal task that periodically wakes up and checks if any runnable instances exist in the persistence database. An instance is *runnable*, if it is not in the suspended state or the completed state and satisfies the following conditions: + +- The instance is unlocked and has a pending timer that has expired. + +- The instance is unlocked and its status is **Executing**. + +- The instance has an expired lock on it. + + The SQL Workflow Instance Store raises the when it finds a runnable instance in the database and also finds a workflow host capable of loading the instance running on the computer. + + When a workflow host receives this event, it executes the against the instance store to load the instance into the memory. + The type of the property is TimeSpan and the value is of the form "hh:mm:ss". The minimum value is "00:00:01" (1 sec). If omitted, defaults to "00:00:05" (5 secs). This parameter is an optional parameter. ## Examples The following code sample demonstrates using RunnableInstancesDetectionPeriod in a . - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: - + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/wfs_builtinconfiguration/cs/program.cs" id="Snippet1"::: + ]]> diff --git a/xml/System.Activities.DurableInstancing/TryLoadRunnableWorkflowCommand.xml b/xml/System.Activities.DurableInstancing/TryLoadRunnableWorkflowCommand.xml index 56d182c52f7..dacdfbab09f 100644 --- a/xml/System.Activities.DurableInstancing/TryLoadRunnableWorkflowCommand.xml +++ b/xml/System.Activities.DurableInstancing/TryLoadRunnableWorkflowCommand.xml @@ -16,23 +16,23 @@ Represents the command that a workflow host executes against an instance store to load runnable instances in the persistence store into the memory. - when it finds a runnable instance in the persistence store that matches its workflow host type. If the instance store does not find a runnable instance in the persistence store, it should continue to monitor the persistence store for any runnable instances. - - After raising the HasRunnableWorkflowEvent, the instance store should stop monitoring the persistence store for runnable instances until it receives and executes the . The monitoring continues only if the TryLoadRunnableWorkflowCommand execution does not return any runnable instances. - - When a workflow host receives the HasRunnableWorkflowEvent, it executes the against the instance store to load the instance into the memory. - + when it finds a runnable instance in the persistence store that matches its workflow host type. If the instance store does not find a runnable instance in the persistence store, it should continue to monitor the persistence store for any runnable instances. + + After raising the HasRunnableWorkflowEvent, the instance store should stop monitoring the persistence store for runnable instances until it receives and executes the . The monitoring continues only if the TryLoadRunnableWorkflowCommand execution does not return any runnable instances. + + When a workflow host receives the HasRunnableWorkflowEvent, it executes the against the instance store to load the instance into the memory. + ]]> diff --git a/xml/System.Activities.Hosting/WorkflowInstance.xml b/xml/System.Activities.Hosting/WorkflowInstance.xml index 850e3376db3..23d17979380 100644 --- a/xml/System.Activities.Hosting/WorkflowInstance.xml +++ b/xml/System.Activities.Hosting/WorkflowInstance.xml @@ -25,19 +25,19 @@ Internally, a has two states: Running and Paused. The only way to cause the runtime to transition from paused to running is to call . All actions (except Pause) can only be taken while the runtime is Paused. The runtime will become spontaneously Paused in the following situations: -- An error fatal to the runtime has occurred. The host will be signaled through (which does not signal a transition to Paused) and then notified through . +- An error fatal to the runtime has occurred. The host will be signaled through (which does not signal a transition to Paused) and then notified through . -- An exception in the workflow was uncaught and escaped the root. The host will be notified through the method. +- An exception in the workflow was uncaught and escaped the root. The host will be notified through the method. -- The scheduler has run out of work items and is now . The host will be notified through the method. Note that the scheduler could have run out of work items because the instance is idle or because the instance is complete. The value of the property can be used to differentiate between the two. +- The scheduler has run out of work items and is now . The host will be notified through the method. Note that the scheduler could have run out of work items because the instance is idle or because the instance is complete. The value of the property can be used to differentiate between the two. The host can request a change from Running to Paused by calling the or methods of the instance returned by the property. This request should not be considered to have a specific response meaning that the host should not attempt to correlate an OnNotify* or with a specific call to pause. In response to a pause request, the runtime may transition to Paused and call while the scheduler still has pending work items. The value of the property can be used to determine whether the scheduler has no more work or was interrupted by a request to pause. The method of the instance returned by the property is the only method that can be called while the is in the Running state. All other methods will throw an if called.Given the rules for how transitions from one state to another, the public notion of Running and Paused can be defined as follows: -- Running - The state between a call to and the next WorkflowInstance.OnNotify*. +- Running - The state between a call to and the next WorkflowInstance.OnNotify*. -- Paused - The state between the last WorkflowInstance.OnNotify* and the next call to . +- Paused - The state between the last WorkflowInstance.OnNotify* and the next call to . ]]> diff --git a/xml/System.Activities.Presentation/ClipboardData.xml b/xml/System.Activities.Presentation/ClipboardData.xml index 50fe11cc812..ef5ad4c649d 100644 --- a/xml/System.Activities.Presentation/ClipboardData.xml +++ b/xml/System.Activities.Presentation/ClipboardData.xml @@ -22,18 +22,18 @@ Represents the data passed around with the clipboard. - contains three types of data: - -- The data itself, accessed through the property. - -- The metadata, accessed through the property. - -- The version information, accessed through the property. - - + contains three types of data: + +- The data itself, accessed through the property. + +- The metadata, accessed through the property. + +- The version information, accessed through the property. + + ]]> diff --git a/xml/System.Activities.Presentation/WorkflowDesigner.xml b/xml/System.Activities.Presentation/WorkflowDesigner.xml index 5f95cbc712b..c6cc7fff951 100644 --- a/xml/System.Activities.Presentation/WorkflowDesigner.xml +++ b/xml/System.Activities.Presentation/WorkflowDesigner.xml @@ -60,15 +60,15 @@ Gets an object that is a collection of services shared between all elements contained in the designer and used to interact between the host and the designer. Services are published and requested through the . The editing context for the workflow designer. - , which executes whenever the model is assigned to, or when the value the property points to is updated. - -- Subscribe to the dependency property's availability using . - + , which executes whenever the model is assigned to, or when the value the property points to is updated. + +- Subscribe to the dependency property's availability using . + ]]> @@ -304,11 +304,11 @@ Sets the font and color data for the property inspector in a serialized, dictionary format. The font and color data for the property inspector in a serialized, dictionary format. - @@ -393,11 +393,11 @@ Gets or sets the XAML string representation of the workflow. The XAML string representation of the workflow. - to convert the current workflow to text. After setting this value, call to load the XAML into the workflow. - + to convert the current workflow to text. After setting this value, call to load the XAML into the workflow. + ]]>
diff --git a/xml/System.Activities.Tracking/ActivityStateQuery.xml b/xml/System.Activities.Tracking/ActivityStateQuery.xml index 2b06c693865..d58f05f9512 100644 --- a/xml/System.Activities.Tracking/ActivityStateQuery.xml +++ b/xml/System.Activities.Tracking/ActivityStateQuery.xml @@ -106,19 +106,19 @@ Gets the states of the subscribed activity for which a tracking record should be emitted. A collection of states. -
diff --git a/xml/System.AddIn.Contract.Collections/IEnumeratorContract`1.xml b/xml/System.AddIn.Contract.Collections/IEnumeratorContract`1.xml index a5918b6a4ad..592ccb5e312 100644 --- a/xml/System.AddIn.Contract.Collections/IEnumeratorContract`1.xml +++ b/xml/System.AddIn.Contract.Collections/IEnumeratorContract`1.xml @@ -26,19 +26,19 @@ The type of objects to enumerate. must implement the interface. Enumerates the elements of a generic collection of objects. - is undefined. Therefore, you must call to advance the enumerator to the first element of the collection before calling . - - returns the same object until is called. sets the return value of to the next element. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, the return value of is undefined. - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. - + is undefined. Therefore, you must call to advance the enumerator to the first element of the collection before calling . + + returns the same object until is called. sets the return value of to the next element. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, the return value of is undefined. + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. + ]]>
@@ -64,19 +64,19 @@ Returns the in the collection at the current position of the enumerator. The in the collection at the current position of the enumerator. - is undefined under any of the following conditions: - -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created or after is called. must be called to advance the enumerator to the first element of the collection before calling . - -- The last call to returned `false`, which indicates the end of the collection. - -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. - - returns the same object until is called. sets the return value of to the next element. - + is undefined under any of the following conditions: + +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created or after is called. must be called to advance the enumerator to the first element of the collection before calling . + +- The last call to returned `false`, which indicates the end of the collection. + +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. + + returns the same object until is called. sets the return value of to the next element. + ]]>
@@ -103,15 +103,15 @@ if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. - method is called, an enumerator is positioned before the first element of the collection. The first call to the method moves the enumerator to the first element of the collection. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . - + method is called, an enumerator is positioned before the first element of the collection. The first call to the method moves the enumerator to the first element of the collection. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . + ]]> The collection was modified after the enumerator was created. @@ -137,11 +137,11 @@ Sets the enumerator to its initial position, which is before the first element in the collection. - or throws an . - + or throws an . + ]]> The collection was modified after the enumerator was created. diff --git a/xml/System.AddIn.Contract.Collections/IRemoteArgumentEnumeratorContract.xml b/xml/System.AddIn.Contract.Collections/IRemoteArgumentEnumeratorContract.xml index f7937516ae0..88d24da257c 100644 --- a/xml/System.AddIn.Contract.Collections/IRemoteArgumentEnumeratorContract.xml +++ b/xml/System.AddIn.Contract.Collections/IRemoteArgumentEnumeratorContract.xml @@ -18,19 +18,19 @@ Enumerates the elements of a collection of objects. - is undefined. Therefore, you must call to advance the enumerator to the first element of the collection before calling . - - returns the same object until is called. sets the return value of to the next element. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, the return value of is undefined. - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. - + is undefined. Therefore, you must call to advance the enumerator to the first element of the collection before calling . + + returns the same object until is called. sets the return value of to the next element. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, the return value of is undefined. + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. + ]]> @@ -56,19 +56,19 @@ Returns the in the collection at the current position of the enumerator. The in the collection at the current position of the enumerator. - is undefined under any of the following conditions: - -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created or is called. must be called to advance the enumerator to the first element of the collection before calling . - -- The last call to returned `false`, which indicates the end of the collection. - -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. - - returns the same object until is called. sets the return value of to the next element. - + is undefined under any of the following conditions: + +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created or is called. must be called to advance the enumerator to the first element of the collection before calling . + +- The last call to returned `false`, which indicates the end of the collection. + +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. + + returns the same object until is called. sets the return value of to the next element. + ]]> @@ -95,15 +95,15 @@ if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. - method is called, an enumerator is positioned before the first element of the collection. The first call to the method moves the enumerator to the first element of the collection. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . - + method is called, an enumerator is positioned before the first element of the collection. The first call to the method moves the enumerator to the first element of the collection. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . + ]]> The collection was modified after the enumerator was created. @@ -129,13 +129,13 @@ Sets the enumerator to its initial position, which is before the first element in the collection. - , the value of is undefined. Call the method to move the enumerator to the first element of the collection. - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . - + , the value of is undefined. Call the method to move the enumerator to the first element of the collection. + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . + ]]> The collection was modified after the enumerator was created. diff --git a/xml/System.AddIn.Contract/IEnumeratorContract`1.xml b/xml/System.AddIn.Contract/IEnumeratorContract`1.xml index fa76f660bd8..bca9feb28b0 100644 --- a/xml/System.AddIn.Contract/IEnumeratorContract`1.xml +++ b/xml/System.AddIn.Contract/IEnumeratorContract`1.xml @@ -22,19 +22,19 @@ The type of objects being enumerated. Enumerates the elements in an collection. - is undefined. Therefore, you must call to advance the enumerator to the first element of the collection before calling . - - returns the same object until is called. sets the return value of to the next element. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, the return value of is undefined. - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. - + is undefined. Therefore, you must call to advance the enumerator to the first element of the collection before calling . + + returns the same object until is called. sets the return value of to the next element. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, the return value of is undefined. + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined. + ]]> @@ -60,19 +60,19 @@ Returns the object in the collection at the current position of the enumerator. The in the collection at the current position of the enumerator. - is undefined under any of the following conditions: - -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created or after is called. must be called to advance the enumerator to the first element of the collection before calling . - -- The last call to returned `false`, which indicates the end of the collection. - -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. - - returns the same object until is called. sets the return value of to the next element. - + is undefined under any of the following conditions: + +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created or after is called. must be called to advance the enumerator to the first element of the collection before calling . + +- The last call to returned `false`, which indicates the end of the collection. + +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. + + returns the same object until is called. sets the return value of to the next element. + ]]>
@@ -99,15 +99,15 @@ if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. - method is called, an enumerator is positioned before the first element of the collection. The first call to the method moves the enumerator to the first element of the collection. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. - - An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . - + method is called, an enumerator is positioned before the first element of the collection. The first call to the method moves the enumerator to the first element of the collection. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. + + An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and the next call to or throws an . + ]]> The collection was modified after the enumerator was created. @@ -133,11 +133,11 @@ Sets the enumerator to its initial position, which is before the first element in the collection. - or throws an . - + or throws an . + ]]> The collection was modified after the enumerator was created. diff --git a/xml/System.AddIn.Contract/RemoteArgument.xml b/xml/System.AddIn.Contract/RemoteArgument.xml index 01817aed791..502cd0a7c7b 100644 --- a/xml/System.AddIn.Contract/RemoteArgument.xml +++ b/xml/System.AddIn.Contract/RemoteArgument.xml @@ -23,27 +23,27 @@ Represents an instance of a type that can be passed across process and application domain boundaries. - structure to pass arguments of types that are not determined until run time across process and application domain boundaries. The purpose of is similar to that of the `VARIANT` type in COM. - - You can use to pass the following types and values as remote arguments: - -- . - -- . - -- Intrinsic data types. - -- Arrays that contain elements of intrinsic data types. - - An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . - - provides constructors for each of the types that it supports. You can also use the methods to create objects. The methods automatically call the appropriate constructor for your argument type. - - If you create a using the default parameterless constructor, the property is set to the value and the property is set to the value . - + structure to pass arguments of types that are not determined until run time across process and application domain boundaries. The purpose of is similar to that of the `VARIANT` type in COM. + + You can use to pass the following types and values as remote arguments: + +- . + +- . + +- Intrinsic data types. + +- Arrays that contain elements of intrinsic data types. + + An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . + + provides constructors for each of the types that it supports. You can also use the methods to create objects. The methods automatically call the appropriate constructor for your argument type. + + If you create a using the default parameterless constructor, the property is set to the value and the property is set to the value . + ]]> @@ -77,11 +77,11 @@ An argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents an argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]> @@ -106,11 +106,11 @@ An argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents an argument. - property to , the property to the type code of the array element type, and the property to `false`. - + property to , the property to the type code of the array element type, and the property to `false`. + ]]> The array element type is not a base type (that is, the method for the array element type returns ). @@ -138,11 +138,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -167,11 +167,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -196,11 +196,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -225,11 +225,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -254,11 +254,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -283,11 +283,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -312,11 +312,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -341,11 +341,11 @@ An argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents an argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -370,11 +370,11 @@ An argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents an argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -399,11 +399,11 @@ An argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents an argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -434,11 +434,11 @@ An argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents an argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -463,11 +463,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -492,11 +492,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -527,11 +527,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -562,11 +562,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -597,11 +597,11 @@ A argument that can be passed across process or application domain boundaries. Initializes a new instance of the class that represents a argument. - property to , the property to , and the property to `false`. - + property to , the property to , and the property to `false`. + ]]>
@@ -629,11 +629,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents an argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -666,24 +666,24 @@ A that specifies the base type of the remote argument. Initializes a new instance of the class using the specified and for an argument that is not passed by reference. - . - - An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . - + . + + An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . + ]]> - is or , and is or . - - -or- - - is and is not . - - -or- - + is or , and is or . + + -or- + + is and is not . + + -or- + is and is not .
@@ -710,11 +710,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents an argument that can be passed by reference. - property to , the property to the type code of the array element type, and the property to the value of the `isByRef` parameter. - + property to , the property to the type code of the array element type, and the property to the value of the `isByRef` parameter. + ]]> The array element type is not a base type (that is, the method returns for the array element type). @@ -745,11 +745,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -777,11 +777,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -809,11 +809,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -841,11 +841,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -873,11 +873,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -905,11 +905,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -937,11 +937,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -969,11 +969,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents an argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1001,11 +1001,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents an argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1033,11 +1033,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents an argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1071,11 +1071,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents an argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1103,11 +1103,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1135,11 +1135,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1173,11 +1173,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1211,11 +1211,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1249,11 +1249,11 @@ if is an argument that is passed by reference; otherwise, . Initializes a new instance of the class that represents a argument that can be passed by reference. - property to , the property to , and the property to the value of the `isByRef` parameter. - + property to , the property to , and the property to the value of the `isByRef` parameter. + ]]>
@@ -1283,24 +1283,24 @@ if the remote argument is passed by reference; otherwise, . Initializes a new instance of the class using the specified and for an argument that can be passed by reference. - . - - An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . - + . + + An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . + ]]> - is or , and is or . - - -or- - - is and is not . - - -or- - + is or , and is or . + + -or- + + is and is not . + + -or- + is and is not . is not a valid value. @@ -1326,14 +1326,14 @@ Gets or sets the that the represents. The that the represents; if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is set to the value. + + -or- + This property is set while the property is .
@@ -1357,14 +1357,14 @@ Gets or sets the that the represents. The that the represents; if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1388,14 +1388,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1419,14 +1419,14 @@ Gets or sets the that the represents. The that the represents; Char.MinValue if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1450,14 +1450,14 @@ Gets or sets the that the represents. The that the represents; if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1500,27 +1500,27 @@ Creates a for an argument that is not passed by reference. A that represents the specified argument. - constructor that applies to the type of the `value` parameter. - + constructor that applies to the type of the `value` parameter. + ]]> is . - The of is and is not an . - - -or- - - The of is and is not set to . - - -or- - - does not implement the interface and is not an . - - -or- - + The of is and is not an . + + -or- + + The of is and is not set to . + + -or- + + does not implement the interface and is not an . + + -or- + is an that contains elements with a value of .
@@ -1551,27 +1551,27 @@ Creates a for an argument that can be passed by reference. A that represents the specified argument. - constructor that applies to the type of the `value` parameter. - + constructor that applies to the type of the `value` parameter. + ]]> is . - The of is and is not an . - - -or- - - The of is and is not set to . - - -or- - - does not implement the interface and is not an . - - -or- - + The of is and is not an . + + -or- + + The of is and is not set to . + + -or- + + does not implement the interface and is not an . + + -or- + is an that contains elements with a value of .
@@ -1604,27 +1604,27 @@ Creates a for an argument that has the specified type code and that can be passed by reference. A that represents the specified argument. - constructor that applies to the type of the `value` parameter. - - You cannot use this method to create a that represents a `null` array that contains elements of intrinsic data types. An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . - + constructor that applies to the type of the `value` parameter. + + You cannot use this method to create a that represents a `null` array that contains elements of intrinsic data types. An intrinsic data type is a primitive data type (that is, the property of the type is `true`) or a , , , or . + ]]> - The of is , is not an , and is not . - - -or- - - The of is and is not . - - -or- - - does not implement the interface, is not , and is not an . - - -or- - + The of is , is not an , and is not . + + -or- + + The of is and is not . + + -or- + + does not implement the interface, is not , and is not an . + + -or- + is an that contains elements with a value of . The of is not and is . @@ -1651,14 +1651,14 @@ Gets or sets the that the represents. The that the represents; DateTime.MinValue if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1682,14 +1682,14 @@ Gets or sets the that the represents. The that the represents; if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1713,14 +1713,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1744,14 +1744,14 @@ Gets or sets the that the represents. The that the represents; 0.0 if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1775,14 +1775,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1806,14 +1806,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1837,14 +1837,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -1901,10 +1901,10 @@ Gets the value. The value. To be added. - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + This property value is retrieved while the property is not set to the value.
@@ -1934,11 +1934,11 @@ Gets a that indicates the kind of argument that the represents. One of the values that indicates whether the represents an intrinsic type, an array of intrinsic types, an , or the value. - property of the type is `true`) or a , , , or . - + property of the type is `true`) or a , , , or . + ]]>
@@ -1969,14 +1969,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -2000,14 +2000,14 @@ Gets or sets the that the represents. The that the represents; 0.0 if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -2031,14 +2031,14 @@ Gets or sets the that the represents. The that the represents; if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -2096,14 +2096,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -2133,14 +2133,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
@@ -2170,14 +2170,14 @@ Gets or sets the that the represents. The that the represents; 0 (zero) if the value of the has not yet been specified. To be added. - The property is not set to the value. - - -or- - - The property is not set to the value. - - -or- - + The property is not set to the value. + + -or- + + The property is not set to the value. + + -or- + This property is set while the property is .
diff --git a/xml/System.AddIn.Hosting/AddInController.xml b/xml/System.AddIn.Hosting/AddInController.xml index 266da45cb45..3cfe7e33056 100644 --- a/xml/System.AddIn.Hosting/AddInController.xml +++ b/xml/System.AddIn.Hosting/AddInController.xml @@ -17,29 +17,29 @@ Provides access to an add-in for a variety of tasks. - property to obtain an object for an add-in. Then use that object to activate other add-ins in the same application domain and process as the original add-in. - -- Use the property to obtain an object for an add-in. Then use that object to activate other add-ins in the same application domain as the original add-in. Note that because of limitations in cross-process remoting, this scenario will not work with add-ins that are activated in a separate process. - -- Use the property to obtain an object that represents an add-in. - -- Shut down an add-in with the method. - - To obtain the controller for an add-in, call the method and pass an instance of the add-in as its parameter. - - - -## Examples - The following example activates an add-in within the same environment as a previously activated add-in by using an object. - + property to obtain an object for an add-in. Then use that object to activate other add-ins in the same application domain and process as the original add-in. + +- Use the property to obtain an object for an add-in. Then use that object to activate other add-ins in the same application domain as the original add-in. Note that because of limitations in cross-process remoting, this scenario will not work with add-ins that are activated in a separate process. + +- Use the property to obtain an object that represents an add-in. + +- Shut down an add-in with the method. + + To obtain the controller for an add-in, call the method and pass an instance of the add-in as its parameter. + + + +## Examples + The following example activates an add-in within the same environment as a previously activated add-in by using an object. + :::code language="csharp" source="~/snippets/csharp/System.AddIn.Hosting/AddInController/Overview/P3Host.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/addinP3Host/vb/p3host.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/addinP3Host/vb/p3host.vb" id="Snippet8"::: + ]]> @@ -64,19 +64,19 @@ Gets an object. An object that can be used to activate other add-ins in the same environment as the original add-in. - object for an add-in. Then use that object to activate other add-ins in the same application domain and process as the original add-in. - - - -## Examples - The following example activates a second add-in within the same environment as the first add-in. - + object for an add-in. Then use that object to activate other add-ins in the same application domain and process as the original add-in. + + + +## Examples + The following example activates a second add-in within the same environment as the first add-in. + :::code language="csharp" source="~/snippets/csharp/System.AddIn.Hosting/AddInController/Overview/P3Host.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/addinP3Host/vb/p3host.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/addinP3Host/vb/p3host.vb" id="Snippet8"::: + ]]>
@@ -101,19 +101,19 @@ Gets the application domain that contains an add-in. The application domain of the add-in. - object and to activate other add-ins in the same application domain. - - - -## Examples - The following example activates a second add-in in the same application domain as the first add-in. - + object and to activate other add-ins in the same application domain. + + + +## Examples + The following example activates a second add-in in the same application domain as the first add-in. + :::code language="csharp" source="~/snippets/csharp/System.AddIn.Hosting/AddInController/Overview/P3Host.cs" id="Snippet9"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/addinP3Host/vb/p3host.vb" id="Snippet9"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/addinP3Host/vb/p3host.vb" id="Snippet9"::: + ]]>
@@ -142,11 +142,11 @@ Obtains the controller for an add-in. The controller for the add-in. - methods return an object that represents the host's view of the add-in. - + methods return an object that represents the host's view of the add-in. + ]]>
@@ -177,25 +177,25 @@ Disables an add-in. - or methods, the method also unloads the application domain. - - If the add-in was loaded into its own application domain, the method also unloads the application domain. - - If the add-in was loaded into an existing application domain, the host and pipeline segments will no longer have any references to that add-in. In this case, the add-in will be eligible to be reclaimed by garbage collection. - - You can also use this class to shut down an add-in that is activated in an external process. - - - -## Examples - The following example obtains the object for a host view named `manager` and then shuts down the add-in. - + or methods, the method also unloads the application domain. + + If the add-in was loaded into its own application domain, the method also unloads the application domain. + + If the add-in was loaded into an existing application domain, the host and pipeline segments will no longer have any references to that add-in. In this case, the add-in will be eligible to be reclaimed by garbage collection. + + You can also use this class to shut down an add-in that is activated in an external process. + + + +## Examples + The following example obtains the object for a host view named `manager` and then shuts down the add-in. + :::code language="csharp" source="~/snippets/csharp/System.AddIn.Hosting/AddInController/Shutdown/Program.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AddInCollectionPipelineHost/vb/Program.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AddInCollectionPipelineHost/vb/Program.vb" id="Snippet6"::: + ]]> @@ -220,11 +220,11 @@ Gets the token that represents the add-in. An object that represents the add-in. -
diff --git a/xml/System.AddIn.Hosting/AddInEnvironment.xml b/xml/System.AddIn.Hosting/AddInEnvironment.xml index 67fe08ce146..610695c2095 100644 --- a/xml/System.AddIn.Hosting/AddInEnvironment.xml +++ b/xml/System.AddIn.Hosting/AddInEnvironment.xml @@ -17,25 +17,25 @@ Provides access to the application domain and process of an add-in. - object. - -- An application domain that was automatically generated to activate an add-in. - -- An existing external process. - - To obtain the object for an add-in, pass the add-in's application domain to the class constructor. Alternatively, you can use the property of the class to obtain the add-in's object. - - After you obtain the object, you can do the following: - -- Pass that object to the appropriate method overload. The add-in will be activated in the application domain and process that is represented by the object. - -- Use the property to obtain an object. Then pass that object to the appropriate method overload. The add-in will be activated in the process that is represented by the object but in a new application domain. - + object. + +- An application domain that was automatically generated to activate an add-in. + +- An existing external process. + + To obtain the object for an add-in, pass the add-in's application domain to the class constructor. Alternatively, you can use the property of the class to obtain the add-in's object. + + After you obtain the object, you can do the following: + +- Pass that object to the appropriate method overload. The add-in will be activated in the application domain and process that is represented by the object. + +- Use the property to obtain an object. Then pass that object to the appropriate method overload. The add-in will be activated in the process that is represented by the object but in a new application domain. + ]]> Add-Ins and Extensibility @@ -61,11 +61,11 @@ The application domain that contains the add-in. Initializes a new instance of the class. - object. Otherwise, you can use the property of the class to obtain the object. - + object. Otherwise, you can use the property of the class to obtain the object. + ]]> @@ -99,15 +99,15 @@ Gets the object that represents the process in which the add-in is running. The process in which the add-in is running. - object obtained with this property to the appropriate method overload. - - If you want to activate them in the same domain in an external process you should pass the object directly to the method overload. - + object obtained with this property to the appropriate method overload. + + If you want to activate them in the same domain in an external process you should pass the object directly to the method overload. + ]]> diff --git a/xml/System.AddIn.Hosting/AddInToken.xml b/xml/System.AddIn.Hosting/AddInToken.xml index 937614eb63f..e1a3aadfa29 100644 --- a/xml/System.AddIn.Hosting/AddInToken.xml +++ b/xml/System.AddIn.Hosting/AddInToken.xml @@ -541,13 +541,13 @@ ## Remarks The following conditions must exist for the direct connection to occur: -- This property must be set to `true`. +- This property must be set to `true`. -- The add-in must be in the same application domain as the host. +- The add-in must be in the same application domain as the host. -- The add-in view and the host view of the add-in must be the same type. +- The add-in view and the host view of the add-in must be the same type. -- All the segments of the pipeline must be available. +- All the segments of the pipeline must be available. When a direct connection is established, the add-in-side adapter and the host-side adapter are not instantiated. diff --git a/xml/System.AddIn.Pipeline/FrameworkElementAdapters.xml b/xml/System.AddIn.Pipeline/FrameworkElementAdapters.xml index dcc113034ee..65b1f54b3f5 100644 --- a/xml/System.AddIn.Pipeline/FrameworkElementAdapters.xml +++ b/xml/System.AddIn.Pipeline/FrameworkElementAdapters.xml @@ -23,11 +23,11 @@ ## Remarks Windows Presentation Foundation (WPF) extends the .NET Framework add-in model to allow WPF UIs to be passed between host applications and add-ins. WPF requires that the WPF UIs that are passed either directly or indirectly derive from . However, add-ins and host applications are typically run in separate application domains and are, consequently, separated by an isolation boundary. For this reason, the .NET Framework add-in model requires the types that are passed across the isolation boundary to be remotable. A remotable type conforms to one of the following: -- Implements the interface. +- Implements the interface. -- Has the attribute applied. +- Has the attribute applied. -- Derives from the class. +- Derives from the class. is not remotable and must be converted to a remotable type before it is passed across the isolation boundary between an add-in and a host application. For this purpose, you need to call the static method to convert the to an instance of the remotable . diff --git a/xml/System.CodeDom.Compiler/CompilerInfo.xml b/xml/System.CodeDom.Compiler/CompilerInfo.xml index 7e0e33d3ac4..dcf00a7c627 100644 --- a/xml/System.CodeDom.Compiler/CompilerInfo.xml +++ b/xml/System.CodeDom.Compiler/CompilerInfo.xml @@ -333,9 +333,9 @@ The two instances are considered equal if the values of the following properties are equal: -- The property. +- The property. -- The , , and properties of the instance returned by the method. +- The , , and properties of the instance returned by the method. ]]> diff --git a/xml/System.CodeDom.Compiler/CompilerResults.xml b/xml/System.CodeDom.Compiler/CompilerResults.xml index 51fce4c6f9b..771361103ae 100644 --- a/xml/System.CodeDom.Compiler/CompilerResults.xml +++ b/xml/System.CodeDom.Compiler/CompilerResults.xml @@ -45,19 +45,19 @@ ## Remarks This class contains the following information about the results of a compilation by an interface implementation: -- The property indicates the compiled assembly. +- The property indicates the compiled assembly. -- The property indicates the security evidence for the assembly. +- The property indicates the security evidence for the assembly. -- The property indicates the path to the compiled assembly, if it was not generated only in memory. +- The property indicates the path to the compiled assembly, if it was not generated only in memory. -- The property indicates any compiler errors and warnings. +- The property indicates any compiler errors and warnings. -- The property contains the compiler output messages. +- The property contains the compiler output messages. -- The property indicates result code value returned by the compiler. +- The property indicates result code value returned by the compiler. -- The property indicates the temporary files generated during compilation and linking. +- The property indicates the temporary files generated during compilation and linking. > [!NOTE] > This class contains an inheritance demand at the class level that applies to all members. A is thrown when the derived class does not have full-trust permission. For details about inheritance demands, see [Inheritance Demands](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/x4yx82e6(v=vs.100)). diff --git a/xml/System.CodeDom/CodeTypeReference.xml b/xml/System.CodeDom/CodeTypeReference.xml index 0e84e9a4dec..bf05fab687b 100644 --- a/xml/System.CodeDom/CodeTypeReference.xml +++ b/xml/System.CodeDom/CodeTypeReference.xml @@ -579,25 +579,25 @@ System.Collections.Generic.Dictionary`2[[System.String], [System.Collections.Gen Recursively parsing the property from the for yields the same strings as the reflection representation above: -- The property for the parent returns the following: +- The property for the parent returns the following: ``` System.Collections.Generic.Dictionary`2 ``` -- The property for the first object in the collection returns the following: +- The property for the first object in the collection returns the following: ``` System.String ``` -- The property for the second object in the collection returns the following: +- The property for the second object in the collection returns the following: ``` System.Collections.Generic.List`1 ``` -- The property in the object for ``System.Collections.Generic.List`1`` returns the following: +- The property in the object for ``System.Collections.Generic.List`1`` returns the following: ``` System.Int32 diff --git a/xml/System.Collections.Concurrent/BlockingCollection`1.xml b/xml/System.Collections.Concurrent/BlockingCollection`1.xml index 08e6dd9862e..11bbef1ddba 100644 --- a/xml/System.Collections.Concurrent/BlockingCollection`1.xml +++ b/xml/System.Collections.Concurrent/BlockingCollection`1.xml @@ -104,13 +104,13 @@ ## Remarks is a thread-safe collection class that provides the following: -- An implementation of the producer/consumer pattern; is a wrapper for the interface. +- An implementation of the producer/consumer pattern; is a wrapper for the interface. -- Concurrent addition and removal of items from multiple threads with the and methods. +- Concurrent addition and removal of items from multiple threads with the and methods. -- A bounded collection that blocks and operations when the collection is full or empty. +- A bounded collection that blocks and operations when the collection is full or empty. -- Cancellation of or operations by using a object in the or method. +- Cancellation of or operations by using a object in the or method. > [!IMPORTANT] > This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. Also, note that the method is not thread-safe. All other public and protected members of are thread-safe and may be used concurrently from multiple threads. diff --git a/xml/System.Collections.Concurrent/ConcurrentStack`1.xml b/xml/System.Collections.Concurrent/ConcurrentStack`1.xml index 7c4d55830ba..87f6075ac65 100644 --- a/xml/System.Collections.Concurrent/ConcurrentStack`1.xml +++ b/xml/System.Collections.Concurrent/ConcurrentStack`1.xml @@ -102,38 +102,38 @@ The type of the elements contained in the stack. Represents a thread-safe last in-first out (LIFO) collection. - [!NOTE] -> implements the interface starting with the .NET Framework 4.6; in previous versions of the .NET Framework, the class did not implement this interface. - - provides a few main operations: - -- inserts an element at the top of the . - -- removes an element from the top of the , or returns `false` if the item cannot be removed. - -- returns an element that is at the top of the but does not remove it from the . - -- The and methods provide efficient pushing and popping of multiple elements in a single operation. - - - -## Examples - The following example shows how to use a to push and pop individual items: - +> implements the interface starting with the .NET Framework 4.6; in previous versions of the .NET Framework, the class did not implement this interface. + + provides a few main operations: + +- inserts an element at the top of the . + +- removes an element from the top of the , or returns `false` if the item cannot be removed. + +- returns an element that is at the top of the but does not remove it from the . + +- The and methods provide efficient pushing and popping of multiple elements in a single operation. + + + +## Examples + The following example shows how to use a to push and pop individual items: + :::code language="csharp" source="~/snippets/csharp/System.Collections.Concurrent/ConcurrentStackT/Overview/concstack_single.cs" id="Snippet1"::: :::code language="fsharp" source="~/snippets/fsharp/System.Collections.Concurrent/ConcurrentStackT/Overview/concstack_single.fs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.collections.concurrent.concurrentstack/vb/concstack_single.vb" id="Snippet1"::: - - The following example shows how to use a to push and pop ranges of items: - + + The following example shows how to use a to push and pop ranges of items: + :::code language="csharp" source="~/snippets/csharp/System.Collections.Concurrent/ConcurrentStackT/Overview/concstack_range.cs" id="Snippet1"::: :::code language="fsharp" source="~/snippets/fsharp/System.Collections.Concurrent/ConcurrentStackT/Overview/concstack_range.fs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.collections.concurrent.concurrentstack/vb/concstack_range.vb" id="Snippet1"::: - + ]]> All public and protected members of are thread-safe and may be used concurrently from multiple threads. @@ -357,11 +357,11 @@ Gets the number of elements contained in the . The number of elements contained in the . - property is recommended rather than retrieving the number of items from the property and comparing it to 0. - + property is recommended rather than retrieving the number of items from the property and comparing it to 0. + ]]>
@@ -408,11 +408,11 @@ Returns an enumerator that iterates through the . An enumerator for the . - was called. The enumerator is safe to use concurrently with reads from and writes to the stack. The enumerator returns items in LIFO (last-in, first-out) order. - + was called. The enumerator is safe to use concurrently with reads from and writes to the stack. The enumerator returns items in LIFO (last-in, first-out) order. + ]]> Thread-Safe Collections @@ -457,13 +457,13 @@ if the is empty; otherwise, . - property and comparing it to 0. However, as this collection is intended to be accessed concurrently, it may be the case that another thread will modify the collection after returns, thus invalidating the result. - - For a code example, see . - + property and comparing it to 0. However, as this collection is intended to be accessed concurrently, it may be the case that another thread will modify the collection after returns, thus invalidating the result. + + For a code example, see . + ]]> Thread-Safe Collections @@ -566,13 +566,13 @@ The objects to push onto the . Inserts multiple objects at the top of the atomically. - one item at a time. Additionally, PushRange guarantees that all of the elements will be added atomically, meaning that no other threads will be able to inject elements between the elements being pushed. Items at lower indices in the `items` array will be pushed before items at higher indices. - - For a code example, see . - + one item at a time. Additionally, PushRange guarantees that all of the elements will be added atomically, meaning that no other threads will be able to inject elements between the elements being pushed. Items at lower indices in the `items` array will be pushed before items at higher indices. + + For a code example, see . + ]]> @@ -625,13 +625,13 @@ The number of elements to be inserted onto the top of the . Inserts multiple objects at the top of the atomically. - one item at a time. Additionally, PushRange guarantees that all of the elements will be added atomically, meaning that no other threads will be able to inject elements between the elements being pushed. Items at lower indices in the `items` array will be pushed before items at higher indices. - - For a code example, see . - + one item at a time. Additionally, PushRange guarantees that all of the elements will be added atomically, meaning that no other threads will be able to inject elements between the elements being pushed. Items at lower indices in the `items` array will be pushed before items at higher indices. + + For a code example, see . + ]]> @@ -689,11 +689,11 @@ if the object was added successfully; otherwise, . - , this operation will always insert the object onto the top of the and return true. - + , this operation will always insert the object onto the top of the and return true. + ]]> Thread-Safe Collections @@ -752,11 +752,11 @@ if an element was removed and returned successfully; otherwise, . - , this operation will attempt to pop the object at the top of the . - + , this operation will attempt to pop the object at the top of the . + ]]> Thread-Safe Collections @@ -963,11 +963,11 @@ This member is an explicit interface member implementation. It can be used only Returns an enumerator that iterates through a collection. An that can be used to iterate through the collection. - was called. The enumerator is safe to use concurrently with reads from and writes to the stack. - + was called. The enumerator is safe to use concurrently with reads from and writes to the stack. + ]]>
@@ -1120,11 +1120,11 @@ This member is an explicit interface member implementation. It can be used only if an element was removed and returned from the top of the successfully; otherwise, . - . - + . + ]]>
@@ -1183,13 +1183,13 @@ This member is an explicit interface member implementation. It can be used only Attempts to pop and return multiple objects from the top of the atomically. The number of objects successfully popped from the top of the and inserted in . - once per item to be removed. Nodes fill the `items` array with the first item to be popped at the startIndex, the second item to be popped at startIndex + 1, and so on. - - For a code example, see . - + once per item to be removed. Nodes fill the `items` array with the first item to be popped at the startIndex, the second item to be popped at startIndex + 1, and so on. + + For a code example, see . + ]]> @@ -1243,11 +1243,11 @@ This member is an explicit interface member implementation. It can be used only Attempts to pop and return multiple objects from the top of the atomically. The number of objects successfully popped from the top of the stack and inserted in . - once per item to be removed. Nodes fill the `items` array with the first item to be popped at the startIndex, the second item to be popped at startIndex + 1, and so on. - + once per item to be removed. Nodes fill the `items` array with the first item to be popped at the startIndex, the second item to be popped at startIndex + 1, and so on. + ]]> diff --git a/xml/System.Collections.Generic/Comparer`1.xml b/xml/System.Collections.Generic/Comparer`1.xml index 8a47b7549f2..a8a11d394f3 100644 --- a/xml/System.Collections.Generic/Comparer`1.xml +++ b/xml/System.Collections.Generic/Comparer`1.xml @@ -83,9 +83,9 @@ The difference between deriving from the class and implementing the interface is as follows: -- To specify how two objects should be compared by default, implement the interface in your class. This ensures that sort operations will use the default comparison code that you provided. +- To specify how two objects should be compared by default, implement the interface in your class. This ensures that sort operations will use the default comparison code that you provided. -- To define a comparer to use instead of the default comparer, derive from the class. You can then use this comparer in sort operations that take a comparer as a parameter. +- To define a comparer to use instead of the default comparer, derive from the class. You can then use this comparer in sort operations that take a comparer as a parameter. The object returned by the property uses the generic interface (`IComparable` in C#, `IComparable(Of T)` in Visual Basic) to compare two objects. If type `T` does not implement the generic interface, the property returns a that uses the interface. diff --git a/xml/System.Collections.Generic/IEnumerator`1.xml b/xml/System.Collections.Generic/IEnumerator`1.xml index 0100545dbef..3e8508aeb95 100644 --- a/xml/System.Collections.Generic/IEnumerator`1.xml +++ b/xml/System.Collections.Generic/IEnumerator`1.xml @@ -169,11 +169,11 @@ ## Remarks is undefined under any of the following conditions: -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . -- The last call to returned `false`, which indicates the end of the collection. +- The last call to returned `false`, which indicates the end of the collection. -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. returns the same object until is called. sets to the next element. diff --git a/xml/System.Collections.Generic/List`1.xml b/xml/System.Collections.Generic/List`1.xml index 0b6bd98f635..956b7817b9a 100644 --- a/xml/System.Collections.Generic/List`1.xml +++ b/xml/System.Collections.Generic/List`1.xml @@ -3861,11 +3861,11 @@ Public Function StartsWith(e As Employee) As Boolean This method uses the method, which applies the introspective sort as follows: -- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm. +- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm. -- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a Heapsort algorithm. +- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a Heapsort algorithm. -- Otherwise, it uses a Quicksort algorithm. +- Otherwise, it uses a Quicksort algorithm. This implementation performs an unstable sort; that is, if two elements are equal, their order might not be preserved. In contrast, a stable sort preserves the order of elements that are equal. @@ -3956,11 +3956,11 @@ Public Function StartsWith(e As Employee) As Boolean This method uses the method, which applies the introspective sort as follows: -- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm. +- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm. -- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a Heapsort algorithm. +- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a Heapsort algorithm. -- Otherwise, it uses a Quicksort algorithm. +- Otherwise, it uses a Quicksort algorithm. This implementation performs an unstable sort; that is, if two elements are equal, their order might not be preserved. In contrast, a stable sort preserves the order of elements that are equal. @@ -4038,11 +4038,11 @@ Public Function StartsWith(e As Employee) As Boolean This method uses , which applies the introspective sort as follows: -- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm +- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm -- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a [Heapsort](https://en.wikipedia.org/wiki/Heapsort) algorithm. +- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a [Heapsort](https://en.wikipedia.org/wiki/Heapsort) algorithm. -- Otherwise, it uses a Quicksort algorithm. +- Otherwise, it uses a Quicksort algorithm. This implementation performs an unstable sort; that is, if two elements are equal, their order might not be preserved. In contrast, a stable sort preserves the order of elements that are equal. @@ -4136,11 +4136,11 @@ Public Function StartsWith(e As Employee) As Boolean This method uses , which applies the introspective sort as follows: -- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm +- If the partition size is less than or equal to 16 elements, it uses an insertion sort algorithm -- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a [Heapsort](https://en.wikipedia.org/wiki/Heapsort) algorithm. +- If the number of partitions exceeds 2 log *n*, where *n* is the range of the input array, it uses a [Heapsort](https://en.wikipedia.org/wiki/Heapsort) algorithm. -- Otherwise, it uses a Quicksort algorithm. +- Otherwise, it uses a Quicksort algorithm. This implementation performs an unstable sort; that is, if two elements are equal, their order might not be preserved. In contrast, a stable sort preserves the order of elements that are equal. diff --git a/xml/System.Collections.Generic/SortedDictionary`2+Enumerator.xml b/xml/System.Collections.Generic/SortedDictionary`2+Enumerator.xml index a2d70911204..42e80caaf22 100644 --- a/xml/System.Collections.Generic/SortedDictionary`2+Enumerator.xml +++ b/xml/System.Collections.Generic/SortedDictionary`2+Enumerator.xml @@ -158,7 +158,7 @@ - The last call to returned `false`, which indicates the end of the collection and that the enumerator is positioned after the last element of the collection. -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. does not move the position of the enumerator, and consecutive calls to return the same object until either or is called. diff --git a/xml/System.Collections.Generic/SortedDictionary`2.xml b/xml/System.Collections.Generic/SortedDictionary`2.xml index c1ffc58be1e..17271b88623 100644 --- a/xml/System.Collections.Generic/SortedDictionary`2.xml +++ b/xml/System.Collections.Generic/SortedDictionary`2.xml @@ -122,7 +122,7 @@ - has faster insertion and removal operations for unsorted data: O(log n) as opposed to O(n) for . -- If the list is populated all at once from sorted data, is faster than . +- If the list is populated all at once from sorted data, is faster than . Each key/value pair can be retrieved as a structure, or as a through the nongeneric interface. diff --git a/xml/System.Collections.Generic/SortedList`2.xml b/xml/System.Collections.Generic/SortedList`2.xml index 3d3dc3dfe67..5b0a6664182 100644 --- a/xml/System.Collections.Generic/SortedList`2.xml +++ b/xml/System.Collections.Generic/SortedList`2.xml @@ -123,7 +123,7 @@ - has faster insertion and removal operations for unsorted data, O(log `n`) as opposed to O(`n`) for . -- If the list is populated all at once from sorted data, is faster than . +- If the list is populated all at once from sorted data, is faster than . Another difference between the and classes is that supports efficient indexed retrieval of keys and values through the collections returned by the and properties. It is not necessary to regenerate the lists when the properties are accessed, because the lists are just wrappers for the internal arrays of keys and values. The following code shows the use of the property for indexed retrieval of values from a sorted list of strings: diff --git a/xml/System.Collections.Immutable/IImmutableDictionary`2.xml b/xml/System.Collections.Immutable/IImmutableDictionary`2.xml index 6d8e5232139..4afaed1fba4 100644 --- a/xml/System.Collections.Immutable/IImmutableDictionary`2.xml +++ b/xml/System.Collections.Immutable/IImmutableDictionary`2.xml @@ -62,16 +62,16 @@ The type of keys in the dictionary. The type of values in the dictionary. - Represents an immutable collection of key/value pairs. + Represents an immutable collection of key/value pairs. **NuGet package**: System.Collections.Immutable (about immutable collections and how to install) - requires an equality comparer implementation to determine if two keys are equal. - + requires an equality comparer implementation to determine if two keys are equal. + ]]> @@ -113,11 +113,11 @@ Adds an element with the specified key and value to the dictionary. A new immutable dictionary that contains the additional key/value pair. - The given key already exists in the dictionary but has a different value. @@ -358,11 +358,11 @@ Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. A new immutable dictionary that contains the specified key/value pair. - @@ -449,17 +449,17 @@ if a match for is found; otherwise, . - may be useful: - -- You want to reuse a previously stored object reference instead of creating a new reference. - -- You want to look up the canonical value of an object - -- You want to retrieve more complete data about an object - + may be useful: + +- You want to reuse a previously stored object reference instead of creating a new reference. + +- You want to look up the canonical value of an object + +- You want to retrieve more complete data about an object + ]]> diff --git a/xml/System.Collections.Immutable/IImmutableSet`1.xml b/xml/System.Collections.Immutable/IImmutableSet`1.xml index bd17c8cb07d..ac344fad5fa 100644 --- a/xml/System.Collections.Immutable/IImmutableSet`1.xml +++ b/xml/System.Collections.Immutable/IImmutableSet`1.xml @@ -52,15 +52,15 @@ The type of element stored in the set. - Represents a set of elements that can only be modified by creating a new instance of the set. - + Represents a set of elements that can only be modified by creating a new instance of the set. + **NuGet package**: System.Collections.Immutable (about immutable collections and how to install) - @@ -284,11 +284,11 @@ if the current set is a proper subset of the specified collection; otherwise, . - @@ -329,11 +329,11 @@ if the current set is a proper superset of the specified collection; otherwise, . - @@ -602,15 +602,15 @@ if a matching value was found; otherwise, . - may be useful: - -- You want to reuse a previously stored object reference instead of creating a new reference. - -- You want to retrieve more complete data about an object - + may be useful: + +- You want to reuse a previously stored object reference instead of creating a new reference. + +- You want to retrieve more complete data about an object + ]]> @@ -650,11 +650,11 @@ Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. A new immutable set with the items added; or the original set if all the items were already in the set. - diff --git a/xml/System.Collections.Immutable/ImmutableDictionary`2+Builder.xml b/xml/System.Collections.Immutable/ImmutableDictionary`2+Builder.xml index f5d690e0fa7..089417123e5 100644 --- a/xml/System.Collections.Immutable/ImmutableDictionary`2+Builder.xml +++ b/xml/System.Collections.Immutable/ImmutableDictionary`2+Builder.xml @@ -84,15 +84,15 @@ - Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. - + Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. + **NuGet package**: System.Collections.Immutable (about immutable collections and how to install) - and other methods already provide fast bulk change operations on a collection, the class allows multiple combinations of changes to be made to a set with equal efficiency. - + and other methods already provide fast bulk change operations on a collection, the class allows multiple combinations of changes to be made to a set with equal efficiency. + ]]> @@ -1027,11 +1027,11 @@ The zero-based index in at which copying begins. Copies the elements of the dictionary to an array of type , starting at the specified array index. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1176,11 +1176,11 @@ This member is an explicit interface member implementation. It can be used only The value of the element to add. Adds an element with the provided key and value to the dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1224,11 +1224,11 @@ This member is an explicit interface member implementation. It can be used only if the dictionary contains an element with the key; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1268,11 +1268,11 @@ This member is an explicit interface member implementation. It can be used only Returns an object for the dictionary. An object for the dictionary. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1496,11 +1496,11 @@ This member is an explicit interface member implementation. It can be used only The key of the element to remove. Removes the element with the specified key from the dictionary. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1584,11 +1584,11 @@ This member is an explicit interface member implementation. It can be used only Returns an enumerator that iterates through a collection. An enumerator object that can be used to iterate through the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1625,11 +1625,11 @@ This member is an explicit interface member implementation. It can be used only Creates an immutable dictionary based on the contents of this instance. An immutable dictionary. - @@ -1672,17 +1672,17 @@ This member is an explicit interface member implementation. It can be used only if a match for is found; otherwise, . - may be useful: - -- You want to reuse a previously stored object reference instead of creating a new reference. - -- You want to look up the canonical value of an object - -- You want to retrieve more complete data about an object - + may be useful: + +- You want to reuse a previously stored object reference instead of creating a new reference. + +- You want to look up the canonical value of an object + +- You want to retrieve more complete data about an object + ]]> diff --git a/xml/System.Collections.Immutable/ImmutableDictionary`2.xml b/xml/System.Collections.Immutable/ImmutableDictionary`2.xml index 4b2adace9dc..52dd7c170fc 100644 --- a/xml/System.Collections.Immutable/ImmutableDictionary`2.xml +++ b/xml/System.Collections.Immutable/ImmutableDictionary`2.xml @@ -86,14 +86,14 @@ The type of the keys in the dictionary. The type of the values in the dictionary. - Represents an immutable, unordered collection of keys and values. - + Represents an immutable, unordered collection of keys and values. + **NuGet package**: System.Collections.Immutable (about immutable collections and how to install) - This type is thread safe. @@ -146,11 +146,11 @@ This example shows how to create a new immutable dictionary by adding and removi Adds an element with the specified key and value to the immutable dictionary. A new immutable dictionary that contains the additional key/value pair. - The given key already exists in the dictionary but has a different value. @@ -735,11 +735,11 @@ This example shows how to create a new immutable dictionary by adding and removi Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. A new immutable dictionary that contains the specified key/value pair. - @@ -1259,11 +1259,11 @@ This example shows how to create a new immutable dictionary by adding and removi The zero-based index in at which copying begins. Copies the elements of the dictionary to an array, starting at a particular array index. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1408,11 +1408,11 @@ This member is an explicit interface member implementation. It can be used only The object to use as the value of the element to add. Adds an element with the provided key and value to the immutable dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1451,11 +1451,11 @@ This member is an explicit interface member implementation. It can be used only Clears this instance. - instance is cast to an interface. - + instance is cast to an interface. + ]]> The dictionary object is read-only. @@ -1500,11 +1500,11 @@ This member is an explicit interface member implementation. It can be used only if the dictionary contains an element with the key; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1544,11 +1544,11 @@ This member is an explicit interface member implementation. It can be used only Returns an object for the immutable dictionary object. An enumerator object for the dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1771,11 +1771,11 @@ This member is an explicit interface member implementation. It can be used only The key of the element to remove. Removes the element with the specified key from the immutable dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1859,11 +1859,11 @@ This member is an explicit interface member implementation. It can be used only Returns an enumerator that iterates through a collection. An enumerator object that can be used to iterate through the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2181,11 +2181,11 @@ This member is an explicit interface member implementation. It can be used only Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. A collection with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. - @@ -2231,17 +2231,17 @@ This member is an explicit interface member implementation. It can be used only if a match for is found; otherwise, . - may be useful: - -- You want to reuse a previously stored object reference instead of creating a new reference. - -- You want to look up the canonical value of an object - -- You want to retrieve more complete data about an object - + may be useful: + +- You want to reuse a previously stored object reference instead of creating a new reference. + +- You want to look up the canonical value of an object + +- You want to retrieve more complete data about an object + ]]> diff --git a/xml/System.Collections.Immutable/ImmutableSortedDictionary`2+Builder.xml b/xml/System.Collections.Immutable/ImmutableSortedDictionary`2+Builder.xml index 87f2b8d01bc..632848cdfc1 100644 --- a/xml/System.Collections.Immutable/ImmutableSortedDictionary`2+Builder.xml +++ b/xml/System.Collections.Immutable/ImmutableSortedDictionary`2+Builder.xml @@ -84,15 +84,15 @@ - Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. - + Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. + **NuGet package**: System.Collections.Immutable (about immutable collections and how to install) - @@ -998,15 +998,15 @@ The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. The zero-based index in at which copying begins. - Copies the elements of the dictionary to an array, starting at a particular array index. - + Copies the elements of the dictionary to an array, starting at a particular array index. + **NuGet package**: System.Collections.Immutable (about immutable collections and how to install) - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1151,11 +1151,11 @@ This member is an explicit interface member implementation. It can be used only The value of the element to add. Adds an element with the provided key and value to the dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1199,11 +1199,11 @@ This member is an explicit interface member implementation. It can be used only if the dictionary contains an element with the key; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1243,11 +1243,11 @@ This member is an explicit interface member implementation. It can be used only Returns an object for the dictionary. An object for the dictionary. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1470,11 +1470,11 @@ This member is an explicit interface member implementation. It can be used only The key of the element to remove. Removes the element with the specified key from the dictionary. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1558,11 +1558,11 @@ This member is an explicit interface member implementation. It can be used only Returns an enumerator that iterates through a collection. An enumerator object that can be used to iterate through the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1599,11 +1599,11 @@ This member is an explicit interface member implementation. It can be used only Creates an immutable sorted dictionary based on the contents of this instance. An immutable sorted dictionary. - @@ -1646,17 +1646,17 @@ This member is an explicit interface member implementation. It can be used only if a match for is found; otherwise, . - may be useful: - -- You want to reuse a previously stored object reference instead of creating a new reference. - -- You want to look up the canonical value of an object - -- You want to retrieve more complete data about an object - + may be useful: + +- You want to reuse a previously stored object reference instead of creating a new reference. + +- You want to look up the canonical value of an object + +- You want to retrieve more complete data about an object + ]]> diff --git a/xml/System.Collections.Immutable/ImmutableSortedDictionary`2.xml b/xml/System.Collections.Immutable/ImmutableSortedDictionary`2.xml index 331ea13102f..dc9ebbe7c89 100644 --- a/xml/System.Collections.Immutable/ImmutableSortedDictionary`2.xml +++ b/xml/System.Collections.Immutable/ImmutableSortedDictionary`2.xml @@ -90,8 +90,8 @@ The type of the key contained in the dictionary. The type of the value contained in the dictionary. - Represents an immutable sorted dictionary. - + Represents an immutable sorted dictionary. + **NuGet package**: System.Collections.Immutable (about immutable collections and how to install) To be added. This type is thread safe. @@ -134,11 +134,11 @@ Adds an element with the specified key and value to the immutable sorted dictionary. A new immutable sorted dictionary that contains the additional key/value pair. - The given key already exists in the dictionary but has a different value. @@ -710,11 +710,11 @@ Sets the specified key and value in the immutable sorted dictionary, possibly overwriting an existing value for the given key. A new immutable sorted dictionary that contains the specified key/value pair. - @@ -1234,11 +1234,11 @@ The zero-based index in at which copying begins. Copies the elements of the dictionary to an array, starting at a particular array index. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1383,11 +1383,11 @@ This member is an explicit interface member implementation. It can be used only The object to use as the value of the element to add. Adds an element with the provided key and value to the dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1426,11 +1426,11 @@ This member is an explicit interface member implementation. It can be used only Clears this instance. - instance is cast to an interface. - + instance is cast to an interface. + ]]> The dictionary object is read-only. @@ -1475,11 +1475,11 @@ This member is an explicit interface member implementation. It can be used only if the dictionary contains an element with the key; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1519,11 +1519,11 @@ This member is an explicit interface member implementation. It can be used only Returns an object for the immutable dictionary object. An enumerator object for the dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1746,11 +1746,11 @@ This member is an explicit interface member implementation. It can be used only The key of the element to remove. Removes the element with the specified key from the immutable dictionary object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1834,11 +1834,11 @@ This member is an explicit interface member implementation. It can be used only Returns an enumerator that iterates through a collection. An enumerator object that can be used to iterate through the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2156,11 +2156,11 @@ This member is an explicit interface member implementation. It can be used only Creates an immutable sorted dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. A collection with the same contents as this dictionary. - @@ -2206,17 +2206,17 @@ This member is an explicit interface member implementation. It can be used only if a match for is found; otherwise, . - may be useful: - -- You want to reuse a previously stored object reference instead of creating a new reference. - -- You want to look up the canonical value of an object - -- You want to retrieve more complete data about an object - + may be useful: + +- You want to reuse a previously stored object reference instead of creating a new reference. + +- You want to look up the canonical value of an object + +- You want to retrieve more complete data about an object + ]]> diff --git a/xml/System.Collections/CollectionBase.xml b/xml/System.Collections/CollectionBase.xml index d5f9239538e..d13b6fd7f62 100644 --- a/xml/System.Collections/CollectionBase.xml +++ b/xml/System.Collections/CollectionBase.xml @@ -87,7 +87,7 @@ A instance is always modifiable. See class and uses that implementation to create a collection of objects. - + :::code language="csharp" source="~/snippets/csharp/System.Collections/CollectionBase/Overview/collectionbase.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections.CollectionBase/VB/collectionbase.vb" id="Snippet1"::: @@ -855,9 +855,9 @@ A instance is always modifiable. See instance is always modifiable. See instance is always modifiable. See interface. - + :::code language="csharp" source="~/snippets/csharp/System.Collections/DictionaryEntry/Key/Dictionary.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Dictionary/VB/Dictionary.vb" id="Snippet1"::: @@ -142,11 +142,11 @@ is undefined under any of the following conditions: -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . -- The last call to returned `false`, which indicates the end of the collection. +- The last call to returned `false`, which indicates the end of the collection. -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. returns the same object until is called. sets to the next element. @@ -211,11 +211,11 @@ is undefined under any of the following conditions: -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . -- The last call to returned `false`, which indicates the end of the collection. +- The last call to returned `false`, which indicates the end of the collection. -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. returns the same object until is called. sets to the key of the next element in enumeration. @@ -283,11 +283,11 @@ ## Remarks is undefined under any of the following conditions: -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . -- The last call to returned `false`, which indicates the end of the collection. +- The last call to returned `false`, which indicates the end of the collection. -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. returns the same object until is called. sets to the value of the next element in enumeration. diff --git a/xml/System.Collections/IEnumerator.xml b/xml/System.Collections/IEnumerator.xml index 447ab80392c..44a0a5e28a9 100644 --- a/xml/System.Collections/IEnumerator.xml +++ b/xml/System.Collections/IEnumerator.xml @@ -58,37 +58,37 @@ Supports a simple iteration over a non-generic collection. - is the base interface for all non-generic enumerators. Its generic equivalent is the interface. - - The `foreach` statement of the C# language (`for each` in Visual Basic) hides the complexity of the enumerators. Therefore, using `foreach` is recommended instead of directly manipulating the enumerator. - - Enumerators can be used to read the data in the collection, but they cannot be used to modify the underlying collection. - - The method is provided for COM interoperability and does not need to be fully implemented; instead, the implementer can throw a . - - Initially, the enumerator is positioned before the first element in the collection. You must call the method to advance the enumerator to the first element of the collection before reading the value of ; otherwise, is undefined. - - returns the same object until either or is called. sets to the next element. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, is undefined. - - To set to the first element of the collection again, you can call , if it's implemented, followed by . If is not implemented, you must create a new enumerator instance to return to the first element of the collection. - - If changes are made to the collection, such as adding, modifying, or deleting elements, the behavior of the enumerator is undefined. - - The enumerator does not have exclusive access to the collection; therefore, enumerating through a collection is intrinsically not a thread-safe procedure. Even when a collection is synchronized, other threads can still modify the collection, which causes the enumerator to throw an exception. To guarantee thread safety during enumeration, you can either lock the collection during the entire enumeration or catch the exceptions resulting from changes made by other threads. - - - -## Examples - The following code example demonstrates the implementation of the and interfaces for a custom collection. In this example, members of these interfaces are not explicitly called, but they are implemented to support the use of `foreach` (`for each` in Visual Basic) to iterate through the collection. - + is the base interface for all non-generic enumerators. Its generic equivalent is the interface. + + The `foreach` statement of the C# language (`for each` in Visual Basic) hides the complexity of the enumerators. Therefore, using `foreach` is recommended instead of directly manipulating the enumerator. + + Enumerators can be used to read the data in the collection, but they cannot be used to modify the underlying collection. + + The method is provided for COM interoperability and does not need to be fully implemented; instead, the implementer can throw a . + + Initially, the enumerator is positioned before the first element in the collection. You must call the method to advance the enumerator to the first element of the collection before reading the value of ; otherwise, is undefined. + + returns the same object until either or is called. sets to the next element. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the last call to returned `false`, is undefined. + + To set to the first element of the collection again, you can call , if it's implemented, followed by . If is not implemented, you must create a new enumerator instance to return to the first element of the collection. + + If changes are made to the collection, such as adding, modifying, or deleting elements, the behavior of the enumerator is undefined. + + The enumerator does not have exclusive access to the collection; therefore, enumerating through a collection is intrinsically not a thread-safe procedure. Even when a collection is synchronized, other threads can still modify the collection, which causes the enumerator to throw an exception. To guarantee thread safety during enumeration, you can either lock the collection during the entire enumeration or catch the exceptions resulting from changes made by other threads. + + + +## Examples + The following code example demonstrates the implementation of the and interfaces for a custom collection. In this example, members of these interfaces are not explicitly called, but they are implemented to support the use of `foreach` (`for each` in Visual Basic) to iterate through the collection. + :::code language="csharp" source="~/snippets/csharp/System.Collections/IEnumerable/Overview/ienumerator.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet1"::: + ]]> @@ -140,27 +140,27 @@ Gets the element in the collection at the current position of the enumerator. The element in the collection at the current position of the enumerator. - is undefined under any of the following conditions: - -- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . - -- The last call to returned `false`, which indicates the end of the collection. - -- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. - - returns the same object until is called. sets to the next element. - - - -## Examples - The following code example demonstrates the implementation of the interfaces for a custom collection. In this example, is not explicitly called, but it is implemented to support the use of `foreach` (`for each` in Visual Basic). This code example is part of a larger example for the interface. - + is undefined under any of the following conditions: + +- The enumerator is positioned before the first element in the collection, immediately after the enumerator is created. must be called to advance the enumerator to the first element of the collection before reading the value of . + +- The last call to returned `false`, which indicates the end of the collection. + +- The enumerator is invalidated due to changes made in the collection, such as adding, modifying, or deleting elements. + + returns the same object until is called. sets to the next element. + + + +## Examples + The following code example demonstrates the implementation of the interfaces for a custom collection. In this example, is not explicitly called, but it is implemented to support the use of `foreach` (`for each` in Visual Basic). This code example is part of a larger example for the interface. + :::code language="csharp" source="~/snippets/csharp/System.Collections/IEnumerable/Overview/ienumerator.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet2"::: + ]]> @@ -212,23 +212,23 @@ if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. - method is called, an enumerator is positioned before the first element of the collection, and the first call to the method moves the enumerator over the first element of the collection. - - If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. - - If changes are made to the collection, such as adding, modifying, or deleting elements, the behavior of is undefined. - - - -## Examples - The following code example demonstrates the implementation of the interfaces for a custom collection. In this example, is not explicitly called, but it is implemented to support the use of `foreach` (`for each` in Visual Basic). This code example is part of a larger example for the interface. - + method is called, an enumerator is positioned before the first element of the collection, and the first call to the method moves the enumerator over the first element of the collection. + + If passes the end of the collection, the enumerator is positioned after the last element in the collection and returns `false`. When the enumerator is at this position, subsequent calls to also return `false` until is called. + + If changes are made to the collection, such as adding, modifying, or deleting elements, the behavior of is undefined. + + + +## Examples + The following code example demonstrates the implementation of the interfaces for a custom collection. In this example, is not explicitly called, but it is implemented to support the use of `foreach` (`for each` in Visual Basic). This code example is part of a larger example for the interface. + :::code language="csharp" source="~/snippets/csharp/System.Collections/IEnumerable/Overview/ienumerator.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet2"::: + ]]> @@ -279,21 +279,21 @@ Sets the enumerator to its initial position, which is before the first element in the collection. - is undefined. - - The method is provided for COM interoperability. It does not necessarily need to be implemented; instead, the implementer can simply throw a . - - - -## Examples - The following code example demonstrates the implementation of the interfaces for a custom collection. In this example, is not explicitly called, but it is implemented to support the use of `foreach` (`for each` in Visual Basic). This code example is part of a larger example for the interface. - + is undefined. + + The method is provided for COM interoperability. It does not necessarily need to be implemented; instead, the implementer can simply throw a . + + + +## Examples + The following code example demonstrates the implementation of the interfaces for a custom collection. In this example, is not explicitly called, but it is implemented to support the use of `foreach` (`for each` in Visual Basic). This code example is part of a larger example for the interface. + :::code language="csharp" source="~/snippets/csharp/System.Collections/IEnumerable/Overview/ienumerator.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Collections_EnumeratorInterfaces/vb/ienumerator.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.Collections/IStructuralComparable.xml b/xml/System.Collections/IStructuralComparable.xml index 8c27a5e15dc..9947daa7eab 100644 --- a/xml/System.Collections/IStructuralComparable.xml +++ b/xml/System.Collections/IStructuralComparable.xml @@ -46,32 +46,32 @@ Supports the structural comparison of collection objects. - interface enables you to implement customized comparisons for collection members. That is, you can define precisely what it means for one collection object to precede, follow, or occur in the same position in the sort order as a second collection object. You can then specify that this definition be used with a collection type that accepts the interface. - - The interface has a single member, , which determines whether the current collection object is less than, equal to, or greater than a second object in the sort order. The actual comparison of the members or elements in the current instance with those in a second object is performed by an interface implementation, which contains the definition of your custom comparison. - + interface enables you to implement customized comparisons for collection members. That is, you can define precisely what it means for one collection object to precede, follow, or occur in the same position in the sort order as a second collection object. You can then specify that this definition be used with a collection type that accepts the interface. + + The interface has a single member, , which determines whether the current collection object is less than, equal to, or greater than a second object in the sort order. The actual comparison of the members or elements in the current instance with those in a second object is performed by an interface implementation, which contains the definition of your custom comparison. + > [!NOTE] -> The interface supports only structural comparisons for sorting or ordering. The interface supports custom comparisons for structural equality. - - The .NET Framework provides two default comparers. One is returned by the property; the other is returned by the property. - - The generic tuple classes (, , , and so on) and the class provide explicit implementations of the interface. By casting (in C#) or converting (in Visual Basic) the current instance of an array or tuple to an interface value and providing your implementation as an argument to the method, you can define a custom sort order for the array or collection. However, you do not call the method directly in most cases. Instead, the method is called by sorting methods such as . In this case, you define your implementation and pass it as an argument to a sorting method or collection object's class constructor. The method with your custom comparer is then called automatically whenever the collection is sorted. - - - -## Examples - The following example creates an array of objects that contains population data for three U.S. cities from 1960 to 2000. The sextuple's first component is the city name. The remaining five components represent the population at ten-year intervals from 1960 to 2000. - - The `PopulationComparer` class provides an implementation that allows the array of sextuples to be sorted by any one of its components. Two values are provided to the `PopulationComparer` class in its constructor: the position of the component that defines the sort order, and a Boolean value that indicates whether the tuple objects should be sorted in ascending or descending order. - - The example then displays the elements in the array in unsorted order, sorts them by the third component (the population in 1970) and displays them, and then sorts them by the sixth component (the population in 2000) and displays them. Note that the example does not directly call the method. The method is called implicitly by the method for each tuple object in the array. - +> The interface supports only structural comparisons for sorting or ordering. The interface supports custom comparisons for structural equality. + + The .NET Framework provides two default comparers. One is returned by the property; the other is returned by the property. + + The generic tuple classes (, , , and so on) and the class provide explicit implementations of the interface. By casting (in C#) or converting (in Visual Basic) the current instance of an array or tuple to an interface value and providing your implementation as an argument to the method, you can define a custom sort order for the array or collection. However, you do not call the method directly in most cases. Instead, the method is called by sorting methods such as . In this case, you define your implementation and pass it as an argument to a sorting method or collection object's class constructor. The method with your custom comparer is then called automatically whenever the collection is sorted. + + + +## Examples + The following example creates an array of objects that contains population data for three U.S. cities from 1960 to 2000. The sextuple's first component is the city name. The remaining five components represent the population at ten-year intervals from 1960 to 2000. + + The `PopulationComparer` class provides an implementation that allows the array of sextuples to be sorted by any one of its components. Two values are provided to the `PopulationComparer` class in its constructor: the position of the component that defines the sort order, and a Boolean value that indicates whether the tuple objects should be sorted in ascending or descending order. + + The example then displays the elements in the array in unsorted order, sorts them by the third component (the population in 1970) and displays them, and then sorts them by the sixth component (the population in 2000) and displays them. Note that the example does not directly call the method. The method is called implicitly by the method for each tuple object in the array. + :::code language="csharp" source="~/snippets/csharp/System/TupleT1,T2,T3,T4,T5,T6/System.Collections.IStructuralComparable.CompareTo/compareto2.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.tuple`6.compareto/vb/compareto2.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.tuple`6.compareto/vb/compareto2.vb" id="Snippet2"::: + ]]> @@ -132,49 +132,49 @@ The object to compare with the current instance. An object that compares members of the current collection object with the corresponding members of . Determines whether the current collection object precedes, occurs in the same position as, or follows another object in the sort order. - A signed integer that indicates the relationship of the current collection object to in the sort order:
- If less than 0, the current instance precedes .
- If 0, the current instance and are equal.
- If greater than 0, the current instance follows . - - Return value - - Description - - -1 - - The current instance precedes . - - 0 - - The current instance and are equal. - - 1 - - The current instance follows . - + A signed integer that indicates the relationship of the current collection object to in the sort order:
- If less than 0, the current instance precedes .
- If 0, the current instance and are equal.
- If greater than 0, the current instance follows . + + Return value + + Description + + -1 + + The current instance precedes . + + 0 + + The current instance and are equal. + + 1 + + The current instance follows . +
- method supports custom structural comparison and sorting of array and tuple objects. The method calls the `comparer` object's method to compare individual array elements or tuple components, starting with the first element or component. The individual calls to end and the method returns a value when one of the following conditions becomes true: - -- The method returns -1. - -- The method returns 1. - -- The method is called for the last element or component in the collection object. - - - -## Examples - The following example creates an array of objects that contains population data for three U.S. cities from 1960 to 2000. The sextuple's first component is the city name. The remaining five components represent the population at ten-year intervals from 1960 to 2000. - - The `PopulationComparer` class provides an implementation that allows the array of sextuples to be sorted by any one of its components. Two values are provided to the `PopulationComparer` class in its constructor: the position of the component that defines the sort order, and a value that indicates whether the tuple objects should be sorted in ascending or descending order. - - The example then displays the elements in the array in unsorted order, sorts them by the third component (the population in 1970) and displays them, and then sorts them by the sixth component (the population in 2000) and displays them. Note that the example does not directly call the implementation. The method is called implicitly by the method for each tuple object in the array. - + method supports custom structural comparison and sorting of array and tuple objects. The method calls the `comparer` object's method to compare individual array elements or tuple components, starting with the first element or component. The individual calls to end and the method returns a value when one of the following conditions becomes true: + +- The method returns -1. + +- The method returns 1. + +- The method is called for the last element or component in the collection object. + + + +## Examples + The following example creates an array of objects that contains population data for three U.S. cities from 1960 to 2000. The sextuple's first component is the city name. The remaining five components represent the population at ten-year intervals from 1960 to 2000. + + The `PopulationComparer` class provides an implementation that allows the array of sextuples to be sorted by any one of its components. Two values are provided to the `PopulationComparer` class in its constructor: the position of the component that defines the sort order, and a value that indicates whether the tuple objects should be sorted in ascending or descending order. + + The example then displays the elements in the array in unsorted order, sorts them by the third component (the population in 1970) and displays them, and then sorts them by the sixth component (the population in 2000) and displays them. Note that the example does not directly call the implementation. The method is called implicitly by the method for each tuple object in the array. + :::code language="csharp" source="~/snippets/csharp/System/TupleT1,T2,T3,T4,T5,T6/System.Collections.IStructuralComparable.CompareTo/compareto2.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.tuple`6.compareto/vb/compareto2.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.tuple`6.compareto/vb/compareto2.vb" id="Snippet2"::: + ]]> This instance and are not the same type. diff --git a/xml/System.Collections/StructuralComparisons.xml b/xml/System.Collections/StructuralComparisons.xml index 5a5637c80f3..962bad6b613 100644 --- a/xml/System.Collections/StructuralComparisons.xml +++ b/xml/System.Collections/StructuralComparisons.xml @@ -51,17 +51,17 @@ Provides objects for performing a structural comparison of two collection objects. - class returns the following two predefined comparison objects: - -- An implementation that can be passed to a method such as or to perform a structural comparison of two objects. It is designed to indicate whether the first object precedes, follows, or occurs in the same position as the second object in the sort order. - -- An implementation that can be passed to a method such as or to perform a comparison for structural equality. - - The objects can be used to perform a structural comparison or a structural equality comparison of two collection objects, such as array or tuple objects. In structural comparison, two objects are compared based on their values. Objects can be ordered based on some criteria, and two objects are considered equal when they have equal values, not because they reference the same physical object - + class returns the following two predefined comparison objects: + +- An implementation that can be passed to a method such as or to perform a structural comparison of two objects. It is designed to indicate whether the first object precedes, follows, or occurs in the same position as the second object in the sort order. + +- An implementation that can be passed to a method such as or to perform a comparison for structural equality. + + The objects can be used to perform a structural comparison or a structural equality comparison of two collection objects, such as array or tuple objects. In structural comparison, two objects are compared based on their values. Objects can be ordered based on some criteria, and two objects are considered equal when they have equal values, not because they reference the same physical object + ]]> @@ -105,17 +105,17 @@ Gets a predefined object that performs a structural comparison of two objects. A predefined object that is used to perform a structural comparison of two collection objects. - object returned by this property is passed to the comparison method of a collection object, such as or , its method is called for each member of an array or for each component of a tuple. This implementation of the method behaves as follows when it compares each item of a collection object with the corresponding item of another collection object: - -- It considers two items that are `null` to be equal, and considers a null item to be less than an item that is not null. - -- If the first item in the comparison can be cast to an object (in other words, if it is a collection object that implements the interface), it calls the method. - -- If the first item in the comparison cannot be cast to an object (in other words, if it is not a collection object that implements the interface), it calls the `Comparer.Default.Compare` method. - + object returned by this property is passed to the comparison method of a collection object, such as or , its method is called for each member of an array or for each component of a tuple. This implementation of the method behaves as follows when it compares each item of a collection object with the corresponding item of another collection object: + +- It considers two items that are `null` to be equal, and considers a null item to be less than an item that is not null. + +- If the first item in the comparison can be cast to an object (in other words, if it is a collection object that implements the interface), it calls the method. + +- If the first item in the comparison cannot be cast to an object (in other words, if it is not a collection object that implements the interface), it calls the `Comparer.Default.Compare` method. + ]]> @@ -160,19 +160,19 @@ Gets a predefined object that compares two objects for structural equality. A predefined object that is used to compare two collection objects for structural equality. - object returned by this property is passed to the equality comparison method of a collection object, such as or , its method is called for each member of an array or for each component of a tuple. This implementation of the method behaves as follows when it compares each item of a collection object with the corresponding item of another collection object: - -- If both items are `null`, it considers the two items to be equal. - -- If one item is null but the other item is not, it considers the two items to be unequal. - -- If the first item in the comparison can be cast to an object (in other words, if it is a collection object that implements the interface), it calls the method. - -- If the first item in the comparison cannot be cast to an object (in other words, if it is not a collection object that implements the interface), it calls the item's `Equals` method. - + object returned by this property is passed to the equality comparison method of a collection object, such as or , its method is called for each member of an array or for each component of a tuple. This implementation of the method behaves as follows when it compares each item of a collection object with the corresponding item of another collection object: + +- If both items are `null`, it considers the two items to be equal. + +- If one item is null but the other item is not, it considers the two items to be unequal. + +- If the first item in the comparison can be cast to an object (in other words, if it is a collection object that implements the interface), it calls the method. + +- If the first item in the comparison cannot be cast to an object (in other words, if it is not a collection object that implements the interface), it calls the item's `Equals` method. + ]]> diff --git a/xml/System.ComponentModel.Composition.Hosting/CompositionScopeDefinition.xml b/xml/System.ComponentModel.Composition.Hosting/CompositionScopeDefinition.xml index 22f0c142140..a1adada8c95 100644 --- a/xml/System.ComponentModel.Composition.Hosting/CompositionScopeDefinition.xml +++ b/xml/System.ComponentModel.Composition.Hosting/CompositionScopeDefinition.xml @@ -240,9 +240,9 @@ ## Remarks This method is called only by the public `Dispose()` and `Finalize()` methods; do not call this method directly.When you implement the dispose pattern, the Boolean parameter of the `Dispose(Boolean)` method should be used as follows: -- The `Dispose()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `true` to release both managed and unmanaged resources. +- The `Dispose()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `true` to release both managed and unmanaged resources. -- The `Finalize()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `false` to release only unmanaged resources. +- The `Finalize()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `false` to release only unmanaged resources. For more information, see [Implementing a Dispose method](/dotnet/standard/garbage-collection/implementing-dispose). diff --git a/xml/System.ComponentModel.Composition.Hosting/FilteredCatalog.xml b/xml/System.ComponentModel.Composition.Hosting/FilteredCatalog.xml index 3e95578cf31..0edcc08487d 100644 --- a/xml/System.ComponentModel.Composition.Hosting/FilteredCatalog.xml +++ b/xml/System.ComponentModel.Composition.Hosting/FilteredCatalog.xml @@ -182,9 +182,9 @@ ## Remarks This method is called only by the public `Dispose()` and `Finalize()` methods; do not call this method directly.When you implement the dispose pattern, the Boolean parameter of the `Dispose(Boolean)` method should be used as follows: -- The `Dispose()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `true` to release both managed and unmanaged resources. +- The `Dispose()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `true` to release both managed and unmanaged resources. -- The `Finalize()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `false` to release only unmanaged resources. +- The `Finalize()` method of the current object should call `Dispose(Boolean)` with the Boolean parameter set to `false` to release only unmanaged resources. For more information, see [Implementing a Dispose method](/dotnet/standard/garbage-collection/implementing-dispose). diff --git a/xml/System.ComponentModel.DataAnnotations/DataType.xml b/xml/System.ComponentModel.DataAnnotations/DataType.xml index 8dfc5c767e0..ecb9d9f21d0 100644 --- a/xml/System.ComponentModel.DataAnnotations/DataType.xml +++ b/xml/System.ComponentModel.DataAnnotations/DataType.xml @@ -35,35 +35,35 @@ Represents an enumeration of the data types associated with data fields and parameters. - attribute class to specify the data type you want to associate with the data field or parameter. You select the data type from this enumeration. - - The attribute lets you mark fields by using a type that is more specific than the database intrinsic types. For example, a string data field that contains email addresses can be attributed with the enumerated value. This information can be accessed by the field templates and modify how the data field is processed. + attribute class to specify the data type you want to associate with the data field or parameter. You select the data type from this enumeration. + + The attribute lets you mark fields by using a type that is more specific than the database intrinsic types. For example, a string data field that contains email addresses can be attributed with the enumerated value. This information can be accessed by the field templates and modify how the data field is processed. + +## Examples + The following example uses the attribute to customize the display of EmailAddress data field of the customer table in the AdventureWorksLT database. The email addresses are shown as hyperlinks instead of the simple text that ASP.NET Dynamic Data would have inferred from the intrinsic data type. + + The example code: + +- Implements a metadata partial class for the related table and the associated metadata class. + +- Applies the attribute to the EmailAddress data field by specifying the enumerated value in the associated metadata class. This indicates to the Text.ascx field template that the email address display is customized. -## Examples - The following example uses the attribute to customize the display of EmailAddress data field of the customer table in the AdventureWorksLT database. The email addresses are shown as hyperlinks instead of the simple text that ASP.NET Dynamic Data would have inferred from the intrinsic data type. - - The example code: - -- Implements a metadata partial class for the related table and the associated metadata class. - -- Applies the attribute to the EmailAddress data field by specifying the enumerated value in the associated metadata class. This indicates to the Text.ascx field template that the email address display is customized. - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/CS/Customer.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Customer.vb" id="Snippet1"::: - - To compile the example code, you need the following: - -- Visual Studio 2008 Service Pack 1 or Visual Developer 2008 Express Edition Service Pack 1. - -- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases/). Make sure that you install the correct version of the sample database for the version of SQL Server that you are running (SQL Server 2005 or SQL Server 2008). - -- A Dynamic Data Web site. This enables you to create a data context for the database and the class that contains the data field to customize and the methods to override. In addition, it creates the environment in which to use the page described before. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](/previous-versions/aspnet/cc488469(v=vs.100)). - - For the complete code example that the field template uses to customize the display of the EmailAddress data fields, see the attribute. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Customer.vb" id="Snippet1"::: + + To compile the example code, you need the following: + +- Visual Studio 2008 Service Pack 1 or Visual Developer 2008 Express Edition Service Pack 1. + +- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases/). Make sure that you install the correct version of the sample database for the version of SQL Server that you are running (SQL Server 2005 or SQL Server 2008). + +- A Dynamic Data Web site. This enables you to create a data context for the database and the class that contains the data field to customize and the methods to override. In addition, it creates the environment in which to use the page described before. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](/previous-versions/aspnet/cc488469(v=vs.100)). + + For the complete code example that the field template uses to customize the display of the EmailAddress data fields, see the attribute. + ]]> diff --git a/xml/System.ComponentModel.DataAnnotations/DataTypeAttribute.xml b/xml/System.ComponentModel.DataAnnotations/DataTypeAttribute.xml index 0ac020340e8..68ac991bd9a 100644 --- a/xml/System.ComponentModel.DataAnnotations/DataTypeAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/DataTypeAttribute.xml @@ -50,54 +50,54 @@ Specifies the name of an additional type to associate with a data field. - attribute enables you to mark fields by using a type that is more specific than the database intrinsic type. The type name is selected from the enumeration type. For example, a string data field that contains email addresses can be specified as the type. This information is then accessed by the field templates to modify how the data field is processed. - - You use the attribute for the following reasons: - -- To provide additional type information for a data field. You do this by applying the attribute to a data field in the data model and by specifying the additional type name from the enumeration. The field template that processes the data field can access this additional metadata type information to determine how to process the field. For example, the text field template can generate hyperlinks for email addresses whose intrinsic type is `String`. - -- To associate a custom field template with a data field. The specified custom field template will then be used to process the data field. This is an alternative to using the attribute. - - When you apply the attribute to a data field you must do the following: - -- Follow the attribute usage rules. - -- Implement the metadata class that contains the data fields to which you want to apply the attribute. - -- Issue validation errors as appropriate. - - For more information, see [ASP.NET Dynamic Data Guidelines](/previous-versions/aspnet/cc668215(v=vs.100)). - - -## Examples - The following example uses the attribute to customize the display of the EmailAddress data field. The email addresses are shown as hyperlinks instead of as simple text, which is what Dynamic Data would infer from the intrinsic data type. The example code is in three parts, and it performs the following steps: - -- It implements a metadata partial class and the associated metadata class. - -- In the associated metadata class, it applies the attribute to the EmailAddress data field by specifying the enumerated value. This indicates to the Text.ascx field template that it should customize the display of email addresses. - -- It modifies the Text.ascx field template to customize the display of the EmailAddress data fields. - + attribute enables you to mark fields by using a type that is more specific than the database intrinsic type. The type name is selected from the enumeration type. For example, a string data field that contains email addresses can be specified as the type. This information is then accessed by the field templates to modify how the data field is processed. + + You use the attribute for the following reasons: + +- To provide additional type information for a data field. You do this by applying the attribute to a data field in the data model and by specifying the additional type name from the enumeration. The field template that processes the data field can access this additional metadata type information to determine how to process the field. For example, the text field template can generate hyperlinks for email addresses whose intrinsic type is `String`. + +- To associate a custom field template with a data field. The specified custom field template will then be used to process the data field. This is an alternative to using the attribute. + + When you apply the attribute to a data field you must do the following: + +- Follow the attribute usage rules. + +- Implement the metadata class that contains the data fields to which you want to apply the attribute. + +- Issue validation errors as appropriate. + + For more information, see [ASP.NET Dynamic Data Guidelines](/previous-versions/aspnet/cc668215(v=vs.100)). + + +## Examples + The following example uses the attribute to customize the display of the EmailAddress data field. The email addresses are shown as hyperlinks instead of as simple text, which is what Dynamic Data would infer from the intrinsic data type. The example code is in three parts, and it performs the following steps: + +- It implements a metadata partial class and the associated metadata class. + +- In the associated metadata class, it applies the attribute to the EmailAddress data field by specifying the enumerated value. This indicates to the Text.ascx field template that it should customize the display of email addresses. + +- It modifies the Text.ascx field template to customize the display of the EmailAddress data fields. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/CS/Customer.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Customer.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Customer.vb" id="Snippet1"::: + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/CS/Text.ascx" id="Snippet2"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Text.ascx" id="Snippet2"::: - + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/CS/Text.ascx.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Text.ascx.vb" id="Snippet3"::: - - To compile and run the example code, you need the following: - -- Any edition of Visual Studio 2010 or later. - -- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. - -- A data-driven Web site. This enables you to create a data context for the database and to create the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Text.ascx.vb" id="Snippet3"::: + + To compile and run the example code, you need the following: + +- Any edition of Visual Studio 2010 or later. + +- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. + +- A data-driven Web site. This enables you to create a data context for the database and to create the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. + ]]> @@ -155,19 +155,19 @@ The name of the type to associate with the data field. Initializes a new instance of the class by using the specified type name. - enumeration. - - - -## Examples - The following example shows how to use the constructor to specify an alternative type for a data field. - + enumeration. + + + +## Examples + The following example shows how to use the constructor to specify an alternative type for a data field. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/CS/Customer.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Customer.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DataTypeAttribute/VB/Customer.vb" id="Snippet11"::: + ]]> @@ -208,11 +208,11 @@ The name of the custom field template to associate with the data field. Initializes a new instance of the class by using the specified field template name. - attribute. - + attribute. + ]]> @@ -395,11 +395,11 @@ Returns the name of the type that is associated with the data field. The name of the type associated with the data field. - The current attribute is ill-formed. @@ -447,11 +447,11 @@ always. - attribute. - + attribute. + ]]> diff --git a/xml/System.ComponentModel.DataAnnotations/DisplayColumnAttribute.xml b/xml/System.ComponentModel.DataAnnotations/DisplayColumnAttribute.xml index ee9a3d8ac92..676d772f032 100644 --- a/xml/System.ComponentModel.DataAnnotations/DisplayColumnAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/DisplayColumnAttribute.xml @@ -46,45 +46,45 @@ Specifies the column that is displayed in the referred table as a foreign-key column. - attribute enables you to change this default behavior and to specify a different parent table column to use as the column for the foreign key field. - - When you apply this attribute, you must adhere to the following usage constraints: - -- The attribute can only be applied to a class. - -- The attribute can be inherited by derived classes. - -- The attribute can be applied only one time. - + attribute enables you to change this default behavior and to specify a different parent table column to use as the column for the foreign key field. + + When you apply this attribute, you must adhere to the following usage constraints: + +- The attribute can only be applied to a class. + +- The attribute can be inherited by derived classes. + +- The attribute can be applied only one time. + + + ## Examples + The following example shows how to use the attribute. The example performs the following tasks: + +- Implements metadata partial classes for the Address and Customer tables, which are parent tables for the CustomerAddress table. + +- Applies the attribute to the `Address` metadata partial class to specify the following: + + - The City column from the Address table (the parent table) is displayed as the foreign-key column in the CustomerAddress child table. + + - The PostalCode column from the Address table (the parent table) is used for sorting the Address selection box in the CustomerAddress child table. + + - The sort order is set to ascending. + + The example applies the attribute to the `Customer` metadata partial class to specify that the LastName column in displayed as the foreign-key column for the CustomerAddress table. - ## Examples - The following example shows how to use the attribute. The example performs the following tasks: - -- Implements metadata partial classes for the Address and Customer tables, which are parent tables for the CustomerAddress table. - -- Applies the attribute to the `Address` metadata partial class to specify the following: - - - The City column from the Address table (the parent table) is displayed as the foreign-key column in the CustomerAddress child table. - - - The PostalCode column from the Address table (the parent table) is used for sorting the Address selection box in the CustomerAddress child table. - - - The sort order is set to ascending. - - The example applies the attribute to the `Customer` metadata partial class to specify that the LastName column in displayed as the foreign-key column for the CustomerAddress table. - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DisplayColumnAttribute/CS/Address.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DisplayColumnAttribute/VB/Address.vb" id="Snippet1"::: - - To compile the example, you need the following: - -- Any edition of Visual Studio 2010 or later. - -- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. - -- A dynamic data-driven Web site. This enables you to create a data context for the database and to create the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.DisplayColumnAttribute/VB/Address.vb" id="Snippet1"::: + + To compile the example, you need the following: + +- Any edition of Visual Studio 2010 or later. + +- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. + +- A dynamic data-driven Web site. This enables you to create a data context for the database and to create the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. ]]> @@ -142,14 +142,14 @@ The name of the column to use as the display column. Initializes a new instance of the class by using the specified column. - @@ -206,11 +206,11 @@ The name of the column to use for sorting. Initializes a new instance of the class by using the specified display and sort columns. - @@ -264,14 +264,14 @@ to sort in descending order; otherwise, . The default is . Initializes a new instance of the class by using the specified display column, and the specified sort column and sort order. -
diff --git a/xml/System.ComponentModel.DataAnnotations/DisplayFormatAttribute.xml b/xml/System.ComponentModel.DataAnnotations/DisplayFormatAttribute.xml index 1605f92d3b9..d86a462100e 100644 --- a/xml/System.ComponentModel.DataAnnotations/DisplayFormatAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/DisplayFormatAttribute.xml @@ -56,9 +56,9 @@ The following example shows how to use the to customize formatting for a data field. The example performs the following steps: -- Implements a metadata partial class and an associated metadata class. +- Implements a metadata partial class and an associated metadata class. -- In the associated metadata class, it applies the attribute to specify the following results: +- In the associated metadata class, it applies the attribute to specify the following results: - Display the text "[Null]" when a data field is empty. @@ -71,11 +71,11 @@ To compile the example, you need the following: -- Any edition of Visual Studio 2010 or later. +- Any edition of Visual Studio 2010 or later. -- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. +- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. -- A data-driven Web site. This enables you to create a data context for the database and the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. +- A data-driven Web site. This enables you to create a data context for the database and the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. ]]> diff --git a/xml/System.ComponentModel.DataAnnotations/MetadataTypeAttribute.xml b/xml/System.ComponentModel.DataAnnotations/MetadataTypeAttribute.xml index 4c84af1c85b..b9e362061a7 100644 --- a/xml/System.ComponentModel.DataAnnotations/MetadataTypeAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/MetadataTypeAttribute.xml @@ -44,37 +44,37 @@ Specifies the metadata class to associate with a data model class. - attribute enables you to associate a class with a data-model partial class. In this associated class you provide additional metadata information that is not in the data model. - - For example, in the associated class you can apply the attribute to a data field. This enforces that a value is provided for the field even if this constraint is not required by the database schema. - - You use the attribute as follows: - -- In your application, create a file in which you create the data-model partial class that you want to modify. - -- Create the associated metadata class. - -- Apply the attribute to the partial entity class, specifying the associated class. - - When you apply this attribute, you must adhere to the following usage constraints: - -- The attribute can only be applied to a class. - -- The attribute cannot be inherited by derived classes. - -- The attribute can be applied only one time. - - - -## Examples - The following example shows how to use the to associate a metadata class with an entity partial class. The example applies the attribute to a data field to show how to provide additional information in the associated metadata class. - + attribute enables you to associate a class with a data-model partial class. In this associated class you provide additional metadata information that is not in the data model. + + For example, in the associated class you can apply the attribute to a data field. This enforces that a value is provided for the field even if this constraint is not required by the database schema. + + You use the attribute as follows: + +- In your application, create a file in which you create the data-model partial class that you want to modify. + +- Create the associated metadata class. + +- Apply the attribute to the partial entity class, specifying the associated class. + + When you apply this attribute, you must adhere to the following usage constraints: + +- The attribute can only be applied to a class. + +- The attribute cannot be inherited by derived classes. + +- The attribute can be applied only one time. + + + +## Examples + The following example shows how to use the to associate a metadata class with an entity partial class. The example applies the attribute to a data field to show how to provide additional information in the associated metadata class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.MetadataTypeAttribute/CS/Customer.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.MetadataTypeAttribute/VB/Customer.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.MetadataTypeAttribute/VB/Customer.vb" id="Snippet1"::: + ]]> @@ -124,14 +124,14 @@ The metadata class to reference. Initializes a new instance of the class. - to associate a metadata class with an entity partial class. - + to associate a metadata class with an entity partial class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.MetadataTypeAttribute/CS/Customer.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.MetadataTypeAttribute/VB/Customer.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.MetadataTypeAttribute/VB/Customer.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.ComponentModel.DataAnnotations/RangeAttribute.xml b/xml/System.ComponentModel.DataAnnotations/RangeAttribute.xml index 026177953ad..4910ccd7902 100644 --- a/xml/System.ComponentModel.DataAnnotations/RangeAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/RangeAttribute.xml @@ -50,35 +50,35 @@ Specifies the numeric range constraints for the value of a data field. - to customize formatting for a data field. The example performs the following steps: - -- Implements a metadata partial class and the associated metadata class. - -- In the associated metadata class, it applies the attribute to obtain the following results: - - - Apply the attribute to a data field of type integer. - - - Apply the attribute to an integer data field and define a custom validation error message. - - - Apply the attribute to a `DateTime` data field and define a custom validation error message. - + to customize formatting for a data field. The example performs the following steps: + +- Implements a metadata partial class and the associated metadata class. + +- In the associated metadata class, it applies the attribute to obtain the following results: + + - Apply the attribute to a data field of type integer. + + - Apply the attribute to an integer data field and define a custom validation error message. + + - Apply the attribute to a `DateTime` data field and define a custom validation error message. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/CS/Product.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/VB/Product.vb" id="Snippet1"::: - - To compile the example, you need the following: - -- Microsoft Visual Studio 2008 Service Pack 1 or Visual Web Developer 2008 Express Edition SP1. - -- A data-driven Web site. This enables you to create a data context for the database and the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/VB/Product.vb" id="Snippet1"::: + + To compile the example, you need the following: + +- Microsoft Visual Studio 2008 Service Pack 1 or Visual Web Developer 2008 Express Edition SP1. + +- A data-driven Web site. This enables you to create a data context for the database and the class that contains the data field to customize. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. + ]]> @@ -171,14 +171,14 @@ Specifies the maximum value allowed for the data field value. Initializes a new instance of the class by using the specified minimum and maximum values. - to specify the range for an integer data field. - + to specify the range for an integer data field. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/CS/Product.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/VB/Product.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/VB/Product.vb" id="Snippet11"::: + ]]>
@@ -236,19 +236,19 @@ Specifies the maximum value allowed for the data field value. Initializes a new instance of the class by using the specified minimum and maximum values and the specific type. - interface. - - - -## Examples - The following example shows how to use the method to specify the range for a `DateTime` field. It also includes a custom error message that shows how to use the formatting capabilities of the method. - + interface. + + + +## Examples + The following example shows how to use the method to specify the range for a `DateTime` field. It also includes a custom error message that shows how to use the formatting capabilities of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/CS/Product.cs" id="Snippet13"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/VB/Product.vb" id="Snippet13"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RangeAttribute/VB/Product.vb" id="Snippet13"::: + ]]> @@ -333,11 +333,11 @@ This property has no effect on the constructors with or Formats the error message that is displayed when range validation fails.
The formatted error message. - creates the error message by using the name of the data field that caused the validation failure. You can override this method in a custom validation attribute to customize how errors are created, or to provide a more complex message that contains parameters that you evaluate at run time. For an example, see the constructor. - + creates the error message by using the name of the data field that caused the validation failure. You can override this method in a custom validation attribute to customize how errors are created, or to provide a more complex message that contains parameters that you evaluate at run time. For an example, see the constructor. + ]]> The current attribute is ill-formed. @@ -501,11 +501,11 @@ This property has no effect on the constructors with or Gets the minimum allowed field value.
The minimum value that is allowed for the data field. -
@@ -582,11 +582,11 @@ This property has no effect on the constructors with or Gets the type of the data field whose value must be validated.
The type of the data field whose value must be validated. - interface. - + interface. + ]]>
diff --git a/xml/System.ComponentModel.DataAnnotations/RegularExpressionAttribute.xml b/xml/System.ComponentModel.DataAnnotations/RegularExpressionAttribute.xml index d1f1e1e1cec..02aa0b5c10a 100644 --- a/xml/System.ComponentModel.DataAnnotations/RegularExpressionAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/RegularExpressionAttribute.xml @@ -50,25 +50,25 @@ Specifies that a data field value in ASP.NET Dynamic Data must match the specified regular expression. - attribute to validate the FirstName and LastName data fields. The regular expression allows up to 40 uppercase and lowercase characters. The example performs the following tasks: + +- Implements a metadata partial class and the associated metadata class. + +- In the associated metadata class, applies the attribute to the FirstName and LastName data fields, specifying the pattern and custom error messages. -The regular expression searches for an exact match, not using `^` before and `$` at the end of the pattern produces the same results as using it. For a search hit, prepend and append the pattern with `.*`. - - - -## Examples - The following example shows how to use the attribute to validate the FirstName and LastName data fields. The regular expression allows up to 40 uppercase and lowercase characters. The example performs the following tasks: - -- Implements a metadata partial class and the associated metadata class. - -- In the associated metadata class, applies the attribute to the FirstName and LastName data fields, specifying the pattern and custom error messages. - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RegularExpressionAttribute/CS/Customer.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RegularExpressionAttribute/VB/Customer.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RegularExpressionAttribute/VB/Customer.vb" id="Snippet1"::: + ]]> @@ -116,14 +116,14 @@ The regular expression searches for an exact match, not using `^` before and `$` The regular expression that is used to validate the data field value. Initializes a new instance of the class. - to a data field. If validation fails, the code in the example displays the validation error message that is provided by Dynamic Data. - + to a data field. If validation fails, the code in the example displays the validation error message that is provided by Dynamic Data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RegularExpressionAttribute/CS/Customer.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RegularExpressionAttribute/VB/Customer.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RegularExpressionAttribute/VB/Customer.vb" id="Snippet2"::: + ]]> @@ -170,11 +170,11 @@ The regular expression searches for an exact match, not using `^` before and `$` Formats the error message to display if the regular expression validation fails. The formatted error message. - creates the error message by using the name of the data field that caused the validation failure. You can override this method in custom validation attributes to customize how errors are created or to provide a more complex message that contains parameters that you evaluate at run time. - + creates the error message by using the name of the data field that caused the validation failure. You can override this method in custom validation attributes to customize how errors are created or to provide a more complex message that contains parameters that you evaluate at run time. + ]]> The current attribute is ill-formed. diff --git a/xml/System.ComponentModel.DataAnnotations/RequiredAttribute.xml b/xml/System.ComponentModel.DataAnnotations/RequiredAttribute.xml index 26b97b67ed0..f91bc8eccd1 100644 --- a/xml/System.ComponentModel.DataAnnotations/RequiredAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/RequiredAttribute.xml @@ -46,28 +46,28 @@ Specifies that a data field value is required. - attribute specifies that when a field on a form is validated, the field must contain a value. A validation exception is raised if the property is `null`, contains an empty string (""), or contains only white-space characters. - + attribute specifies that when a field on a form is validated, the field must contain a value. A validation exception is raised if the property is `null`, contains an empty string (""), or contains only white-space characters. + > [!NOTE] -> If the MVC data model or entity partial class contains a field that is annotated with the attribute, but the page does not contain the property, an error is not raised. Validation occurs only for fields that are submitted to the server. - -## Examples - The following example uses the attribute to override the database schema rule that allows a data field to be empty. The example performs the following steps: - -- Implements a metadata partial class and the associated metadata class. - -- In the associated metadata class, it applies the attribute, which specifies the following requirements: - - - The Title data field cannot be empty. If validation fails, the code in the example throws a validation exception and displays an error message. The error message is specified at the time that the attribute is applied to the data field. - - - The MiddleName data field cannot be empty. If validation fails, the code in the example throws a validation exception and displays an error message. - +> If the MVC data model or entity partial class contains a field that is annotated with the attribute, but the page does not contain the property, an error is not raised. Validation occurs only for fields that are submitted to the server. + +## Examples + The following example uses the attribute to override the database schema rule that allows a data field to be empty. The example performs the following steps: + +- Implements a metadata partial class and the associated metadata class. + +- In the associated metadata class, it applies the attribute, which specifies the following requirements: + + - The Title data field cannot be empty. If validation fails, the code in the example throws a validation exception and displays an error message. The error message is specified at the time that the attribute is applied to the data field. + + - The MiddleName data field cannot be empty. If validation fails, the code in the example throws a validation exception and displays an error message. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RequiredAttribute/CS/Customer.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RequiredAttribute/VB/Customer.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RequiredAttribute/VB/Customer.vb" id="Snippet1"::: + ]]> @@ -104,14 +104,14 @@ Initializes a new instance of the class. - constructor. If validation fails, the example displays a validation error message that is provided by Dynamic Data. - + constructor. If validation fails, the example displays a validation error message that is provided by Dynamic Data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RequiredAttribute/CS/Customer.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RequiredAttribute/VB/Customer.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.ComponentModel.DataAnnotations.RequiredAttribute/VB/Customer.vb" id="Snippet3"::: + ]]> @@ -162,13 +162,13 @@ if an empty string is allowed; otherwise, . The default value is . - to `true` for a data field, Dynamic Data does not perform validation and transforms the empty string to a `null` value. This value is then passed to the database. - - If the database does not allow `null` values, it raises an error. To avoid this error, you must also set the to `false`. - + to `true` for a data field, Dynamic Data does not perform validation and transforms the empty string to a `null` value. This value is then passed to the database. + + If the database does not allow `null` values, it raises an error. To avoid this error, you must also set the to `false`. + ]]> @@ -215,11 +215,11 @@ if validation is successful; otherwise, . - The data field value was . diff --git a/xml/System.ComponentModel.DataAnnotations/ScaffoldColumnAttribute.xml b/xml/System.ComponentModel.DataAnnotations/ScaffoldColumnAttribute.xml index 6b32b5ca2ba..b43f7046afd 100644 --- a/xml/System.ComponentModel.DataAnnotations/ScaffoldColumnAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/ScaffoldColumnAttribute.xml @@ -42,73 +42,73 @@ Specifies whether a class or data column uses scaffolding. - property to enable scaffolding in a Dynamic Data Web Site. - - Scaffolding enhances ASP.NET page framework by dynamically displaying pages based on the data model with no physical pages required. - - Scaffolding provides the following capabilities: - -- Minimal or no code to create a data-driven Web application. - -- Quick development time. - -- Pages that are fully functional and include display, insert, edit, delete, sorting, and paging functionalities. - -- Built-in data validation that is based on the database schema. - -- Filters that are created for each foreign key or Boolean fields. - - This class can be used to enable or disable scaffolding of data columns in a data model by applying this attribute to the appropriate data field object in the class that represents the table. - - -## Examples - The following code example exposes the ProductID column of the Products table in the AdventureWorksLT data base by applying the scaffold property to the ProductID object in the Products partial class and setting it to `true`. It hides the ThumbnailPhotoFileName column by applying the scaffold property to the ThumbnailPhotoFileName object and setting it to `false`. - -```csharp -[MetadataType(typeof(ProductMetadata))] -public partial class Product -{ - -} - -public class ProductMetadata -{ - [ScaffoldColumn(true)] - public object ProductID; - - [ScaffoldColumn(false)] - public object ThumbnailPhotoFileName; - -} -``` - -```vb - -Public Partial Class Product - -End Class - -Public Class ProductMetadata - - Public ProductID As Object - - - Public ThumbnailPhotoFileName As Object - -End Class - -``` - - To compile the example code, you need the following: - -- Any edition of Visual Studio 2010 or later. - -- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. - -- A Dynamic Data Web site. This enables you to create a data context for the database and the class that contains the data field to customize and the methods to override. In addition, it creates the environment in which to use the page described before. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](/previous-versions/aspnet/cc488469(v=vs.100)). + property to enable scaffolding in a Dynamic Data Web Site. + + Scaffolding enhances ASP.NET page framework by dynamically displaying pages based on the data model with no physical pages required. + + Scaffolding provides the following capabilities: + +- Minimal or no code to create a data-driven Web application. + +- Quick development time. + +- Pages that are fully functional and include display, insert, edit, delete, sorting, and paging functionalities. + +- Built-in data validation that is based on the database schema. + +- Filters that are created for each foreign key or Boolean fields. + + This class can be used to enable or disable scaffolding of data columns in a data model by applying this attribute to the appropriate data field object in the class that represents the table. + + +## Examples + The following code example exposes the ProductID column of the Products table in the AdventureWorksLT data base by applying the scaffold property to the ProductID object in the Products partial class and setting it to `true`. It hides the ThumbnailPhotoFileName column by applying the scaffold property to the ThumbnailPhotoFileName object and setting it to `false`. + +```csharp +[MetadataType(typeof(ProductMetadata))] +public partial class Product +{ + +} + +public class ProductMetadata +{ + [ScaffoldColumn(true)] + public object ProductID; + + [ScaffoldColumn(false)] + public object ThumbnailPhotoFileName; + +} +``` + +```vb + +Public Partial Class Product + +End Class + +Public Class ProductMetadata + + Public ProductID As Object + + + Public ThumbnailPhotoFileName As Object + +End Class + +``` + + To compile the example code, you need the following: + +- Any edition of Visual Studio 2010 or later. + +- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. + +- A Dynamic Data Web site. This enables you to create a data context for the database and the class that contains the data field to customize and the methods to override. In addition, it creates the environment in which to use the page described before. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](/previous-versions/aspnet/cc488469(v=vs.100)). ]]> @@ -150,11 +150,11 @@ End Class The value that specifies whether scaffolding is enabled. Initializes a new instance of using the property. - @@ -202,11 +202,11 @@ End Class if scaffolding is enabled; otherwise, . - diff --git a/xml/System.ComponentModel.DataAnnotations/ScaffoldTableAttribute.xml b/xml/System.ComponentModel.DataAnnotations/ScaffoldTableAttribute.xml index bb9e5fe63db..8898e454437 100644 --- a/xml/System.ComponentModel.DataAnnotations/ScaffoldTableAttribute.xml +++ b/xml/System.ComponentModel.DataAnnotations/ScaffoldTableAttribute.xml @@ -24,64 +24,64 @@ Specifies whether a class or data table uses scaffolding. - property to enable scaffolding of individual tables in a Dynamic Data Web Site. Scaffolding enhances the ASP.NET page framework by dynamically displaying pages based on the data model with no physical pages required. - - Scaffolding provides the following: - -- Minimal or no code to create a data-driven Web application. - -- Quick development time. - -- Pages that are fully functional, including display, insert, edit, delete, sorting, and paging functionalities. - -- Built-in data validation based on the database schema. - -- Filters that are created for each foreign key or Boolean fields. - - This class can be used to enable or disable scaffolding of data tables in a data model by applying this attribute to the partial class that represents the table. - - - -## Examples - The following code example hides the ErrorLog Table in AdventureWorksLT database by applying the scaffold attribute to the ErrorLog partial class that represents the ErrorLog table. The scaffold property is set to `false`. - -```csharp -[MetadataType (typeof(ErrorLogMetadata))] -[ScaffoldTable(false)] -public partial class ErrorLog -{ - -} - -public class ErrorLogMetadata -{ - -} -``` - -```vb - _ - -Public Partial Class ErrorLog - -End Class - -Public Class ErrorLogMetadata - -End Class -``` - - To compile the example code, you need the following: - -- Visual Studio 2008 Service Pack 1 or Visual Developer 2008 Express Edition Service Pack 1. - -- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. - -- A Dynamic Data Web site. This enables you to create a data context for the database and the class that contains the data field to customize and the methods to override. In addition, it creates the environment in which to use the page described before. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](/previous-versions/aspnet/cc488469(v=vs.100)). - + property to enable scaffolding of individual tables in a Dynamic Data Web Site. Scaffolding enhances the ASP.NET page framework by dynamically displaying pages based on the data model with no physical pages required. + + Scaffolding provides the following: + +- Minimal or no code to create a data-driven Web application. + +- Quick development time. + +- Pages that are fully functional, including display, insert, edit, delete, sorting, and paging functionalities. + +- Built-in data validation based on the database schema. + +- Filters that are created for each foreign key or Boolean fields. + + This class can be used to enable or disable scaffolding of data tables in a data model by applying this attribute to the partial class that represents the table. + + + +## Examples + The following code example hides the ErrorLog Table in AdventureWorksLT database by applying the scaffold attribute to the ErrorLog partial class that represents the ErrorLog table. The scaffold property is set to `false`. + +```csharp +[MetadataType (typeof(ErrorLogMetadata))] +[ScaffoldTable(false)] +public partial class ErrorLog +{ + +} + +public class ErrorLogMetadata +{ + +} +``` + +```vb + _ + +Public Partial Class ErrorLog + +End Class + +Public Class ErrorLogMetadata + +End Class +``` + + To compile the example code, you need the following: + +- Visual Studio 2008 Service Pack 1 or Visual Developer 2008 Express Edition Service Pack 1. + +- The AdventureWorksLT sample database. For information about how to download and install the SQL Server sample database, see [Microsoft SQL Server Product Samples: Database](https://github.com/Microsoft/sql-server-samples/releases) on GitHub. Make sure that you install the correct version of the sample database for the version of SQL Server that you are running. + +- A Dynamic Data Web site. This enables you to create a data context for the database and the class that contains the data field to customize and the methods to override. In addition, it creates the environment in which to use the page described before. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](/previous-versions/aspnet/cc488469(v=vs.100)). + ]]> ASP.NET Dynamic Data Scaffolding @@ -108,11 +108,11 @@ End Class The value that specifies whether scaffolding is enabled. Initializes a new instance of using the property. - @@ -144,11 +144,11 @@ End Class if scaffolding is enabled; otherwise, . - . - + . + ]]> diff --git a/xml/System.ComponentModel.Design.Serialization/BasicDesignerLoader.xml b/xml/System.ComponentModel.Design.Serialization/BasicDesignerLoader.xml index ca717e3bdd4..989ec63a39d 100644 --- a/xml/System.ComponentModel.Design.Serialization/BasicDesignerLoader.xml +++ b/xml/System.ComponentModel.Design.Serialization/BasicDesignerLoader.xml @@ -49,26 +49,26 @@ Provides an implementation of the interface. - is a complete implementation of a designer loader without anything relating to a persistence format. A does not dictate either a text or binary persistence, but it does support the following features: - -- Multiple load dependencies. - -- Tracking changes within the designer. - -- Deferred idle-time reloading. - - A adds two kinds of services to the designer host's service container: replaceable services and irreplaceable services. You can replace a replaceable service by changing the value of the protected property. You cannot replace irreplaceable services because their implementations depend on each other. - - The following table describes the services that are provided by default. - -|Default Service|Description| -|---------------------|-----------------| -||Allows objects to request that the designer reload itself when it is idle. This is a replaceable service.| -||Used to serialize and deserialize objects. The serialization manager is added as a service so objects that need to perform serialization can utilize any serialization providers that were added to the serialization manager. This is an irreplaceable service.| - + is a complete implementation of a designer loader without anything relating to a persistence format. A does not dictate either a text or binary persistence, but it does support the following features: + +- Multiple load dependencies. + +- Tracking changes within the designer. + +- Deferred idle-time reloading. + + A adds two kinds of services to the designer host's service container: replaceable services and irreplaceable services. You can replace a replaceable service by changing the value of the protected property. You cannot replace irreplaceable services because their implementations depend on each other. + + The following table describes the services that are provided by default. + +|Default Service|Description| +|---------------------|-----------------| +||Allows objects to request that the designer reload itself when it is idle. This is a replaceable service.| +||Used to serialize and deserialize objects. The serialization manager is added as a service so objects that need to perform serialization can utilize any serialization providers that were added to the serialization manager. This is an irreplaceable service.| + ]]> @@ -139,19 +139,19 @@ The designer loader host to load. Starts the loading process. - method. You do not need to override this method in your own class. The method performs the following actions: - -- It verifies that the design surface has not already loaded. - -- On the first call, it adds relevant services and calls the method. - -- It calls the , , and methods. - - If the designer loader service has not been removed from the service container, will call the and methods instead of the and methods. In this situation, it is the responsibility of the designer loader service to call and . - + method. You do not need to override this method in your own class. The method performs the following actions: + +- It verifies that the design surface has not already loaded. + +- On the first call, it adds relevant services and calls the method. + +- It calls the , , and methods. + + If the designer loader service has not been removed from the service container, will call the and methods instead of the and methods. In this situation, it is the responsibility of the designer loader service to call and . + ]]> @@ -193,16 +193,16 @@ Releases the resources used by the . - method does not flush changes to the designer loader. If you want changes to be saved, call before calling . - - Call when you are finished using the . The method leaves the in an unusable state. After calling , you must release all references to the so the garbage collector can reclaim the memory that the was occupying. For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). - + method does not flush changes to the designer loader. If you want changes to be saved, call before calling . + + Call when you are finished using the . The method leaves the in an unusable state. After calling , you must release all references to the so the garbage collector can reclaim the memory that the was occupying. For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). + > [!NOTE] -> Always call before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. - +> Always call before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. + ]]> @@ -276,11 +276,11 @@ Flushes pending changes to the designer loader. - method returns immediately. Otherwise, asks the serialization manager to create a serialization session and then calls . - + method returns immediately. Otherwise, asks the serialization manager to create a serialization session and then calls . + ]]> @@ -320,11 +320,11 @@ Gets the requested service. The requested service, or if the requested service cannot be found. - is a helper method that allows classes deriving from to access services offered by the designer loader host. - + is a helper method that allows classes deriving from to access services offered by the designer loader host. + ]]> @@ -359,11 +359,11 @@ Initializes services. - method is called the first time is invoked. You can add any services necessary to the designer loader host at this time. The base implementation adds services that provides, so after calling the base implementation you may replace existing services. You must remove any custom services you add here by overriding . - + method is called the first time is invoked. You can add any services necessary to the designer loader host at this time. The base implementation adds services that provides, so after calling the base implementation you may replace existing services. You must remove any custom services you add here by overriding . + ]]> The has not been initialized. @@ -402,11 +402,11 @@ if the designer should be reloaded; otherwise, . The default implementation always returns . - method is used by some designer loaders to optimize reloading. This method can be overridden if your designer loader supports intelligent reloading. Some designer loaders can detect changes made to their underlying document and determine if a reload of the designer is actually necessary. If not, they should return `false` from this method. The default implementation always returns `true`, indicating that any call to will succeed. - + method is used by some designer loaders to optimize reloading. This method can be overridden if your designer loader supports intelligent reloading. Some designer loaders can detect changes made to their underlying document and determine if a reload of the designer is actually necessary. If not, they should return `false` from this method. The default implementation always returns `true`, indicating that any call to will succeed. + ]]> @@ -441,11 +441,11 @@ Gets the loader host. The that was passed to the method. - has not been called yet, or if this designer loader has been disposed. - + has not been called yet, or if this designer loader has been disposed. + ]]> The has not been initialized. @@ -484,11 +484,11 @@ if the designer loader is currently loading the design surface; otherwise, . - class provides the , which supports load dependencies. This property takes load dependencies into account and will return `true` if there are any outstanding load dependencies. - + class provides the , which supports load dependencies. This property takes load dependencies into account and will return `true` if there are any outstanding load dependencies. + ]]> @@ -524,11 +524,11 @@ if the designer has been modified; otherwise, . - method is called, the designer loader will call the method. - + method is called, the designer loader will call the method. + ]]> @@ -563,15 +563,15 @@ Notifies the designer loader that loading is about to begin. - method is invoked to start the loading process. You should perform any necessary initialization for loading at this time. This method should not be used to perform the actual load. The default implementation disables change notifications and sets up the for loading. - - If you implement to provide dependent load support, you should call when the first dependent load occurs. Call the method after the last call to the method. By default, implements and does this for you. If is not available when is called, will directly call . - - If you provide your own loader service, or if you choose not to provide a loader service, you are responsible for calling this method. The method will automatically call this, either indirectly by calling if is available, or directly if it is not. - + method is invoked to start the loading process. You should perform any necessary initialization for loading at this time. This method should not be used to perform the actual load. The default implementation disables change notifications and sets up the for loading. + + If you implement to provide dependent load support, you should call when the first dependent load occurs. Call the method after the last call to the method. By default, implements and does this for you. If is not available when is called, will directly call . + + If you provide your own loader service, or if you choose not to provide a loader service, you are responsible for calling this method. The method will automatically call this, either indirectly by calling if is available, or directly if it is not. + ]]> @@ -606,13 +606,13 @@ Notifies the designer loader that unloading is about to begin. - method is invoked when the designer loader is about to unload the document. - - The document may be unloaded in preparation for reloading, or if the document failed to load. If you added document-specific services in or , remove them here. - + method is invoked when the designer loader is about to unload the document. + + The document may be unloaded in preparation for reloading, or if the document failed to load. If you added document-specific services in or , remove them here. + ]]> @@ -654,15 +654,15 @@ An containing objects (usually exceptions) that were reported as errors. Notifies the designer loader that loading is complete. - method is invoked when loading is finished. It is always called, even if an exception is thrown during loading. The value of `successful` will be set to `true` if the load succeeded, or `false` if a fatal error occurred. The `errors` collection will contain objects that were reported as errors. Usually, these objects are exceptions. - - If you implement to provide dependent load support, you should call the method after the last call to the method. By default, implements and does this for you. If is not available when is called, will directly call after calling . - - This method should be called by the designer loader service when all dependent loads have been completed. This stops the loading process that was initiated by the method. If you provide your own loader service, or if you choose not to provide a loader service, you are responsible for calling this method. The method will automatically call this, either indirectly by calling the method if is available, or directly if it is not. - + method is invoked when loading is finished. It is always called, even if an exception is thrown during loading. The value of `successful` will be set to `true` if the load succeeded, or `false` if a fatal error occurred. The `errors` collection will contain objects that were reported as errors. Usually, these objects are exceptions. + + If you implement to provide dependent load support, you should call the method after the last call to the method. By default, implements and does this for you. If is not available when is called, will directly call after calling . + + This method should be called by the designer loader service when all dependent loads have been completed. This stops the loading process that was initiated by the method. If you provide your own loader service, or if you choose not to provide a loader service, you are responsible for calling this method. The method will automatically call this, either indirectly by calling the method if is available, or directly if it is not. + ]]> The has not been initialized. @@ -699,11 +699,11 @@ Notifies the designer loader that the state of the document is about to be modified. - method is called in response to a component changing, adding, or removing event which indicates that the designer is about to be modified. You can implement source code control by overriding this method. A call to does not mean that the property will later be set to `true`; it merely indicates an intention to do so. - + method is called in response to a component changing, adding, or removing event which indicates that the designer is about to be modified. You can implement source code control by overriding this method. A call to does not mean that the property will later be set to `true`; it merely indicates an intention to do so. + ]]> @@ -741,11 +741,11 @@ An to use for persisting the state of loaded designers. Flushes all changes to the designer. - method is invoked when the designer loader needs to flush to persistence any changes made to the designers. It is invoked in response to a call to the method. - + method is invoked when the designer loader needs to flush to persistence any changes made to the designers. It is invoked in response to a call to the method. + ]]> @@ -784,11 +784,11 @@ An to use for loading state for the designers. Loads a designer from persistence. - method is invoked when the designer loader needs to load its state. is called before the method. You must implement this method to load the designer contents. - + method is invoked when the designer loader needs to load its state. is called before the method. You must implement this method to load the designer contents. + ]]> @@ -831,11 +831,11 @@ Gets or sets the property provider for the serialization manager being used by the loader. An object whose properties are to be provided to the serialization manager. - The has not been initialized. @@ -874,11 +874,11 @@ A bitwise combination of the values. Queues a reload of the designer. - method can be invoked by the designer loader to request a reload of the designer. Because reloads are performed at idle time, this method does not actually reload the designer; it just queues the reload. - + method can be invoked by the designer loader to request a reload of the designer. Because reloads are performed at idle time, this method does not actually reload the designer; it just queues the reload. + ]]> @@ -951,11 +951,11 @@ An containing error objects, usually exceptions. Reports errors that occurred while flushing changes. - method is called during if one or more errors occurred while flushing changes. The values in the `errors` collection can be exceptions or objects with values that describe the error. The default implementation of raises the last exception in the collection. - + method is called during if one or more errors occurred while flushing changes. The values in the `errors` collection can be exceptions or objects with values that describe the error. The default implementation of raises the last exception in the collection. + ]]> One or more errors occurred while flushing changes. @@ -994,11 +994,11 @@ A string representing the full name of the component to be designed. Sets the full class name of the base component. - method should be called during loading to establish the full name of the component a designer is designing. - + method should be called during loading to establish the full name of the component a designer is designing. + ]]> @@ -1038,11 +1038,11 @@ Registers an external component as part of the load process managed by . - method once for each external object participating in the load process. The method is called when the work of the load process is done. - + method once for each external object participating in the load process. The method is called when the work of the load process is done. + ]]> The has not been initialized. @@ -1088,13 +1088,13 @@ An containing errors that occurred during the load. Signals that a dependent load has finished. - method is called to signal that a dependent loading operation has completed. Call the method once for every process that was registered by calling the method, which has already completed. - - If the dependent load succeeds, the caller sets the `successful` parameter to `true` and passes either an empty collection or `null` to the `errorCollection` parameter. If the dependent load encounters errors, the caller sets the `successful` parameter to `false` and passes a collection of exceptions that indicate the reason or reasons for failure to the `errorCollection` parameter. - + method is called to signal that a dependent loading operation has completed. Call the method once for every process that was registered by calling the method, which has already completed. + + If the dependent load succeeds, the caller sets the `successful` parameter to `true` and passes either an empty collection or `null` to the `errorCollection` parameter. If the dependent load encounters errors, the caller sets the `successful` parameter to `false` and passes a collection of exceptions that indicate the reason or reasons for failure to the `errorCollection` parameter. + ]]> No load dependencies have been added by , or the has not been initialized. @@ -1136,13 +1136,13 @@ if the reload request is accepted; if the loader does not allow the reload. - method to request that the loader reload the design document. If the loader supports reloading and complies with the reload, the designer loader can return `true`. Otherwise, it returns `false`, indicating that the reload will not occur. Callers cannot rely on the reload happening immediately; the designer loader can schedule this for some other time, or it can try to reload the designer at once. - - The caller can display a message to the user if the designer cannot be reloaded. - + method to request that the loader reload the design document. If the loader supports reloading and complies with the reload, the designer loader can return `true`. Otherwise, it returns `false`, indicating that the reload will not occur. Callers cannot rely on the reload happening immediately; the designer loader can schedule this for some other time, or it can try to reload the designer at once. + + The caller can display a message to the user if the designer cannot be reloaded. + ]]> diff --git a/xml/System.ComponentModel.Design.Serialization/CodeDomSerializerBase.xml b/xml/System.ComponentModel.Design.Serialization/CodeDomSerializerBase.xml index f8d07d2462a..59f73f389c6 100644 --- a/xml/System.ComponentModel.Design.Serialization/CodeDomSerializerBase.xml +++ b/xml/System.ComponentModel.Design.Serialization/CodeDomSerializerBase.xml @@ -475,11 +475,11 @@ ## Remarks The method returns an expression representing the given object. It can return `null`, indicating that no expression has been set that describes the object. Expressions are acquired in one of three ways: -- The expression could be the result of a prior call to the method. +- The expression could be the result of a prior call to the method. -- The expression could have been found in the . +- The expression could have been found in the . -- The expression could be derived through . +- The expression could be derived through . To derive expressions through , the method queries the reference service for a name for the given object. If the expression service returns a valid name, , the method checks to see if there is a "." in the name. This indicates that the expression service found this object as the return value of a read-only property on another object. If there is a ".", will split the reference into parts. The leftmost part is a name that will be evaluated with the method. For each subsequent part, a property reference expression will be built. The final expression will then be returned. diff --git a/xml/System.ComponentModel.Design.Serialization/DesignerSerializationManager.xml b/xml/System.ComponentModel.Design.Serialization/DesignerSerializationManager.xml index 221bb7d9cfe..5450aa30fc2 100644 --- a/xml/System.ComponentModel.Design.Serialization/DesignerSerializationManager.xml +++ b/xml/System.ComponentModel.Design.Serialization/DesignerSerializationManager.xml @@ -49,71 +49,71 @@ Provides an implementation of the interface. - interface is designed to be a format-independent interface to an object that controls serialization. It essentially provides context and services to serializers, which actually perform the deserialization. assists in the deserialization process by keeping track of objects. This is similar in technique to the interface: designers actually provide the user interface (UI), and provides the glue that allows different designers to work together. - - The class implements . It's designed to provide a generic form of deserialization that is similar to run-time serializers like the . - - The class achieves three goals: - -- It is a simple, turnkey object that can be used to deserialize a variety of formats. - -- It is generic and not tied to any particular format. It can be used equally for CodeDOM deserialization as well as markup deserialization. - -- It is extensible and supports different serialization methods that are used in copy/paste and undo/redo scenarios. - - Design-time serialization has the following differences from run-time object serialization: - -- The object performing the serialization is generally separate from the run-time object, so that design-time logic can be removed from a component. - -- The serialization scheme assumes the object will be created fully initialized, and then modified through property and method invocations during deserialization. - -- Properties of an object that have values that were never set on the object (the properties contain the default values) are not serialized. Conversely, the deserialization stream may have holes. - -- Emphasis is placed on the quality of the content within the serialization stream, rather than the full serialization of an object. This means that if there is no defined way to serialize an object, that object may be skipped rather than throwing an exception. The serialization engine may provide heuristics here to decide which failures can be ignored and which are unrecoverable. - -- The serialization stream may have more data than is needed for deserialization. Source code serialization, for example, has user code mixed in with the code needed to deserialize an object graph. This user code must be ignored on deserialization and preserved on serialization. - - Because of these differences, a different serialization model applies to design-time serialization. This model utilizes a separate serializer object for each data type being serialized. Each serializer provides its small contribution to the problem as a whole. These serializers are all coordinated through a common serialization manager. The serialization manager is responsible for maintaining state between these different serializers. As an example, consider the following class: - + interface is designed to be a format-independent interface to an object that controls serialization. It essentially provides context and services to serializers, which actually perform the deserialization. assists in the deserialization process by keeping track of objects. This is similar in technique to the interface: designers actually provide the user interface (UI), and provides the glue that allows different designers to work together. + + The class implements . It's designed to provide a generic form of deserialization that is similar to run-time serializers like the . + + The class achieves three goals: + +- It is a simple, turnkey object that can be used to deserialize a variety of formats. + +- It is generic and not tied to any particular format. It can be used equally for CodeDOM deserialization as well as markup deserialization. + +- It is extensible and supports different serialization methods that are used in copy/paste and undo/redo scenarios. + + Design-time serialization has the following differences from run-time object serialization: + +- The object performing the serialization is generally separate from the run-time object, so that design-time logic can be removed from a component. + +- The serialization scheme assumes the object will be created fully initialized, and then modified through property and method invocations during deserialization. + +- Properties of an object that have values that were never set on the object (the properties contain the default values) are not serialized. Conversely, the deserialization stream may have holes. + +- Emphasis is placed on the quality of the content within the serialization stream, rather than the full serialization of an object. This means that if there is no defined way to serialize an object, that object may be skipped rather than throwing an exception. The serialization engine may provide heuristics here to decide which failures can be ignored and which are unrecoverable. + +- The serialization stream may have more data than is needed for deserialization. Source code serialization, for example, has user code mixed in with the code needed to deserialize an object graph. This user code must be ignored on deserialization and preserved on serialization. + + Because of these differences, a different serialization model applies to design-time serialization. This model utilizes a separate serializer object for each data type being serialized. Each serializer provides its small contribution to the problem as a whole. These serializers are all coordinated through a common serialization manager. The serialization manager is responsible for maintaining state between these different serializers. As an example, consider the following class: + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design.Serialization/DesignerSerializationManager/Overview/Program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.Serialization.DesignerSerializationManager.SampleObject/VB/Program.vb" id="Snippet2"::: - - An instance of this class would utilize three different serializers: one for `SampleObject`, one for strings, and another for integers. The serializer for `SampleObject` is called the root serializer because `SampleObject` is the root of the serialization graph. More complex object graphs can be created as well. For example, consider what would happen if `SampleObject` were changed as follows: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.Serialization.DesignerSerializationManager.SampleObject/VB/Program.vb" id="Snippet2"::: + + An instance of this class would utilize three different serializers: one for `SampleObject`, one for strings, and another for integers. The serializer for `SampleObject` is called the root serializer because `SampleObject` is the root of the serialization graph. More complex object graphs can be created as well. For example, consider what would happen if `SampleObject` were changed as follows: + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design.Serialization/DesignerSerializationManager/Overview/SampleObject.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.Serialization.DesignerSerializationManager.SampleObject/VB/SampleObject.vb" id="Snippet11"::: - - This allows `SampleObject` to have a child that is another instance of itself. The following code fills in the object graph: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.Serialization.DesignerSerializationManager.SampleObject/VB/SampleObject.vb" id="Snippet11"::: + + This allows `SampleObject` to have a child that is another instance of itself. The following code fills in the object graph: + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design.Serialization/DesignerSerializationManager/Overview/SampleObject.cs" id="Snippet12"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.Serialization.DesignerSerializationManager.SampleObject/VB/SampleObject.vb" id="Snippet12"::: - - When `root` is serialized, there will be four serializers used: one root serializer, one serializer for the child `SampleObject`, one serializer for `int`, and one serializer for `string`. Serializers are cached based on type, so there is no need to create a serializer for each instance of `SampleObject`. - - The class is based on the idea of a serialization session. A session maintains state that can be accessed by the various serializers. When a session is disposed, this state is destroyed. This helps to ensure that serializers remain largely stateless, and helps to clean up serializers that are have been corrupted. The following tables describe how state is managed in and among sessions. - -## Global State - This state is owned by the serialization manager object, but is independent of the current serialization session. - -|Object|Usage| -|------------|-----------| -|Serialization providers|Objects can add themselves as custom serialization providers. Because these providers are used to locate serializers, they outlive a serialization session.| - -## Session-Owned State - This state is owned by a session and is destroyed when a session is destroyed. Consequently, accessing any properties or methods that would manipulate this state will throw an exception if the serialization manager is not in an active session. - -|Object|Usage| -|------------|-----------| -| event|The event is attached by a serializer to provide additional resolution of names. All handlers are detached from this event when a session terminates.| -| event|The event is raised just before a session is disposed. Then, all handlers are detached from this event.| -|Name table|The serialization manager maintains a table that maps between objects and their names. Serializers may give objects names for easy identification. This name table is cleared when the session terminates.| -|Serializer cache|The serialization manager maintains a cache of serializers it has been asked to supply. This cache is cleared when the session terminates. The public method can safely be called at any time, but its value is cached only if it is called from within a session.| -|Context stack|The serialization manager maintains an object called the context stack, which you can access with the property. Serializers can use this stack to store additional information that is available to other serializers. For example, a serializer that is serializing a property value can push the property name on the serialization stack before asking the value to serialize. This stack is cleared when the session is terminated.| -|Error list|The serialization manager maintains a list of errors that occurred during serialization. This list, which is accessed through the property, is cleared when the session is terminated. Accessing the property between sessions will result in an exception.| - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.Serialization.DesignerSerializationManager.SampleObject/VB/SampleObject.vb" id="Snippet12"::: + + When `root` is serialized, there will be four serializers used: one root serializer, one serializer for the child `SampleObject`, one serializer for `int`, and one serializer for `string`. Serializers are cached based on type, so there is no need to create a serializer for each instance of `SampleObject`. + + The class is based on the idea of a serialization session. A session maintains state that can be accessed by the various serializers. When a session is disposed, this state is destroyed. This helps to ensure that serializers remain largely stateless, and helps to clean up serializers that are have been corrupted. The following tables describe how state is managed in and among sessions. + +## Global State + This state is owned by the serialization manager object, but is independent of the current serialization session. + +|Object|Usage| +|------------|-----------| +|Serialization providers|Objects can add themselves as custom serialization providers. Because these providers are used to locate serializers, they outlive a serialization session.| + +## Session-Owned State + This state is owned by a session and is destroyed when a session is destroyed. Consequently, accessing any properties or methods that would manipulate this state will throw an exception if the serialization manager is not in an active session. + +|Object|Usage| +|------------|-----------| +| event|The event is attached by a serializer to provide additional resolution of names. All handlers are detached from this event when a session terminates.| +| event|The event is raised just before a session is disposed. Then, all handlers are detached from this event.| +|Name table|The serialization manager maintains a table that maps between objects and their names. Serializers may give objects names for easy identification. This name table is cleared when the session terminates.| +|Serializer cache|The serialization manager maintains a cache of serializers it has been asked to supply. This cache is cleared when the session terminates. The public method can safely be called at any time, but its value is cached only if it is called from within a session.| +|Context stack|The serialization manager maintains an object called the context stack, which you can access with the property. Serializers can use this stack to store additional information that is available to other serializers. For example, a serializer that is serializing a property value can push the property name on the serialization stack before asking the value to serialize. This stack is cleared when the session is terminated.| +|Error list|The serialization manager maintains a list of errors that occurred during serialization. This list, which is accessed through the property, is cleared when the session is terminated. Accessing the property between sessions will result in an exception.| + ]]> @@ -157,11 +157,11 @@ Initializes a new instance of the class. - and properties to `true`. - + and properties to `true`. + ]]> @@ -199,13 +199,13 @@ An . Initializes a new instance of the class with the given service provider. - and properties to `true`. - + and properties to `true`. + ]]> @@ -252,11 +252,11 @@ Gets or sets to the container for this serialization manager. The to which the serialization manager will add components. - and use the container provided by the designer host, should one exist. Otherwise, this property will return `null` and no components will be added to a container. - + and use the container provided by the designer host, should one exist. Otherwise, this property will return `null` and no components will be added to a container. + ]]> The serialization manager has an active serialization session. @@ -318,11 +318,11 @@ Creates an instance of a type. A new instance of the type specified by . - and properties. The method uses reflection to create instances and will perform some generic transformations on parameters to find a matching constructor. - + and properties. The method uses reflection to create instances and will perform some generic transformations on parameters to find a matching constructor. + ]]> @@ -364,11 +364,11 @@ Creates a new serialization session. An that represents a new serialization session. - The serialization manager is already within a session. This version of does not support simultaneous sessions. @@ -406,11 +406,11 @@ Gets the list of errors that occurred during serialization or deserialization. The list of errors that occurred during serialization or deserialization. - This property was accessed outside of a serialization session. @@ -496,11 +496,11 @@ Gets the serializer for the given object type. The serializer for , or , if not found. - @@ -544,11 +544,11 @@ Gets the requested service. The requested service, or if the service cannot be resolved. - method provides access to the underlying container or service provider that was set in the constructor. - + method provides access to the underlying container or service provider that was set in the constructor. + ]]> @@ -588,11 +588,11 @@ Gets the requested type. The requested type, or if the type cannot be resolved. - method will search the service provider for an and, if available, it will delegate to that service to resolve the type. If an is not available, will call the method. - + method will search the service provider for an and, if available, it will delegate to that service to resolve the type. If an is not available, will call the method. + ]]> @@ -630,13 +630,13 @@ A that contains the event data. Raises the event. - method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -680,13 +680,13 @@ An that contains the event data. Raises the event. - method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -729,13 +729,13 @@ An that contains the event data. Raises the event. - method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -782,13 +782,13 @@ if will pass the given component name; if will check for the presence of the given name in the container. The default is . - property determines the behavior of the method. If `true`, will pass the given component name. If `false`, will check for the presence of the given name in the container. If the name does not exist in the container, will use the given name. If the name does exist in the container, will pass a null value as the name of a component when adding it to the container, thereby giving it a new name. This second variation is useful for implementing a serializer that always duplicates objects, rather than assuming those objects do not exist. Paste commands often use this type of serializer. - - You can only change this property when you are not in a serialization session. - + property determines the behavior of the method. If `true`, will pass the given component name. If `false`, will check for the presence of the given name in the container. If the name does not exist in the container, will use the given name. If the name does exist in the container, will pass a null value as the name of a component when adding it to the container, thereby giving it a new name. This second variation is useful for implementing a serializer that always duplicates objects, rather than assuming those objects do not exist. Paste commands often use this type of serializer. + + You can only change this property when you are not in a serialization session. + ]]> This property was changed from within a serialization session. @@ -837,13 +837,13 @@ Gets the object that should be used to provide properties to the serialization manager's property. The object that should be used to provide properties to the serialization manager's property. - property provides a way to give the serialization manager a set of serialization properties that serializers can use to guide their behavior. - - This object's public properties will be inspected and wrapped in new property descriptors that have a target object of the serialization manager. - + property provides a way to give the serialization manager a set of serialization properties that serializers can use to guide their behavior. + + This object's public properties will be inspected and wrapped in new property descriptors that have a target object of the serialization manager. + ]]> @@ -885,13 +885,13 @@ if will return the existing instance; if will create a new instance of a type. The default is . - property is `false`, the method will always create a new instance of a type. If is `true`, will first search the name table and container for an object of the same name. If such an object exists and is of the same type, will return the existing instance. This second variation is useful for implementing a serializer that applies serialization state to an existing set of objects, rather than always creating a new tree. The **Undo** command often uses this type of serializer. - - In the case where the property is `true`, the property will further modify the behavior of depending on the types of the two objects. - + property is `false`, the method will always create a new instance of a type. If is `true`, will first search the name table and container for an object of the same name. If such an object exists and is of the same type, will return the existing instance. This second variation is useful for implementing a serializer that applies serialization state to an existing set of objects, rather than always creating a new tree. The **Undo** command often uses this type of serializer. + + In the case where the property is `true`, the property will further modify the behavior of depending on the types of the two objects. + ]]> The serialization manager has an active serialization session. @@ -1011,11 +1011,11 @@ The serialization provider to add. Adds a custom serialization provider to the serialization manager. - method is used to request a serialization provider, the serialization manager queries the custom serialization providers first before looking in the type's metadata for the appropriate serializer. - + method is used to request a serialization provider, the serialization manager queries the custom serialization providers first before looking in the type's metadata for the appropriate serializer. + ]]> @@ -1055,11 +1055,11 @@ Gets the context stack for this serialization session. A that stores data. - This property was accessed outside of a serialization session. @@ -1211,11 +1211,11 @@ Retrieves a name for the specified object. The name of the object, or if the object is unnamed. - method cannot find a corresponding name for the `value` parameter, it raises the event before it returns `null`. - + method cannot find a corresponding name for the `value` parameter, it raises the event before it returns `null`. + ]]> @@ -1402,11 +1402,11 @@ This member is an explicit interface member implementation. It can be used only The to remove. Removes a previously added serialization provider. - method removes a custom serialization provider that was previously added by a call to the method. - + method removes a custom serialization provider that was previously added by a call to the method. + ]]> @@ -1449,13 +1449,13 @@ This member is an explicit interface member implementation. It can be used only An object containing the error information, usually of type or . Used to report a recoverable error in serialization. - method with the error information. The serialization manager may support reporting a list of errors after it completes, or it may throw an exception from this method and abort the serialization process. The serializer should continue after calling this function. - - adds the `errorInformation` parameter to the collection. If `errorInformation` is `null`, no action is taken. - + method with the error information. The serialization manager may support reporting a list of errors after it completes, or it may throw an exception from this method and abort the serialization process. The serializer should continue after calling this function. + + adds the `errorInformation` parameter to the collection. If `errorInformation` is `null`, no action is taken. + ]]> This property was accessed outside of a serialization session. @@ -1496,7 +1496,7 @@ This member is an explicit interface member implementation. It can be used only method is called, but it fails to find the specified name in the serialization manager's name table. This event provides a way for a serializer to demand-create an object so the serializer does not have to order object creation by dependency. This delegate is cleared immediately after serialization or deserialization is complete. @@ -1541,7 +1541,7 @@ This event provides a way for a serializer to demand-create an object so the ser event can be used to help to organize the process. A serializer can track this event to know that the serialization process is complete. For example, sometimes a serializer needs to write to another file, such as a resource file. In such a case, it would be inefficient to design the serializer to close the file when it is finished because serialization of an object graph generally requires several serializers; therefore, the resource file would be opened and closed many times. Instead, the resource file could be accessed through an object that tracked the event, and that object could close the resource file at the end of serialization. @@ -1592,11 +1592,11 @@ In a related use, this event can be used to remove a temporary service installed A used as the name of the object. Sets the name for the specified object. - method provides a way to set the name of an existing object. This enables creation of an instance of the object through a call to the method, avoiding the overhead of the method. - + method provides a way to set the name of an existing object. This enables creation of an instance of the object through a call to the method, avoiding the overhead of the method. + ]]> One or both of the parameters are . @@ -1649,17 +1649,17 @@ In a related use, this event can be used to remove a temporary service installed An object that specifies the type of service object to get. For a description of this member, see the method. - A service object of type . - - -or- - + A service object of type . + + -or- + if there is no service object of type . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1701,19 +1701,19 @@ In a related use, this event can be used to remove a temporary service installed if verifies types; otherwise, if it does not. The default is . - property modifies the behavior of the method when the property is `true`, as detailed in the following table. - -|`RecycleInstances`|`ValidateRecycledTypes`|Behavior of `CreateInstance`| -|------------------------|-----------------------------|----------------------------------| -|`false`|`true` or `false`|Always create a new instance of the specified type| -|`true`|`false`|If a matching instance is found it is returned, regardless of its type.| -|`true`|`true`|If a matching instance is found, it is returned only if its type is the same as specified in the method call.| - - is useful for morphing one type of object to another if they have similar properties but share no common parent or interface. - + property modifies the behavior of the method when the property is `true`, as detailed in the following table. + +|`RecycleInstances`|`ValidateRecycledTypes`|Behavior of `CreateInstance`| +|------------------------|-----------------------------|----------------------------------| +|`false`|`true` or `false`|Always create a new instance of the specified type| +|`true`|`false`|If a matching instance is found it is returned, regardless of its type.| +|`true`|`true`|If a matching instance is found, it is returned only if its type is the same as specified in the method call.| + + is useful for morphing one type of object to another if they have similar properties but share no common parent or interface. + ]]> The serialization manager has an active serialization session. diff --git a/xml/System.ComponentModel.Design.Serialization/InstanceDescriptor.xml b/xml/System.ComponentModel.Design.Serialization/InstanceDescriptor.xml index d866354163b..1861bbbbedc 100644 --- a/xml/System.ComponentModel.Design.Serialization/InstanceDescriptor.xml +++ b/xml/System.ComponentModel.Design.Serialization/InstanceDescriptor.xml @@ -50,32 +50,32 @@ Provides the information necessary to create an instance of an object. This class cannot be inherited. - can store information that describes an instance of an object. This information can be used to create an instance of the object. - - Some custom serializers use to represent serializable objects. Several methods of a use to represent or instantiate objects. - - An provides the following members: - -- A property that describes this object. - -- An property that consists of the constructor arguments that can be used to instantiate this object. - -- A Boolean property that indicates whether the object is completely represented by the current information. - -- An method that can be used to create an instance of the represented object. - - - -## Examples - The following code example illustrates how to use a type converter that participates in code generation through the use of instance descriptors. - + can store information that describes an instance of an object. This information can be used to create an instance of the object. + + Some custom serializers use to represent serializable objects. Several methods of a use to represent or instantiate objects. + + An provides the following members: + +- A property that describes this object. + +- An property that consists of the constructor arguments that can be used to instantiate this object. + +- A Boolean property that indicates whether the object is completely represented by the current information. + +- An method that can be used to create an instance of the represented object. + + + +## Examples + The following code example illustrates how to use a type converter that participates in code generation through the use of instance descriptors. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/InstanceDescriptorSample/CPP/instancedescriptor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ITypeDescriptorContext/Overview/instancedescriptor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/InstanceDescriptorSample/VB/instancedescriptor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/InstanceDescriptorSample/VB/instancedescriptor.vb" id="Snippet1"::: + ]]> @@ -140,22 +140,22 @@ Initializes a new instance of the class using the specified member information and arguments. To be added. - is of type , , or , and it does not represent a member. + is of type , , or , and it does not represent a member. -or- - - is of type and is not readable. + + is of type and is not readable. -or- - + is of type or , and the number of arguments in does not match the signature of . -or- - is of type and represents a member. + is of type and represents a member. -or- - + is of type , and the number of arguments in is not zero. @@ -205,14 +205,14 @@ Initializes a new instance of the class using the specified member information, arguments, and value indicating whether the specified information completely describes the instance. To be added. - is of type , , or , and it does not represent a member - - is of type and is not readable. - - is of type or and the number of arguments in does not match the signature of . - - is of type and represents a member - + is of type , , or , and it does not represent a member + + is of type and is not readable. + + is of type or and the number of arguments in does not match the signature of . + + is of type and represents a member + is of type , and the number of arguments in is not zero. @@ -308,11 +308,11 @@ Invokes this instance descriptor and returns the object the descriptor describes. The object this instance descriptor describes. - property, using the specified arguments to create that particular type of instance. - + property, using the specified arguments to create that particular type of instance. + ]]> @@ -363,11 +363,11 @@ if the instance is completely described; otherwise, . - completely describes a particular instance. However, some objects are too complex for a single method or constructor to represent. indicates whether an is incomplete, so a user can identify these objects and perform additional processing, if necessary, to further describe their state. - + completely describes a particular instance. However, some objects are too complex for a single method or constructor to represent. indicates whether an is incomplete, so a user can identify these objects and perform additional processing, if necessary, to further describe their state. + ]]> @@ -418,11 +418,11 @@ Gets the member information that describes the instance this descriptor is associated with. A that describes the instance that this object is associated with. - , , , or . - + , , , or . + ]]> diff --git a/xml/System.ComponentModel.Design.Serialization/MemberRelationshipService.xml b/xml/System.ComponentModel.Design.Serialization/MemberRelationshipService.xml index 928613a4de5..1cda1b0969a 100644 --- a/xml/System.ComponentModel.Design.Serialization/MemberRelationshipService.xml +++ b/xml/System.ComponentModel.Design.Serialization/MemberRelationshipService.xml @@ -49,42 +49,42 @@ Provides the base class for relating one member to another. - simplifies retrieval of a property value from another location. A designer can access this service to dictate that one member is assigned the value of another. The code generator searches for such relationships when generating code, and if a relationship between two members is found the code generator, it emits code for the relationship rather than searching for the property value. Using the previous text assignment as an example, the following code example shows design time code used to establish a relationship. - -```csharp -object titleLabel, form; -PropertyDescriptor titleLabelText = TypeDescriptor.GetProperties(titleLabel)["Text"]; -PropertyDescriptor formText = TypeDescriptor.GetProperties(form)["Text"]; -MemberRelationshipService ms = GetService(typeof(MemberRelationshipService); -ms[titleLabel, titleLabelText] = new MemberRelationship(form, formText); -``` - + simplifies retrieval of a property value from another location. A designer can access this service to dictate that one member is assigned the value of another. The code generator searches for such relationships when generating code, and if a relationship between two members is found the code generator, it emits code for the relationship rather than searching for the property value. Using the previous text assignment as an example, the following code example shows design time code used to establish a relationship. + +```csharp +object titleLabel, form; +PropertyDescriptor titleLabelText = TypeDescriptor.GetProperties(titleLabel)["Text"]; +PropertyDescriptor formText = TypeDescriptor.GetProperties(form)["Text"]; +MemberRelationshipService ms = GetService(typeof(MemberRelationshipService); +ms[titleLabel, titleLabelText] = new MemberRelationship(form, formText); +``` + ]]> - The class is . Implementing a concrete version varies depending on the types of members that are supported. For example, relating one event to another might require a different implementation than relating one property to another. Implementing the service requires the following steps: - -- Implement to return for relationships that you support. - -- Track changes to the source relationship and assign value changes into the target relationship. + The class is . Implementing a concrete version varies depending on the types of members that are supported. For example, relating one event to another might require a different implementation than relating one property to another. Implementing the service requires the following steps: + +- Implement to return for relationships that you support. + +- Track changes to the source relationship and assign value changes into the target relationship. @@ -168,11 +168,11 @@ ms[titleLabel, titleLabelText] = new MemberRelationship(form, formText); Gets a relationship to the given source relationship. A relationship to , or if no relationship exists. - @@ -229,11 +229,11 @@ ms[titleLabel, titleLabelText] = new MemberRelationship(form, formText); Establishes a relationship between a source and target object. The current relationship associated with , or if there is no relationship. - is assigned to the source, any existing relationship is removed. - + is assigned to the source, any existing relationship is removed. + ]]> @@ -335,11 +335,11 @@ ms[titleLabel, titleLabelText] = new MemberRelationship(form, formText); The relationship to set into the source. Creates a relationship between the source object and target relationship. - method clears any existing relationship if the relationship parameter is . The default implementation stores relationships in a dictionary using weak references so the relationship table does not keep objects alive. - + method clears any existing relationship if the relationship parameter is . The default implementation stores relationships in a dictionary using weak references so the relationship table does not keep objects alive. + ]]> The relationship is not supported by the service. diff --git a/xml/System.ComponentModel.Design/ComponentChangedEventArgs.xml b/xml/System.ComponentModel.Design/ComponentChangedEventArgs.xml index de539c08872..45745a74ce4 100644 --- a/xml/System.ComponentModel.Design/ComponentChangedEventArgs.xml +++ b/xml/System.ComponentModel.Design/ComponentChangedEventArgs.xml @@ -54,32 +54,32 @@ Provides data for the event. This class cannot be inherited. - provides data for a event. The event notifies the and registered event handlers that a particular component in the currently active document has been changed. - - A provides the following information: - -- A property that indicates the component that was modified. - -- A property that indicates the member that was changed. - -- A property that indicates the new value of the member. - -- An property that indicates the old value of the member. - - Component designers typically raise the event automatically when components are added, removed, or modified. A event is not raised during form load and unload because changes at this time are expected. A component designer might raise the event after it changes a property of the component; this ensures that the Properties window will display the updated property. - - - -## Examples - The following example demonstrates creating a . - + provides data for a event. The event notifies the and registered event handlers that a particular component in the currently active document has been changed. + + A provides the following information: + +- A property that indicates the component that was modified. + +- A property that indicates the member that was changed. + +- A property that indicates the new value of the member. + +- An property that indicates the old value of the member. + + Component designers typically raise the event automatically when components are added, removed, or modified. A event is not raised during form load and unload because changes at this time are expected. A component designer might raise the event after it changes a property of the component; this ensures that the Properties window will display the updated property. + + + +## Examples + The following example demonstrates creating a . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/ComponentChangedEventArgsExample/CPP/componentchangedeventargsexample.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design/ComponentChangedEventArgs/Overview/componentchangedeventargsexample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ComponentChangedEventArgsExample/VB/componentchangedeventargsexample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ComponentChangedEventArgsExample/VB/componentchangedeventargsexample.vb" id="Snippet1"::: + ]]> @@ -143,11 +143,11 @@ The new value of the changed member. Initializes a new instance of the class. - @@ -248,11 +248,11 @@ Gets the member that has been changed. A that indicates the member that has been changed. - @@ -303,11 +303,11 @@ Gets the new value of the changed member. The new value of the changed member. This property can be . - @@ -358,11 +358,11 @@ Gets the old value of the changed member. The old value of the changed member. This property can be . - diff --git a/xml/System.ComponentModel.Design/ComponentChangingEventArgs.xml b/xml/System.ComponentModel.Design/ComponentChangingEventArgs.xml index 7b7d8490deb..5756d7b2b7d 100644 --- a/xml/System.ComponentModel.Design/ComponentChangingEventArgs.xml +++ b/xml/System.ComponentModel.Design/ComponentChangingEventArgs.xml @@ -54,28 +54,28 @@ Provides data for the event. This class cannot be inherited. - provides data about a event. The event notifies the and registered event handlers that a particular component in the current design document is about to be changed. This event provides a widely accessible method to prevent a component from changing. - - A event is raised before a component is changed. This event provides an opportunity for a designer to abort the change. Component designers typically raise the event automatically. If a property cannot be changed, the method that handles the event can throw an exception. For example, if a designer file is checked into source code control, the handler of this event typically throws an exception if the user refuses to check out the file. - - A provides the following information: - -- A `Component` property that indicates the component that is about to be modified. - -- A `Member` property that indicates the member that is about to be changed. - - - -## Examples - The following example demonstrates creating a . - + provides data about a event. The event notifies the and registered event handlers that a particular component in the current design document is about to be changed. This event provides a widely accessible method to prevent a component from changing. + + A event is raised before a component is changed. This event provides an opportunity for a designer to abort the change. Component designers typically raise the event automatically. If a property cannot be changed, the method that handles the event can throw an exception. For example, if a designer file is checked into source code control, the handler of this event typically throws an exception if the user refuses to check out the file. + + A provides the following information: + +- A `Component` property that indicates the component that is about to be modified. + +- A `Member` property that indicates the member that is about to be changed. + + + +## Examples + The following example demonstrates creating a . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/ComponentChangingEventArgsExample2/CPP/componentchangingeventargsexample.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design/ComponentChangingEventArgs/Overview/componentchangingeventargsexample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ComponentChangingEventArgsExample2/VB/componentchangingeventargsexample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ComponentChangingEventArgsExample2/VB/componentchangingeventargsexample.vb" id="Snippet1"::: + ]]> @@ -135,11 +135,11 @@ A indicating the member of the component that is about to be changed. Initializes a new instance of the class. - indicates the component and member that are about to be changed. - + indicates the component and member that are about to be changed. + ]]> @@ -240,11 +240,11 @@ Gets the member that is about to be changed. A indicating the member that is about to be changed, if known, or otherwise. - diff --git a/xml/System.ComponentModel.Design/ComponentRenameEventArgs.xml b/xml/System.ComponentModel.Design/ComponentRenameEventArgs.xml index db6d7355329..1d7014413df 100644 --- a/xml/System.ComponentModel.Design/ComponentRenameEventArgs.xml +++ b/xml/System.ComponentModel.Design/ComponentRenameEventArgs.xml @@ -54,28 +54,28 @@ Provides data for the event. - provides data about a event. - - A object provides the following information: - -- A property that references the component being renamed. - -- An property that indicates the old name of the component. - -- A property that indicates the new name of the component. - - - -## Examples - The following example demonstrates creating a . - + provides data about a event. + + A object provides the following information: + +- A property that references the component being renamed. + +- An property that indicates the old name of the component. + +- A property that indicates the new name of the component. + + + +## Examples + The following example demonstrates creating a . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/ComponentRenameEventArgsExample/CPP/componentrenameeventargsexample.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design/ComponentRenameEventArgs/Overview/componentrenameeventargsexample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ComponentRenameEventArgsExample/VB/componentrenameeventargsexample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ComponentRenameEventArgsExample/VB/componentrenameeventargsexample.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.ComponentModel.Design/DesignerActionList.xml b/xml/System.ComponentModel.Design/DesignerActionList.xml index cd1706a3b46..d4b3cd89765 100644 --- a/xml/System.ComponentModel.Design/DesignerActionList.xml +++ b/xml/System.ComponentModel.Design/DesignerActionList.xml @@ -323,11 +323,11 @@ The order of the items in the returned array reflects the order that they will appear in the panel. The items are grouped according to the property, using the following rules: -- The category of the first item encountered signifies the start of the first group. That group continues as long as each succeeding item is of the same category. When an item of a different, new category is encountered, a new group is created and the item is placed in it. +- The category of the first item encountered signifies the start of the first group. That group continues as long as each succeeding item is of the same category. When an item of a different, new category is encountered, a new group is created and the item is placed in it. -- If an item has a type different than the current group, but that category has already been used, the item is placed in the matching existing category. +- If an item has a type different than the current group, but that category has already been used, the item is placed in the matching existing category. -- If an item does not have a category, it is placed in a miscellaneous group at the end of the panel. This group also contains items whose property is set to `false`. +- If an item does not have a category, it is placed in a miscellaneous group at the end of the panel. This group also contains items whose property is set to `false`. The method is called when the panel is first created. You must call the method to update the list of items displayed in the panel. diff --git a/xml/System.ComponentModel.Design/DesignerActionListsChangedEventHandler.xml b/xml/System.ComponentModel.Design/DesignerActionListsChangedEventHandler.xml index bfada1f7f78..53d85f7d13a 100644 --- a/xml/System.ComponentModel.Design/DesignerActionListsChangedEventHandler.xml +++ b/xml/System.ComponentModel.Design/DesignerActionListsChangedEventHandler.xml @@ -55,9 +55,9 @@ ## Remarks The event model in the .NET Framework is based on having an event delegate that connects an event with its handler. To raise a event, two elements are needed: -- The class, derived from , which holds the event data. +- The class, derived from , which holds the event data. -- The delegate, which points to a method that provides the response to the event. +- The delegate, which points to a method that provides the response to the event. When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Handling and Raising Events](/dotnet/standard/events/). diff --git a/xml/System.ComponentModel.Design/DesignerActionService.xml b/xml/System.ComponentModel.Design/DesignerActionService.xml index eee0639774a..8557afa0055 100644 --- a/xml/System.ComponentModel.Design/DesignerActionService.xml +++ b/xml/System.ComponentModel.Design/DesignerActionService.xml @@ -60,11 +60,11 @@ provides a straightforward interface for accessing and manipulating the items for each component, including the following methods and events: -- The method determines whether the is currently managing a particular component. +- The method determines whether the is currently managing a particular component. -- The method supports the enumeration of the lists of items. +- The method supports the enumeration of the lists of items. -- The method allows adding a or to the set of existing items for a component instance. In contrast, the method removes one or all of the item lists associated with a component. +- The method allows adding a or to the set of existing items for a component instance. In contrast, the method removes one or all of the item lists associated with a component. > [!NOTE] > The method represents the direct push model of associating panel items with a component. In contrast, the pull model relies on overriding the property of the designer class for that component. The design environment is responsible for adding these items into the current when a component is created on the design surface. @@ -72,7 +72,7 @@ > [!IMPORTANT] > The , , , and methods only consider or affect push-model items. -- The event indicates when the collection of items changes for a component. +- The event indicates when the collection of items changes for a component. Because it is often desirable to use some of the same panel items in both the component's design-time shortcut menu and its panel, a large degree of interoperability exists between objects and designer verbs. @@ -469,9 +469,9 @@ ## Remarks The method is the implementation of the only method mandated by the interface. Call this method when you are finished using the . It performs two main actions: -- Removes the current service from the list of available services in the design environment through a call to the method. +- Removes the current service from the list of available services in the design environment through a call to the method. -- Unsubscribes to component change events from the associated interface. +- Unsubscribes to component change events from the associated interface. Call when you are finished using the . The method leaves the in an unusable state. After calling , you must release all references to the so the garbage collector can reclaim the memory that the was occupying. For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). @@ -524,9 +524,9 @@ ## Remarks The method is the implementation of the only method mandated by the interface. Call this method when you are finished using the . It performs two main actions: -- Removes the current service from the list of available services in the design environment through a call to the method. +- Removes the current service from the list of available services in the design environment through a call to the method. -- Unsubscribes to component change events from the associated interface. +- Unsubscribes to component change events from the associated interface. This method is called by the public `Dispose()` method and the method, if it has been overridden. `Dispose()` invokes this method with the `disposing` parameter set to `true`. `Finalize` invokes this method with `disposing` set to `false`. diff --git a/xml/System.ComponentModel.Design/DesignerActionUIService.xml b/xml/System.ComponentModel.Design/DesignerActionUIService.xml index cbe51954f0d..8d0dad387fb 100644 --- a/xml/System.ComponentModel.Design/DesignerActionUIService.xml +++ b/xml/System.ComponentModel.Design/DesignerActionUIService.xml @@ -51,9 +51,9 @@ ## Remarks You can control the display of your designer's with the class. provides a straightforward interface for displaying the items for each component, including the following methods and events: -- The and methods display and hide the items for a component. +- The and methods display and hide the items for a component. -- The event indicates when the UI changes for a component. +- The event indicates when the UI changes for a component. Use the to manage the collections associated with your component. diff --git a/xml/System.ComponentModel.Design/DesignerActionUIStateChangeEventHandler.xml b/xml/System.ComponentModel.Design/DesignerActionUIStateChangeEventHandler.xml index 6f860f60ffd..14461791145 100644 --- a/xml/System.ComponentModel.Design/DesignerActionUIStateChangeEventHandler.xml +++ b/xml/System.ComponentModel.Design/DesignerActionUIStateChangeEventHandler.xml @@ -44,17 +44,17 @@ The event-specific information. Represents the method that will handle the event of a . - event, two elements are needed: - -- The class, derived from , which holds the event data. - -- The delegate, which points to a method that provides the response to the event. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Handling and Raising Events](/dotnet/standard/events/). - + event, two elements are needed: + +- The class, derived from , which holds the event data. + +- The delegate, which points to a method that provides the response to the event. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Handling and Raising Events](/dotnet/standard/events/). + ]]> diff --git a/xml/System.ComponentModel.Design/HelpKeywordAttribute.xml b/xml/System.ComponentModel.Design/HelpKeywordAttribute.xml index 3f503d7a581..2b02c2f22df 100644 --- a/xml/System.ComponentModel.Design/HelpKeywordAttribute.xml +++ b/xml/System.ComponentModel.Design/HelpKeywordAttribute.xml @@ -58,56 +58,56 @@ Specifies the context keyword for a class or member. This class cannot be inherited. - property value. For members, the Help keyword is given by the full name of the type that declared the property, plus the property name itself. - - For example, consider the property on the control. The class keyword is "System.Windows.Forms.Button", but the property keyword is "System.Windows.Forms.Control.Text", because the property is declared on the class, rather than the class itself; the class inherits the property. - - By contrast, the property is declared on the class, so its keyword is "System.Windows.Forms.Button.DialogResult". - - When the Help system gets the keywords, it will first look at . At the class level, it will return the string specified by the . This will not be used for members of the type in question, which will still reflect the declaring type's actual full name, plus the member name. This attribute supports strongly typed classes that have associated common documentation but distinct Help IDs. - - - -## Examples - The following code example shows how to override this Help system behavior by placing the attribute on the member itself. These are the keywords for the following class, called `DemoComponent`: - -- Class keyword: "`System.ComponentModel.Component`" (`DemoNamespace.DemoComponent`) - -- Property1 keyword: "`DemoNamespace.DemoComponent.Property1`" (default) - -- Property2 keyword: "`SomeNamespace.SomeOtherClass.Property2`" (`DemoNamespace.DemoComponent.Property2`) - -```csharp -[HelpKeywordAttribute(typeof(Component))] -public class DemoComponent : Component -{ - public string Property1 - { - get - { - return ""; - } - } - - [HelpKeywordAttribute("SomeNamespace.SomeOtherClass.Property2")] - public string Property2 - { - get - { - return ""; - } - } -} -``` - - The following code example demonstrates using the class to specify a context keyword. For a complete explanation of this code example, see [How to: Apply Attributes in Windows Forms Controls](/dotnet/framework/winforms/controls/how-to-apply-attributes-in-windows-forms-controls). - + property value. For members, the Help keyword is given by the full name of the type that declared the property, plus the property name itself. + + For example, consider the property on the control. The class keyword is "System.Windows.Forms.Button", but the property keyword is "System.Windows.Forms.Control.Text", because the property is declared on the class, rather than the class itself; the class inherits the property. + + By contrast, the property is declared on the class, so its keyword is "System.Windows.Forms.Button.DialogResult". + + When the Help system gets the keywords, it will first look at . At the class level, it will return the string specified by the . This will not be used for members of the type in question, which will still reflect the declaring type's actual full name, plus the member name. This attribute supports strongly typed classes that have associated common documentation but distinct Help IDs. + + + +## Examples + The following code example shows how to override this Help system behavior by placing the attribute on the member itself. These are the keywords for the following class, called `DemoComponent`: + +- Class keyword: "`System.ComponentModel.Component`" (`DemoNamespace.DemoComponent`) + +- Property1 keyword: "`DemoNamespace.DemoComponent.Property1`" (default) + +- Property2 keyword: "`SomeNamespace.SomeOtherClass.Property2`" (`DemoNamespace.DemoComponent.Property2`) + +```csharp +[HelpKeywordAttribute(typeof(Component))] +public class DemoComponent : Component +{ + public string Property1 + { + get + { + return ""; + } + } + + [HelpKeywordAttribute("SomeNamespace.SomeOtherClass.Property2")] + public string Property2 + { + get + { + return ""; + } + } +} +``` + + The following code example demonstrates using the class to specify a context keyword. For a complete explanation of this code example, see [How to: Apply Attributes in Windows Forms Controls](/dotnet/framework/winforms/controls/how-to-apply-attributes-in-windows-forms-controls). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/AmbientValueAttribute/Overview/attributesdemocontrol.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.AttributesDemoControl/VB/attributesdemocontrol.vb" id="Snippet20"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.AttributesDemoControl/VB/attributesdemocontrol.vb" id="Snippet20"::: + ]]> @@ -244,11 +244,11 @@ public class DemoComponent : Component The type from which the Help keyword will be taken. Initializes a new instance of the class from the given type. - property of `t`. - + property of `t`. + ]]> @@ -292,11 +292,11 @@ public class DemoComponent : Component Represents the default value for . This field is read-only. - is `null`. - + is `null`. + ]]> @@ -352,11 +352,11 @@ public class DemoComponent : Component if the specified is equal to the current ; otherwise, . - are equal if their Help keywords are equal. - + are equal if their Help keywords are equal. + ]]> diff --git a/xml/System.ComponentModel.Design/IDesignerHost.xml b/xml/System.ComponentModel.Design/IDesignerHost.xml index 3df6fdd1c15..97f37c3bc87 100644 --- a/xml/System.ComponentModel.Design/IDesignerHost.xml +++ b/xml/System.ComponentModel.Design/IDesignerHost.xml @@ -58,76 +58,76 @@ Provides an interface for managing designer transactions and components. - is an interface that works with the .NET Framework forms designer architecture to provide support for designer transaction and component management. - - The .NET Framework does not provide an implementation of this interface. The interface is implemented by development tools that support designers. - - - -## Examples - The following example code demonstrates how to obtain the service interface from a designer or sited component. - + is an interface that works with the .NET Framework forms designer architecture to provide support for designer transaction and component management. + + The .NET Framework does not provide an implementation of this interface. The interface is implemented by development tools that support designers. + + + +## Examples + The following example code demonstrates how to obtain the service interface from a designer or sited component. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/DesignerHostAcquisition/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design/IDesignerHost/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/DesignerHostAcquisition/VB/source.vb" id="Snippet1"::: - - The following example code demonstrates using the interface to list project components. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/DesignerHostAcquisition/VB/source.vb" id="Snippet1"::: + + The following example code demonstrates using the interface to list project components. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/IDesignerHostExample/CPP/idesignerhostexample.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design/IDesignerHost/Overview/idesignerhostexample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/IDesignerHostExample/VB/idesignerhostexample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/IDesignerHostExample/VB/idesignerhostexample.vb" id="Snippet1"::: + ]]> - To obtain an implementation of from a development environment, call while your component is active in design mode, passing the type of to request an service interface. - - provides the following members related to designer state: - -- The property indicates whether a designer or document is being loaded. - -- The event occurs when a designer is activated before display. - -- The event occurs when a designer is deactivated. - -- The event occurs after a document is loaded. - -- The method activates the designer. - - provides the following members related to managing components: - -- The property indicates the container for the designer host. - -- The property indicates the base class for the root component. - -- The property indicates the name of the class of the root component. - -- The method creates the specified type of component. - -- The method destroys the specified component. - -- The method gets the designer associated with a specified component. - -- The method gets an instance of the type with the specified name. - - provides the following members related to managing transactions: - -- The property indicates whether the designer is in a transaction. - -- The property indicates the current transaction description. - -- The event occurs when a transaction has been completed. - -- The event occurs when a transaction is about to be completed. - -- The event occurs when a transaction has begun. - -- The event occurs when a transaction is about to begin. - -- The method creates and returns a new transaction. + To obtain an implementation of from a development environment, call while your component is active in design mode, passing the type of to request an service interface. + + provides the following members related to designer state: + +- The property indicates whether a designer or document is being loaded. + +- The event occurs when a designer is activated before display. + +- The event occurs when a designer is deactivated. + +- The event occurs after a document is loaded. + +- The method activates the designer. + + provides the following members related to managing components: + +- The property indicates the container for the designer host. + +- The property indicates the base class for the root component. + +- The property indicates the name of the class of the root component. + +- The method creates the specified type of component. + +- The method destroys the specified component. + +- The method gets the designer associated with a specified component. + +- The method gets an instance of the type with the specified name. + + provides the following members related to managing transactions: + +- The property indicates whether the designer is in a transaction. + +- The property indicates the current transaction description. + +- The event occurs when a transaction has been completed. + +- The event occurs when a transaction is about to be completed. + +- The event occurs when a transaction has begun. + +- The event occurs when a transaction is about to begin. + +- The method creates and returns a new transaction. @@ -173,11 +173,11 @@ Activates the designer that this host is hosting. - @@ -220,11 +220,11 @@ Occurs when this designer is activated. - @@ -269,11 +269,11 @@ Gets the container for this designer host. The for this host. - contains the components of the current design mode document. You can list or access any of the components of the current design mode document through the member of this . - + contains the components of the current design mode document. You can list or access any of the components of the current design mode document through the member of this . + ]]> @@ -331,13 +331,13 @@ Creates a component of the specified type and adds it to the design document. The newly created component. - , an exception is thrown. - - This method does not specify a name for the component. The method creates the component and adds it to the designer container. - + , an exception is thrown. + + This method does not specify a name for the component. The method creates the component and adds it to the designer container. + ]]> @@ -388,13 +388,13 @@ Creates a component of the specified type and name, and adds it to the design document. The newly created component. - , an exception is thrown. - - This method creates the component and adds it to the designer container. - + , an exception is thrown. + + This method creates the component and adds it to the designer container. + ]]> @@ -450,13 +450,13 @@ Creates a that can encapsulate event sequences to improve performance and enable undo and redo support functionality. A new instance of . When you complete the steps in your transaction, you should call on this object. - that can be used to encapsulate a series of operations. Designer transactions can improve performance, reduce flicker caused by multiple updates during a process of operations, and enable most operations to be undone. - - Lengthy operations that involve multiple components can raise many events. These events can cause side effects, such as flicker or degraded performance. When operating on multiple components at one time, or setting multiple properties on a single component, you can improve performance by performing these changes within a transaction. Some operations handle the and events and perform work only when a transaction is not in progress. For more information on using transactions, see the documentation for . - + that can be used to encapsulate a series of operations. Designer transactions can improve performance, reduce flicker caused by multiple updates during a process of operations, and enable most operations to be undone. + + Lengthy operations that involve multiple components can raise many events. These events can cause side effects, such as flicker or degraded performance. When operating on multiple components at one time, or setting multiple properties on a single component, you can improve performance by performing these changes within a transaction. Some operations handle the and events and perform work only when a transaction is not in progress. For more information on using transactions, see the documentation for . + ]]> @@ -504,13 +504,13 @@ Creates a that can encapsulate event sequences to improve performance and enable undo and redo support functionality, using the specified transaction description. A new . When you have completed the steps in your transaction, you should call on this object. - that can be used to encapsulate a series of operations. Designer transactions can improve performance, reduce flicker caused by multiple updates during a process of operations, and enable most operations to be undone. - - Lengthy operations that involve multiple components can raise many events. These events can cause side effects, such as flicker or degraded performance. When operating on multiple components at one time, or setting multiple properties on a single component, you can improve performance by performing these changes within a transaction. Some operations handle the and events and perform work only when a transaction is not in progress. For more information on using transactions, see the documentation for . - + that can be used to encapsulate a series of operations. Designer transactions can improve performance, reduce flicker caused by multiple updates during a process of operations, and enable most operations to be undone. + + Lengthy operations that involve multiple components can raise many events. These events can cause side effects, such as flicker or degraded performance. When operating on multiple components at one time, or setting multiple properties on a single component, you can improve performance by performing these changes within a transaction. Some operations handle the and events and perform work only when a transaction is not in progress. For more information on using transactions, see the documentation for . + ]]> @@ -553,11 +553,11 @@ Occurs when this designer is deactivated. - @@ -793,11 +793,11 @@ Occurs when this designer completes loading its document. - @@ -884,11 +884,11 @@ Gets the instance of the base class used as the root component for the current design. The instance of the root component class. - or instance; it defines the class for which the user's derived class extends. - + or instance; it defines the class for which the user's derived class extends. + ]]> @@ -972,13 +972,13 @@ Adds an event handler for the event. - @@ -1025,13 +1025,13 @@ Adds an event handler for the event. - @@ -1079,11 +1079,11 @@ Gets the description of the current transaction. A description of the current transaction. - . - + . + ]]> @@ -1127,13 +1127,13 @@ Adds an event handler for the event. - @@ -1180,13 +1180,13 @@ Adds an event handler for the event. - is made. Subsequent calls do not generate this event until all transaction objects have been disposed. - + is made. Subsequent calls do not generate this event until all transaction objects have been disposed. + ]]> diff --git a/xml/System.ComponentModel.Design/IMenuCommandService.xml b/xml/System.ComponentModel.Design/IMenuCommandService.xml index c2a83cfc023..a8a7103b689 100644 --- a/xml/System.ComponentModel.Design/IMenuCommandService.xml +++ b/xml/System.ComponentModel.Design/IMenuCommandService.xml @@ -48,44 +48,44 @@ Provides methods to manage the global designer verbs and menu commands available in design mode, and to show some types of shortcut menus. - . - - Designer verbs represent custom-defined commands that are listed on the shortcut menu in design mode. A designer verb can provide a specified text label. Each designer verb is automatically assigned a unique . A designer can provide designer verbs through its property, but these are only available when the designer's component is currently selected. Global designer verbs are designer verb commands that can be accessed from a design-mode shortcut menu regardless of the selected component. This interface allows you to manage the set of global designer verbs that are available in design mode. - - You can add a global designer verb using the method, and you can remove a global designer verb using the method. You can invoke a designer verb using the method if you know the of the verb. The property of this interface contains the current set of designer verb commands to display in a shortcut menu. This set of designer verb commands consists of all global designer verbs and any designer verbs offered by the designer of any currently selected component. This set of verbs is updated each time a component with a designer offering designer verb commands is selected or deselected. - - Menu commands are limited to the set of predefined standard commands. Most of the predefined standard commands are defined in the and enumerations. You can add, remove, and invoke menu commands, and search for menu commands that have been added to a menu using methods of this interface. - - You can add a standard menu command using the method, and remove a standard menu command using the method. You can attach an event handler to a predefined standard menu command by following the procedure detailed in the documentation for the method. You can retrieve a menu command by if it has been added to a menu using the method. You can invoke a menu command or designer verb command by using the method. - + . + + Designer verbs represent custom-defined commands that are listed on the shortcut menu in design mode. A designer verb can provide a specified text label. Each designer verb is automatically assigned a unique . A designer can provide designer verbs through its property, but these are only available when the designer's component is currently selected. Global designer verbs are designer verb commands that can be accessed from a design-mode shortcut menu regardless of the selected component. This interface allows you to manage the set of global designer verbs that are available in design mode. + + You can add a global designer verb using the method, and you can remove a global designer verb using the method. You can invoke a designer verb using the method if you know the of the verb. The property of this interface contains the current set of designer verb commands to display in a shortcut menu. This set of designer verb commands consists of all global designer verbs and any designer verbs offered by the designer of any currently selected component. This set of verbs is updated each time a component with a designer offering designer verb commands is selected or deselected. + + Menu commands are limited to the set of predefined standard commands. Most of the predefined standard commands are defined in the and enumerations. You can add, remove, and invoke menu commands, and search for menu commands that have been added to a menu using methods of this interface. + + You can add a standard menu command using the method, and remove a standard menu command using the method. You can attach an event handler to a predefined standard menu command by following the procedure detailed in the documentation for the method. You can retrieve a menu command by if it has been added to a menu using the method. You can invoke a menu command or designer verb command by using the method. + > [!NOTE] -> An attempt to add a menu command with an already existing will throw an . When adding a menu command, be sure to check that it is not already on a menu using the method, or use exception handling wisely. - +> An attempt to add a menu command with an already existing will throw an . When adding a menu command, be sure to check that it is not already on a menu using the method, or use exception handling wisely. + > [!NOTE] -> A menu command can be added to a menu, and have its or properties set to `false`. If you cannot visually locate a menu command that has been added on a menu, one of these properties may have been set to `false`. - - You can show certain standard shortcut menus containing menu commands at a specified location using the method. The documentation for this method contains a table listing the command IDs that specify the valid menus to show. - - - -## Examples - This example demonstrates using the to add a . - +> A menu command can be added to a menu, and have its or properties set to `false`. If you cannot visually locate a menu command that has been added on a menu, one of these properties may have been set to `false`. + + You can show certain standard shortcut menus containing menu commands at a specified location using the method. The documentation for this method contains a table listing the command IDs that specify the valid menus to show. + + + +## Examples + This example demonstrates using the to add a . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/MenuCommand Example/CPP/component1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design/IMenuCommandService/Overview/component1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/MenuCommand Example/VB/component1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/MenuCommand Example/VB/component1.vb" id="Snippet1"::: + ]]> @@ -137,26 +137,26 @@ The to add. Adds the specified standard menu command to the menu. - and enumerations contain identifiers for predefined standard commands and menu commands that are already associated with a location on a particular menu. - + and enumerations contain identifiers for predefined standard commands and menu commands that are already associated with a location on a particular menu. + > [!NOTE] -> An attempt to add a menu command with an already existing will throw an . When adding a menu command, be sure to check that it is not already on a menu using the method, or use exception handling wisely. - - You can attach an event handler to a predefined menu command with the following procedure: - -1. If the menu command to link with an event handler has been added to a menu, or is located with the method, consider whether you wish to restore this menu command later, and whether you want to invoke the current event handler from your new event handler. If your code might restore the menu command or chain the invocation of event handlers, be sure to store a reference to the menu command somewhere. - -2. Ensure that any previously existing menu command with the same has been removed from the menu using the method. - -3. Create a new and specify your event handler in the constructor, along with a representing the command to add. Each standard menu command is associated with a predefined menu location where it is added to. The supported command IDs are defined in the and enumerations. - -4. If you want to invoke any preexisting event handler for the menu command, call the method of the menu command you have replaced on the menu from the event handler that handles the invoke event of your menu command. - -5. If you are interested in restoring the event handler of a preexisting menu command that you have replaced, add the stored, preexisting menu command after you remove the replacement menu command you created. You may want to add this behavior to the `Dispose` method for your type. - +> An attempt to add a menu command with an already existing will throw an . When adding a menu command, be sure to check that it is not already on a menu using the method, or use exception handling wisely. + + You can attach an event handler to a predefined menu command with the following procedure: + +1. If the menu command to link with an event handler has been added to a menu, or is located with the method, consider whether you wish to restore this menu command later, and whether you want to invoke the current event handler from your new event handler. If your code might restore the menu command or chain the invocation of event handlers, be sure to store a reference to the menu command somewhere. + +2. Ensure that any previously existing menu command with the same has been removed from the menu using the method. + +3. Create a new and specify your event handler in the constructor, along with a representing the command to add. Each standard menu command is associated with a predefined menu location where it is added to. The supported command IDs are defined in the and enumerations. + +4. If you want to invoke any preexisting event handler for the menu command, call the method of the menu command you have replaced on the menu from the event handler that handles the invoke event of your menu command. + +5. If you are interested in restoring the event handler of a preexisting menu command that you have replaced, add the stored, preexisting menu command after you remove the replacement menu command you created. You may want to add this behavior to the `Dispose` method for your type. + ]]> The of the specified is already present on a menu. @@ -206,11 +206,11 @@ The to add. Adds the specified designer verb to the set of global designer verbs. - property of their designer rather than calling this method. This method adds a global designer verb that can be accessed from the right-click shortcut menu in design mode regardless of the currently selected component. - + property of their designer rather than calling this method. This method adds a global designer verb that can be accessed from the right-click shortcut menu in design mode regardless of the currently selected component. + ]]> @@ -313,11 +313,11 @@ if the command was found and invoked successfully; otherwise, . - matching the specified . This method first searches within the designer verbs collection consisting of global and active designer-provided verbs before continuing the search, if necessary, through the global environment command service. If a matching menu command or designer verb is located, the command is invoked. - + matching the specified . This method first searches within the designer verbs collection consisting of global and active designer-provided verbs before continuing the search, if necessary, through the global environment command service. If a matching menu command or designer verb is located, the command is invoked. + ]]> @@ -365,11 +365,11 @@ The to remove. Removes the specified standard menu command from the menu. - if it is found. This method does not raise an exception or return a value if the specified is not found. Use the method to determine whether a matching a specified is located on a menu. - + if it is found. This method does not raise an exception or return a value if the specified is not found. Use the method to determine whether a matching a specified is located on a menu. + ]]> @@ -417,11 +417,11 @@ The to remove. Removes the specified designer verb from the collection of global designer verbs. - method. - + method. + ]]> @@ -473,20 +473,20 @@ The y-coordinate at which to display the menu, in screen coordinates. Shows the specified shortcut menu at the specified location. - method can display any of the following Visual Studio shortcut menus containing menu commands at a specified point: - -|Menu|CommandID| -|----------|---------------| -|The shortcut menu displayed for a container|| -|The shortcut menu displayed for the component tray|| -|The shortcut menu displayed for a selection|| -|The shortcut menu displayed for a tray selection|| - - This method can also display other registered shortcut menus. - + method can display any of the following Visual Studio shortcut menus containing menu commands at a specified point: + +|Menu|CommandID| +|----------|---------------| +|The shortcut menu displayed for a container|| +|The shortcut menu displayed for the component tray|| +|The shortcut menu displayed for a selection|| +|The shortcut menu displayed for a tray selection|| + + This method can also display other registered shortcut menus. + ]]> @@ -531,11 +531,11 @@ Gets a collection of the designer verbs that are currently available. A that contains the designer verbs that are currently available. - method on this interface, and individual designer verbs, which are offered by the property of individual designers. If the name of a global verb conflicts with the name of a designer verb, the designer-provided designer verb takes precedence. - + method on this interface, and individual designer verbs, which are offered by the property of individual designers. If the name of a global verb conflicts with the name of a designer verb, the designer-provided designer verb takes precedence. + ]]> diff --git a/xml/System.ComponentModel.Design/IReferenceService.xml b/xml/System.ComponentModel.Design/IReferenceService.xml index 17e899ccd80..3731b831a55 100644 --- a/xml/System.ComponentModel.Design/IReferenceService.xml +++ b/xml/System.ComponentModel.Design/IReferenceService.xml @@ -42,28 +42,28 @@ Provides an interface for obtaining references to objects within a project by name or type, obtaining the name of a specified object, and for locating the parent of a specified object within a designer project. - interface provides the following methods: - -- The method returns the component with the specified name, or `null` if no component with the specified name was found. - -- The method returns the name associated with the specified component. - -- The method returns the parent container of the specified component. - -- The method returns an array of references to all project components, or all project components of an optionally specified type. - - - -## Examples - The following example control uses the method of the interface to obtain a list of components in the current design mode project of the type of the currently selected component. - + interface provides the following methods: + +- The method returns the component with the specified name, or `null` if no component with the specified name was found. + +- The method returns the name associated with the specified component. + +- The method returns the parent container of the specified component. + +- The method returns an array of references to all project components, or all project components of an optionally specified type. + + + +## Examples + The following example control uses the method of the interface to obtain a list of components in the current design mode project of the type of the currently selected component. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/IReferenceServiceExample/CPP/ireferenceserviceexample.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel.Design/IReferenceService/Overview/ireferenceserviceexample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/IReferenceServiceExample/VB/ireferenceserviceexample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/IReferenceServiceExample/VB/ireferenceserviceexample.vb" id="Snippet1"::: + ]]> @@ -170,11 +170,11 @@ Gets the name of the specified component. The name of the object referenced, or if the object reference is not valid. - property of the where the component is sited. - + property of the where the component is sited. + ]]> diff --git a/xml/System.ComponentModel.Design/MenuCommand.xml b/xml/System.ComponentModel.Design/MenuCommand.xml index 72d503a09b2..af204f80e67 100644 --- a/xml/System.ComponentModel.Design/MenuCommand.xml +++ b/xml/System.ComponentModel.Design/MenuCommand.xml @@ -61,19 +61,19 @@ This class provides the following members: -- An event-handler property to which you can attach an event handler for the command. +- An event-handler property to which you can attach an event handler for the command. -- A property that uniquely identifies the command. +- A property that uniquely identifies the command. -- An method that executes the command. +- An method that executes the command. -- An method that can be overridden to handle the event that occurs when a new command is selected. +- An method that can be overridden to handle the event that occurs when a new command is selected. -- Boolean flag states that indicate whether the command is , , , or . +- Boolean flag states that indicate whether the command is , , , or . -- An property that indicates the OLE command status code for the command. +- An property that indicates the OLE command status code for the command. -- An override for the method. +- An override for the method. diff --git a/xml/System.ComponentModel.Design/MenuCommandService.xml b/xml/System.ComponentModel.Design/MenuCommandService.xml index f3964511cd4..62c95a39a03 100644 --- a/xml/System.ComponentModel.Design/MenuCommandService.xml +++ b/xml/System.ComponentModel.Design/MenuCommandService.xml @@ -932,9 +932,9 @@ ## Remarks The property provides a collection of verbs. These verbs come from two places: -- Verbs added through the method of . +- Verbs added through the method of . -- Verbs offered by the currently selected designer. +- Verbs offered by the currently selected designer. Verbs added to this service through the method are called global verbs because they are global to this service, but generally there is one instance of this service for each tool or document window. Designer verbs are obtained by querying the service provider for and . If the selection service offers a primary selection, and a designer can be obtained for that selection from , the designer's verbs are added to this list. If the name of a global verb conflicts with the name of a designer verb, the designer-provided designer verb takes precedence. diff --git a/xml/System.ComponentModel.Design/UndoEngine.xml b/xml/System.ComponentModel.Design/UndoEngine.xml index bc7a7e24619..b02e092d599 100644 --- a/xml/System.ComponentModel.Design/UndoEngine.xml +++ b/xml/System.ComponentModel.Design/UndoEngine.xml @@ -46,37 +46,37 @@ Specifies generic undo/redo functionality at design time. - abstract class provides a default implementation of undo functionality at design time. An undo unit represents a single unit of undoable work. This unit is added to a stack and the user can then walk the stack to undo each action. Undo units typically are designed to toggle, which means that calling undo twice returns the application to its starting state. - - The class takes advantage of the following characteristics of objects running within the designer: - -- All interesting objects can be persisted to some format by the designer loader. - -- All objects raise property-change notifications when a property is changed. - -- offers the idea of transactions, which can be used to fabricate an undo action that spans multiple smaller actions. - - With these features, can fabricate any undo units it needs automatically. - + abstract class provides a default implementation of undo functionality at design time. An undo unit represents a single unit of undoable work. This unit is added to a stack and the user can then walk the stack to undo each action. Undo units typically are designed to toggle, which means that calling undo twice returns the application to its starting state. + + The class takes advantage of the following characteristics of objects running within the designer: + +- All interesting objects can be persisted to some format by the designer loader. + +- All objects raise property-change notifications when a property is changed. + +- offers the idea of transactions, which can be used to fabricate an undo action that spans multiple smaller actions. + + With these features, can fabricate any undo units it needs automatically. + > [!NOTE] -> Do not change property values directly. The class requires you to use the appropriate to change property values. - - monitors for change notifications to create undo units, and the units themselves consist of serialized object states. The following table shows the services that must be available when is created. - -|Service|Description| -|-------------|-----------------| -||Saves property and object values for a component before and after a change is made.| -||Notifies the undo engine of changes made to components.| -||Used to track transactions.| - +> Do not change property values directly. The class requires you to use the appropriate to change property values. + + monitors for change notifications to create undo units, and the units themselves consist of serialized object states. The following table shows the services that must be available when is created. + +|Service|Description| +|-------------|-----------------| +||Saves property and object values for a component before and after a change is made.| +||Notifies the undo engine of changes made to components.| +||Used to track transactions.| + > [!NOTE] -> Because the class requires and , it is available only at design time. - - The undo engine tracks transactions and creates a single undo unit that encompasses a transaction. As a result, the undo engine has control over the duration of an undoable action. Also, because transactions can be named, undoable actions inherit their names from the current transaction. If no transaction is available and a change is reported, the undo engine creates an undo name based on the type of change (for example, "Change property 'Text'"). - +> Because the class requires and , it is available only at design time. + + The undo engine tracks transactions and creates a single undo unit that encompasses a transaction. As a result, the undo engine has control over the duration of an undoable action. Also, because transactions can be named, undoable actions inherit their names from the current transaction. If no transaction is available and a change is reported, the undo engine creates an undo name based on the type of change (for example, "Change property 'Text'"). + ]]> @@ -116,11 +116,11 @@ A parenting service provider. Initializes a new instance of the class. - requires several services from the `provider` parameter to be useful. - + requires several services from the `provider` parameter to be useful. + ]]> @@ -164,11 +164,11 @@ The undo unit to add. Adds an to the undo stack. - method. - + method. + ]]> @@ -219,13 +219,13 @@ Creates a new . A new with a specified name. - method simply returns a new . - - By default, does nothing with the `primary` parameter, but some implementations of undo, such as those involving the COM `Microsoft.VisualStudio.OLE.Interop.IOleParentUndoUnit` design pattern, may need to identify the difference between a primary unit and its children. - + method simply returns a new . + + By default, does nothing with the `primary` parameter, but some implementations of undo, such as those involving the COM `Microsoft.VisualStudio.OLE.Interop.IOleParentUndoUnit` design pattern, may need to identify the difference between a primary unit and its children. + ]]> @@ -263,11 +263,11 @@ The unit to discard. Discards an . - method is called, the undo unit is closed and then undone. - + method is called, the undo unit is closed and then undone. + ]]> @@ -658,11 +658,11 @@ Occurs immediately after an undo action is performed. - event is always raised, even if an exception is thrown. - + event is always raised, even if an exception is thrown. + ]]> diff --git a/xml/System.ComponentModel/ArrayConverter.xml b/xml/System.ComponentModel/ArrayConverter.xml index 367debc756a..97ff32b8131 100644 --- a/xml/System.ComponentModel/ArrayConverter.xml +++ b/xml/System.ComponentModel/ArrayConverter.xml @@ -261,13 +261,13 @@ The attributes array will be used to filter the array. The `attributes` parameter can specify a mix of and objects. Filtering is defined by the following rules: -- A will be treated as a wildcard; it will match any property that has the in its set of attributes. +- A will be treated as a wildcard; it will match any property that has the in its set of attributes. -- If a property does not have an of the same class, the property will not be included in the returned array. +- If a property does not have an of the same class, the property will not be included in the returned array. -- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. +- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. -- If an instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. +- If an instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. ]]> diff --git a/xml/System.ComponentModel/AsyncOperation.xml b/xml/System.ComponentModel/AsyncOperation.xml index ebcffdd01a1..751762cba26 100644 --- a/xml/System.ComponentModel/AsyncOperation.xml +++ b/xml/System.ComponentModel/AsyncOperation.xml @@ -57,9 +57,9 @@ The following list identifies ways to use an object: -- To report progress and interim results to the client, call from your asynchronous worker code. +- To report progress and interim results to the client, call from your asynchronous worker code. -- To indicate that an asynchronous task has completed, or to cancel a pending asynchronous task, call . +- To indicate that an asynchronous task has completed, or to cancel a pending asynchronous task, call . Your class should get an object for each asynchronous task by calling when each task starts. To allow the client to distinguish separate asynchronous tasks, takes a parameter for a unique client-provided token, which becomes the property. It can then be used by client code to identify the particular asynchronous task that is raising progress or completion events. diff --git a/xml/System.ComponentModel/AttributeProviderAttribute.xml b/xml/System.ComponentModel/AttributeProviderAttribute.xml index b5c363a923b..4e9752e2dda 100644 --- a/xml/System.ComponentModel/AttributeProviderAttribute.xml +++ b/xml/System.ComponentModel/AttributeProviderAttribute.xml @@ -56,29 +56,29 @@ Enables attribute redirection. This class cannot be inherited. - property is typed as `object`. The reason for this is that this property can accept several types of input. Unfortunately, this provides no common place to add metadata to describe the characteristics of the property. Each `DataSource` property throughout the .NET Framework needs to have identical metadata for type converters, UI type editors, and other services that require metadata. The remedies this situation. - - Once this attribute is placed on a property, the rules for obtaining attributes for the property descriptor's collection differ. Typically, the property descriptor gathers local attributes, and then merges these with attributes from the property type. In this case, the attributes are taken from the type returned from the , not from the actual property type. This attribute is used on to point the object's specific type to , and the appropriate metadata is placed on to enable data binding. In so doing, external parties can easily add metadata to all data sources. - - Attributes obtained from a type declared in the have a priority in between the attributes of the property's type and the attributes on the property. The following list, in priority order, shows the full set of available merged attributes: - -- Property Attributes - -- Attribute Provider Attributes - -- Property Type Attributes - - - -## Examples - The following code example demonstrates using to mark a `DataSource` property with a specific type of . For a full code listing, see [How to: Apply Attributes in Windows Forms Controls](/dotnet/framework/winforms/controls/how-to-apply-attributes-in-windows-forms-controls). - + property is typed as `object`. The reason for this is that this property can accept several types of input. Unfortunately, this provides no common place to add metadata to describe the characteristics of the property. Each `DataSource` property throughout the .NET Framework needs to have identical metadata for type converters, UI type editors, and other services that require metadata. The remedies this situation. + + Once this attribute is placed on a property, the rules for obtaining attributes for the property descriptor's collection differ. Typically, the property descriptor gathers local attributes, and then merges these with attributes from the property type. In this case, the attributes are taken from the type returned from the , not from the actual property type. This attribute is used on to point the object's specific type to , and the appropriate metadata is placed on to enable data binding. In so doing, external parties can easily add metadata to all data sources. + + Attributes obtained from a type declared in the have a priority in between the attributes of the property's type and the attributes on the property. The following list, in priority order, shows the full set of available merged attributes: + +- Property Attributes + +- Attribute Provider Attributes + +- Property Type Attributes + + + +## Examples + The following code example demonstrates using to mark a `DataSource` property with a specific type of . For a full code listing, see [How to: Apply Attributes in Windows Forms Controls](/dotnet/framework/winforms/controls/how-to-apply-attributes-in-windows-forms-controls). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/AmbientValueAttribute/Overview/attributesdemocontrol.cs" id="Snippet25"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.AttributesDemoControl/VB/attributesdemocontrol.vb" id="Snippet25"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.AttributesDemoControl/VB/attributesdemocontrol.vb" id="Snippet25"::: + ]]> @@ -193,14 +193,14 @@ The type to specify. Initializes a new instance of the class with the given type. - to mark a `DataSource` property with a specific type of . For a full code listing, see [How to: Apply Attributes in Windows Forms Controls](/dotnet/framework/winforms/controls/how-to-apply-attributes-in-windows-forms-controls). - + to mark a `DataSource` property with a specific type of . For a full code listing, see [How to: Apply Attributes in Windows Forms Controls](/dotnet/framework/winforms/controls/how-to-apply-attributes-in-windows-forms-controls). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/AmbientValueAttribute/Overview/attributesdemocontrol.cs" id="Snippet25"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.AttributesDemoControl/VB/attributesdemocontrol.vb" id="Snippet25"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.AttributesDemoControl/VB/attributesdemocontrol.vb" id="Snippet25"::: + ]]> diff --git a/xml/System.ComponentModel/BindableAttribute.xml b/xml/System.ComponentModel/BindableAttribute.xml index 7596eb6c9e3..cbbb34dee18 100644 --- a/xml/System.ComponentModel/BindableAttribute.xml +++ b/xml/System.ComponentModel/BindableAttribute.xml @@ -54,42 +54,42 @@ Specifies whether a member is typically used for binding. This class cannot be inherited. - set to `true`, then a property change notification should be raised for that property. This means that if the property is , then two-way data binding is supported. If is , you can still bind to the property, but it should not be shown in the default set of properties to bind to, because it might or might not raise a property change notification. - + set to `true`, then a property change notification should be raised for that property. This means that if the property is , then two-way data binding is supported. If is , you can still bind to the property, but it should not be shown in the default set of properties to bind to, because it might or might not raise a property change notification. + > [!NOTE] -> When you mark a property with set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, to check the value of this attribute in your code, you must specify the attribute as or . - +> When you mark a property with set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, to check the value of this attribute in your code, you must specify the attribute as or . + > [!CAUTION] -> You can use this attribute at design time only. Nothing prevents you from binding to any property during run time. - - For more information, see [Attributes](/dotnet/standard/attributes/). - - - -## Examples - The following code example marks a property as appropriate to bind data to. - +> You can use this attribute at design time only. Nothing prevents you from binding to any property during run time. + + For more information, see [Attributes](/dotnet/standard/attributes/). + + + +## Examples + The following code example marks a property as appropriate to bind data to. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BindableAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindableAttribute/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute Example/VB/source.vb" id="Snippet1"::: - - The next code example shows how to check the value of the for `MyProperty`. First, the code gets a with all the properties for the object. Next, the code indexes into the to get `MyProperty`. Finally, the code returns the attributes for this property and saves them in the attributes variable. The code example presents two different ways to check the value of the . In the second code fragment, the example calls the method. In the last code fragment, the example uses the property to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute Example/VB/source.vb" id="Snippet1"::: + + The next code example shows how to check the value of the for `MyProperty`. First, the code gets a with all the properties for the object. Next, the code indexes into the to get `MyProperty`. Finally, the code returns the attributes for this property and saves them in the attributes variable. The code example presents two different ways to check the value of the . In the second code fragment, the example calls the method. In the last code fragment, the example uses the property to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BindableAttribute Example/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindableAttribute/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute Example/VB/source.vb" id="Snippet2"::: - - If you marked a class with the , use the following code example to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute Example/VB/source.vb" id="Snippet2"::: + + If you marked a class with the , use the following code example to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BindableAttribute Example/CPP/source.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindableAttribute/Overview/source.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute Example/VB/source.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute Example/VB/source.vb" id="Snippet3"::: + ]]> @@ -154,20 +154,20 @@ to use property for binding; otherwise, . Initializes a new instance of the class with a Boolean value. - set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, to check the value of this attribute in your code, you must specify the attribute as or . - - - -## Examples - The following code example marks a property as appropriate to bind data to. This code example creates a new , sets its value to , and binds it to the property. - + set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, to check the value of this attribute in your code, you must specify the attribute as or . + + + +## Examples + The following code example marks a property as appropriate to bind data to. This code example creates a new , sets its value to , and binds it to the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BindableAttribute.BindableAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindableAttribute/.ctor/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute.BindableAttribute Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute.BindableAttribute Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -218,20 +218,20 @@ One of the values. Initializes a new instance of the class with one of the values. - set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, to check the value of this attribute in your code, you must specify the attribute as or . - - - -## Examples - The following code example marks a property as appropriate to bind data to. This code example creates a new , sets its value to , and binds it to the property. - + set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, to check the value of this attribute in your code, you must specify the attribute as or . + + + +## Examples + The following code example marks a property as appropriate to bind data to. This code example creates a new , sets its value to , and binds it to the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BindableAttribute.BindableAttribute1 Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindableAttribute/.ctor/source1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute.BindableAttribute1 Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute.BindableAttribute1 Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -375,27 +375,27 @@ if the property is typically used for binding; otherwise, . - with all the properties for the object. - -- Indexing into the to get `MyProperty`. - -- Saving the attributes for this property in the attributes variable. - - Then, the code sets `myAttribute` to the value of the in the and checks whether the property is bindable. - - For this code example to run, you must provide the fully qualified assembly name. For information about how to obtain the fully qualified assembly name, see - - [Assembly Names](/dotnet/standard/assembly/names). - + with all the properties for the object. + +- Indexing into the to get `MyProperty`. + +- Saving the attributes for this property in the attributes variable. + + Then, the code sets `myAttribute` to the value of the in the and checks whether the property is bindable. + + For this code example to run, you must provide the fully qualified assembly name. For information about how to obtain the fully qualified assembly name, see + + [Assembly Names](/dotnet/standard/assembly/names). + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BindableAttribute.Bindable Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindableAttribute/Bindable/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute.Bindable Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BindableAttribute.Bindable Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -443,11 +443,11 @@ Specifies the default value for the , which is . This field is read-only. - is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -678,13 +678,13 @@ Specifies that a property is not typically used for binding. This field is read-only. - field is the default setting for the . - - When you mark a property with the constructor of the value `false,` the value of this attribute is set to the constant member . Therefore, to check whether the attribute is set to this value in your code, you must specify the attribute as . - + field is the default setting for the . + + When you mark a property with the constructor of the value `false,` the value of this attribute is set to the constant member . Therefore, to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -729,11 +729,11 @@ Specifies that a property is typically used for binding. This field is read-only. - constructor of the value `true`, the value of the is set to the constant member . Therefore, to check whether the attribute is set to this value in your code, you must specify the attribute as . - + constructor of the value `true`, the value of the is set to the constant member . Therefore, to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> diff --git a/xml/System.ComponentModel/BindingList`1.xml b/xml/System.ComponentModel/BindingList`1.xml index d133c1d66e6..e6994d5c497 100644 --- a/xml/System.ComponentModel/BindingList`1.xml +++ b/xml/System.ComponentModel/BindingList`1.xml @@ -92,21 +92,21 @@ The type of elements in the list. Provides a generic collection that supports data binding. - class can be used as a base class to create a two-way data-binding mechanism. provides a concrete, generic implementation of the interface. This is an alternative to implementing the complete interface, which can be difficult because of the subtle interaction between , , and the associated . However, the typical solutions programmer will use a class that provides data binding functionality, such as , instead of directly using . - - supports factory-created instances through the extensible method. (This same type of extensibility is also found in other classes, such as ) In addition, since this class implements the interface, it enables transactional commits or rollbacks of the new item through the and methods. - - - -## Examples - The following code example demonstrates binding to a component containing a business object. This is a complete example that contains a `Main` method. - + class can be used as a base class to create a two-way data-binding mechanism. provides a concrete, generic implementation of the interface. This is an alternative to implementing the complete interface, which can be difficult because of the subtle interaction between , , and the associated . However, the typical solutions programmer will use a class that provides data binding functionality, such as , instead of directly using . + + supports factory-created instances through the extensible method. (This same type of extensibility is also found in other classes, such as ) In addition, since this class implements the interface, it enables transactional commits or rollbacks of the new item through the and methods. + + + +## Examples + The following code example demonstrates binding to a component containing a business object. This is a complete example that contains a `Main` method. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet1"::: + ]]> @@ -167,26 +167,26 @@ Initializes a new instance of the class using default values. - class. - -|Property|Initial Value| -|--------------|-------------------| -||`true`| -||`true` if the list type has a parameterless constructor; otherwise, `false`.| -||`true`| -||`true`| - - - -## Examples - The following code example demonstrates how to construct a new . For the complete example, see the class overview topic. - + class. + +|Property|Initial Value| +|--------------|-------------------| +||`true`| +||`true` if the list type has a parameterless constructor; otherwise, `false`.| +||`true`| +||`true`| + + + +## Examples + The following code example demonstrates how to construct a new . For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: + ]]> @@ -236,20 +236,20 @@ An of items to be contained in the . Initializes a new instance of the class with the specified list. - to create a that is backed by `list`, which ensures that changes to `list` are reflected in the . - - The following table shows initial property values for an instance of class. - -|Property|Initial Value| -|--------------|-------------------| -||`true`| -||`true` if the list type has a parameterless constructor; otherwise, `false`.| -||`true`| -||`true`| - + to create a that is backed by `list`, which ensures that changes to `list` are reflected in the . + + The following table shows initial property values for an instance of class. + +|Property|Initial Value| +|--------------|-------------------| +||`true`| +||`true` if the list type has a parameterless constructor; otherwise, `false`.| +||`true`| +||`true`| + ]]> @@ -292,21 +292,21 @@ Occurs before an item is added to the list. - event occurs before a new object is added to the collection represented by the property. This event is raised after the method is called, but before the new item is created and added to the internal list. By handling this event, the programmer can provide custom item creation and insertion behavior without being forced to derive from the class. - - For more information about supplying custom new item functionality, see the method. For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - - - -## Examples - The following code example demonstrates how to handle the event. For the complete example, see the class overview topic. - + event occurs before a new object is added to the collection represented by the property. This event is raised after the method is called, but before the new item is created and added to the internal list. By handling this event, the programmer can provide custom item creation and insertion behavior without being forced to derive from the class. + + For more information about supplying custom new item functionality, see the method. For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + + + +## Examples + The following code example demonstrates how to handle the event. For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet3"::: + ]]> @@ -353,41 +353,41 @@ Adds a new item to the collection. The item added to the list. - method adds a new item to the collection represented by the property. To add a new item, the following logic is used: - -1. The event is automatically raised. - - This event can be programmatically handled to construct a new custom item. This is accomplished in the event handler by setting the property of the parameter to the new item. - - Otherwise, the new item is automatically created through its public parameterless constructor. - -2. The position of the new item is tracked, but it is not added to the list until one of the following conditions are met: - - - The item is explicitly committed by a call to . - - - The item is implicitly committed by some other operation that changed the contents of the list, such as an insertion or removal of an item. - - In contrast, calling the method before the item is committed will cause the new item to be discarded. - - This method raises the event when the new item is committed. - - - -## Examples - The following code example demonstrates how to use the method. . For the complete example, see the class overview topic. - + method adds a new item to the collection represented by the property. To add a new item, the following logic is used: + +1. The event is automatically raised. + + This event can be programmatically handled to construct a new custom item. This is accomplished in the event handler by setting the property of the parameter to the new item. + + Otherwise, the new item is automatically created through its public parameterless constructor. + +2. The position of the new item is tracked, but it is not added to the list until one of the following conditions are met: + + - The item is explicitly committed by a call to . + + - The item is implicitly committed by some other operation that changed the contents of the list, such as an insertion or removal of an item. + + In contrast, calling the method before the item is committed will cause the new item to be discarded. + + This method raises the event when the new item is committed. + + + +## Examples + The following code example demonstrates how to use the method. . For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet4"::: + ]]> - The property is set to . - - -or- - + The property is set to . + + -or- + A public parameterless constructor could not be found for the current item type. @@ -440,11 +440,11 @@ Adds a new item to the end of the collection. The item that was added to the collection. - method adds a new item to the collection represented by the property. raises the event. This allows you to add a new item by setting the property of the parameter to the new item. Otherwise, the new item is automatically created through its public parameterless constructor. - + method adds a new item to the collection represented by the property. raises the event. This allows you to add a new item by setting the property of the parameter to the new item. Otherwise, the new item is automatically created through its public parameterless constructor. + ]]> The new item is not the same type as the objects contained in the . @@ -500,19 +500,19 @@ if list items can be edited; otherwise, . The default is . - property is typically used by other components to determine if editing of items in the list is allowed. When is set to a new value, a event of type will occur. - - - -## Examples - The following code example demonstrates how to set the property. For the complete example, see the class overview topic. - + property is typically used by other components to determine if editing of items in the list is allowed. When is set to a new value, a event of type will occur. + + + +## Examples + The following code example demonstrates how to set the property. For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: + ]]> @@ -558,21 +558,21 @@ if you can add items to the list with the method; otherwise, . The default depends on the underlying type contained in the list. - property is typically used by other components to determine if the creation of new items is allowed. defaults to `true` if the type contained in the list has a parameterless constructor or the event is handled. If the event is not handled or the list type does not have a parameterless constructor, then defaults to `false`. - - If is explicitly set, the set value will always be used by bound objects to determine if new items can be added to the list. Whether is `true` or `false`, new items can be added by explicitly calling if the list type has a parameterless constructor or the event is handled. In addition, setting causes a event of type to occur. - - - -## Examples - The following code example demonstrates how to set the property. For the complete example, see the class overview topic. - + property is typically used by other components to determine if the creation of new items is allowed. defaults to `true` if the type contained in the list has a parameterless constructor or the event is handled. If the event is not handled or the list type does not have a parameterless constructor, then defaults to `false`. + + If is explicitly set, the set value will always be used by bound objects to determine if new items can be added to the list. Whether is `true` or `false`, new items can be added by explicitly calling if the list type has a parameterless constructor or the event is handled. In addition, setting causes a event of type to occur. + + + +## Examples + The following code example demonstrates how to set the property. For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: + ]]> @@ -625,21 +625,21 @@ if you can remove items from the list with the method otherwise, . The default is . - property is typically used by other components to determine if the removal of items is allowed. - - When is set to a new value, a event of type occurs. - - - -## Examples - The following code example demonstrates how to set the property. For the complete example, see the class overview topic. - + property is typically used by other components to determine if the removal of items is allowed. + + When is set to a new value, a event of type occurs. + + + +## Examples + The following code example demonstrates how to set the property. For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: + ]]> @@ -690,19 +690,19 @@ One of the values. Sorts the items if overridden in a derived class; otherwise, throws a . - class does not provide a base implementation of sorting, so always throws a by default. To enable sorting, derive from and perform the following tasks: - -- Override and implement sorting, raising the event when sorting is complete. - -- Override and implement sort removal. - -- Override and set to `true`. - - In addition, you may want to implement the supplemental and sorting properties. - + class does not provide a base implementation of sorting, so always throws a by default. To enable sorting, derive from and perform the following tasks: + +- Override and implement sorting, raising the event when sorting is complete. + +- Override and implement sort removal. + +- Override and set to `true`. + + In addition, you may want to implement the supplemental and sorting properties. + ]]> Method is not overridden in a derived class. @@ -752,21 +752,21 @@ The index of the of the new item to be added. Discards a pending new item. - method rolls back a pending new item that was added through the method, but has not yet been committed. - - For more information about adding and committing new items, see the method - - - -## Examples - The following code example demonstrates how use the method. For the complete example, see the class overview topic. - + method rolls back a pending new item that was added through the method, but has not yet been committed. + + For more information about adding and committing new items, see the method + + + +## Examples + The following code example demonstrates how use the method. For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet4"::: + ]]> @@ -813,13 +813,13 @@ Removes all elements from the collection. - method removes all the items from the collection represented by the property. - - calls the method before clearing out the collection and raises the event after it has been cleared. - + method removes all the items from the collection represented by the property. + + calls the method before clearing out the collection and raises the event after it has been cleared. + ]]> @@ -871,13 +871,13 @@ The index of the new item to be added. Commits a pending new item to the collection. - method commits a pending new item that was added through the method. If there is no new item waiting to be committed, then this method does nothing. - - For more information about adding and committing new items, see the method. - + method commits a pending new item that was added through the method. If there is no new item waiting to be committed, then this method does nothing. + + For more information about adding and committing new items, see the method. + ]]> @@ -930,23 +930,23 @@ Searches for the index of the item that has the specified property descriptor with the specified value, if searching is implemented in a derived class; otherwise, a . The zero-based index of the item that matches the property descriptor and contains the specified value. - class does not provide a base implementation of searching, and so always throws a by default. To enable searching, derive from and perform the following tasks: - -- Override to set the property to `true`. - -- Override to implement the find algorithm. - - - -## Examples - The following code example demonstrates how to use the member. - + class does not provide a base implementation of searching, and so always throws a by default. To enable searching, derive from and perform the following tasks: + +- Override to set the property to `true`. + +- Override to implement the find algorithm. + + + +## Examples + The following code example demonstrates how to use the member. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/FindCore/Form1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Windows.Forms.BindingSourceAndBindingListOfT/VB/Form1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Windows.Forms.BindingSourceAndBindingListOfT/VB/Form1.vb" id="Snippet3"::: + ]]> @@ -996,17 +996,17 @@ The item to insert in the list. Inserts the specified item in the list at the specified index. - performs the following operations: - -- Calls to commit any uncommitted items added through the event. - -- Inserts the item at the specified index - -- Raises a event of type indicating the index of the item that was inserted. - + performs the following operations: + +- Calls to commit any uncommitted items added through the event. + +- Inserts the item at the specified index + +- Raises a event of type indicating the index of the item that was inserted. + ]]> @@ -1050,21 +1050,21 @@ if the list is sorted; otherwise, . The default is . - class does not provide a base implementation of sorting, so always returns `false` by default. - - The class does not provide a base implementation of sorting. To enable sorting, derive a class from and: - -- Override and implement sorting raising the event when sorting is complete. - -- Override and implement sort removal. - -- Override and set to `true`. - - In addition, you may want to implement the supplemental and s sorting properties. - + class does not provide a base implementation of sorting, so always returns `false` by default. + + The class does not provide a base implementation of sorting. To enable sorting, derive a class from and: + +- Override and implement sorting raising the event when sorting is complete. + +- Override and implement sort removal. + +- Override and set to `true`. + + In addition, you may want to implement the supplemental and s sorting properties. + ]]> @@ -1109,20 +1109,20 @@ Occurs when the list or an item in the list changes. - notifications for item value changes are only raised if the list item type implements the interface. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - - - -## Examples - The following code example demonstrates how handle the event. For the complete example, see the class overview topic. - - :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet5"::: - + notifications for item value changes are only raised if the list item type implements the interface. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + + + +## Examples + The following code example demonstrates how handle the event. For the complete example, see the class overview topic. + + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet5"::: + ]]> @@ -1171,15 +1171,15 @@ An that contains the event data. Raises the event. - event and the method allow custom-created items to be added to the list. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + event and the method allow custom-created items to be added to the list. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -1231,11 +1231,11 @@ A that contains the event data. Raises the event. - method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -1290,19 +1290,19 @@ if adding or removing items raises events; otherwise, . The default is . - property to `false` if you wish to suppress events from occurring on the list. - - - -## Examples - The following code example demonstrates how use the method. For the complete example, see the class overview topic. - + property to `false` if you wish to suppress events from occurring on the list. + + + +## Examples + The following code example demonstrates how use the method. For the complete example, see the class overview topic. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/Overview/Form1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.BindingListOfTExample/VB/Form1.vb" id="Snippet2"::: + ]]> @@ -1348,11 +1348,11 @@ The zero-based index of the item to remove. Removes the item at the specified index. - event of type . - + event of type . + ]]> You are removing a newly added item and is set to . @@ -1398,11 +1398,11 @@ Removes any sort applied with if sorting is implemented in a derived class; otherwise, raises . - class does not provide a base implementation of sorting, so always throws a by default. For more information about sorting, see the method. - + class does not provide a base implementation of sorting, so always throws a by default. For more information about sorting, see the method. + ]]> Method is not overridden in a derived class. @@ -1452,11 +1452,11 @@ Raises a event of type . - is bound to Windows Forms controls, the method causes a refresh of all controls bound to the list. - + is bound to Windows Forms controls, the method causes a refresh of all controls bound to the list. + ]]> @@ -1508,11 +1508,11 @@ A zero-based index of the item to be reset. Raises a event of type for the item at the specified position. - is bound to Windows Forms controls, the method causes a refresh of controls bound to the item at the specified position. - + is bound to Windows Forms controls, the method causes a refresh of controls bound to the item at the specified position. + ]]> @@ -1560,18 +1560,18 @@ The new value for the item at the specified index. The value can be for reference types. Replaces the item at the specified index with the specified item. - raises a event of type indicating the index of the item that was set. - + raises a event of type indicating the index of the item that was set. + ]]> - is less than zero. - - -or- - + is less than zero. + + -or- + is greater than . @@ -1615,11 +1615,11 @@ Gets the direction the list is sorted. One of the values. The default is . - class does not provide a base implementation of sorting, so always returns by default. For more information about sorting, see the method. - + class does not provide a base implementation of sorting, so always returns by default. For more information about sorting, see the method. + ]]> @@ -1669,19 +1669,19 @@ Gets the property descriptor that is used for sorting the list if sorting is implemented in a derived class; otherwise, returns . The used for sorting the list. - returns `null` by default because the class does not provide a base implementation of sorting. To enable sorting, derive a class from and: - -- Override and implement sorting. - -- Override and implement sort removal. - -- Override and set to `true`. - -- Optionally, override the to return the used for sorting. - + returns `null` by default because the class does not provide a base implementation of sorting. To enable sorting, derive a class from and: + +- Override and implement sorting. + +- Override and implement sort removal. + +- Override and set to `true`. + +- Optionally, override the to return the used for sorting. + ]]> @@ -1725,11 +1725,11 @@ if events are supported; otherwise, . The default is . - provides the implementation for . You can derive a class from and override the default value. - + provides the implementation for . You can derive a class from and override the default value. + ]]> @@ -1773,19 +1773,19 @@ if the list supports searching; otherwise, . The default is . - class does not provide a base implementation of searching, so always returns `false` by default. For more information about implementing searching, see the method. - - - -## Examples - The following code example demonstrates how to use the member. - + class does not provide a base implementation of searching, so always returns `false` by default. For more information about implementing searching, see the method. + + + +## Examples + The following code example demonstrates how to use the member. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BindingListT/FindCore/Form1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Windows.Forms.BindingSourceAndBindingListOfT/VB/Form1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Windows.Forms.BindingSourceAndBindingListOfT/VB/Form1.vb" id="Snippet3"::: + ]]> @@ -1829,13 +1829,13 @@ if the list supports sorting; otherwise, . The default is . - property indicates whether the supports sorting with the method. - - The class does not provide a base implementation of sorting, so always returns `false` by default. For more information about implementing sorting, see the method. - + property indicates whether the supports sorting with the method. + + The class does not provide a base implementation of sorting, so always returns `false` by default. For more information about implementing sorting, see the method. + ]]> @@ -1884,13 +1884,13 @@ The to add as a search criteria. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1938,13 +1938,13 @@ Adds a new item to the list. For more information, see . The item added to the list. - instance is cast to an interface. - - This implementation calls to add a new item to the list. - + instance is cast to an interface. + + This implementation calls to add a new item to the list. + ]]> This method is not supported. @@ -1998,11 +1998,11 @@ if list items can be edited; otherwise, . The default is . - property is typically used by other components to determine if editing of items in the list is allowed. - + property is typically used by other components to determine if editing of items in the list is allowed. + ]]> @@ -2175,11 +2175,11 @@ This member is an explicit interface member implementation. It can be used only One of the values. Sorts the list based on a and a . For a complete description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2237,11 +2237,11 @@ This member is an explicit interface member implementation. It can be used only For a description of this member, see . The index of the row that has the given . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2294,11 +2294,11 @@ This member is an explicit interface member implementation. It can be used only if has been called and has not been called; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2347,13 +2347,13 @@ This member is an explicit interface member implementation. It can be used only A to remove from the indexes used for searching. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2406,11 +2406,11 @@ This member is an explicit interface member implementation. It can be used only For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2462,11 +2462,11 @@ This member is an explicit interface member implementation. It can be used only For a description of this member, see . One of the values. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2523,11 +2523,11 @@ This member is an explicit interface member implementation. It can be used only For a description of this member, see . The that is being used for sorting. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2580,11 +2580,11 @@ This member is an explicit interface member implementation. It can be used only if a event is raised when the list changes or when an item changes; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2637,11 +2637,11 @@ This member is an explicit interface member implementation. It can be used only if the list supports searching using the method; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2694,11 +2694,11 @@ This member is an explicit interface member implementation. It can be used only if the list supports sorting; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -2745,11 +2745,11 @@ This member is an explicit interface member implementation. It can be used only if the list type implements , otherwise, . The default is . - checks the list type to see if it implements the interface to indicate that it raises events of when property values are changed on individual list items. This member cannot be overridden in a derived class. - + checks the list type to see if it implements the interface to indicate that it raises events of when property values are changed on individual list items. This member cannot be overridden in a derived class. + ]]> diff --git a/xml/System.ComponentModel/BrowsableAttribute.xml b/xml/System.ComponentModel/BrowsableAttribute.xml index 40546cd3cb8..a2573224f2b 100644 --- a/xml/System.ComponentModel/BrowsableAttribute.xml +++ b/xml/System.ComponentModel/BrowsableAttribute.xml @@ -55,39 +55,39 @@ Specifies whether a property or event should be displayed in a Properties window. - constructor's `browsable` parameter set to `true`. These members can be modified at design time. Members marked with the constructor's `browsable` parameter set to `false` are not appropriate for design-time editing and therefore are not displayed in a visual designer. The default is `true`. - + constructor's `browsable` parameter set to `true`. These members can be modified at design time. Members marked with the constructor's `browsable` parameter set to `false` are not appropriate for design-time editing and therefore are not displayed in a visual designer. The default is `true`. + > [!NOTE] -> When you mark a property with `Browsable(true)`, the value of this attribute is set to the constant member . For a property marked with `Browsable(false)`, the value is . Therefore, when you check the value of this attribute in your code, you must specify the attribute as or . - - For more information, see [Attributes](/dotnet/standard/attributes/). - - - -## Examples - The following example marks a property as browsable. - +> When you mark a property with `Browsable(true)`, the value of this attribute is set to the constant member . For a property marked with `Browsable(false)`, the value is . Therefore, when you check the value of this attribute in your code, you must specify the attribute as or . + + For more information, see [Attributes](/dotnet/standard/attributes/). + + + +## Examples + The following example marks a property as browsable. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BrowsableAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BrowsableAttribute/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute Example/VB/source.vb" id="Snippet1"::: - - The next example shows how to check the value of the for `MyProperty`. First, the code gets a with all the properties for the object. Next, the code indexes into the to get `MyProperty`. Then it returns the attributes for this property and saves them in the attributes variable. - - The example presents two different ways of checking the value of the . In the second code fragment, the example calls the method. In the last code fragment, the example uses the property to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute Example/VB/source.vb" id="Snippet1"::: + + The next example shows how to check the value of the for `MyProperty`. First, the code gets a with all the properties for the object. Next, the code indexes into the to get `MyProperty`. Then it returns the attributes for this property and saves them in the attributes variable. + + The example presents two different ways of checking the value of the . In the second code fragment, the example calls the method. In the last code fragment, the example uses the property to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BrowsableAttribute Example/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BrowsableAttribute/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute Example/VB/source.vb" id="Snippet2"::: - - If you marked a class with the , use the following code to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute Example/VB/source.vb" id="Snippet2"::: + + If you marked a class with the , use the following code to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BrowsableAttribute Example/CPP/source.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BrowsableAttribute/Overview/source.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute Example/VB/source.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute Example/VB/source.vb" id="Snippet3"::: + ]]> @@ -138,20 +138,20 @@ if a property or event can be modified at design time; otherwise, . The default is . Initializes a new instance of the class. - constructor of the value `true`, the value of this attribute is set to the constant member . For a property marked with the constructor of the value `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . - - - -## Examples - The following example marks a property as browsable. This code creates a new , sets its value to , and binds it to the property. - + constructor of the value `true`, the value of this attribute is set to the constant member . For a property marked with the constructor of the value `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . + + + +## Examples + The following example marks a property as browsable. This code creates a new , sets its value to , and binds it to the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BrowsableAttribute.BrowsableAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BrowsableAttribute/.ctor/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute.BrowsableAttribute Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute.BrowsableAttribute Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -204,23 +204,23 @@ if the object is browsable; otherwise, . - with all the properties for the object. - -- Indexing into the to get `MyProperty`. - -- Saving the attributes for this property in the attributes variable. - - Then the code sets `myAttribute` to the value of the in the and checks whether the property is browsable. - + with all the properties for the object. + +- Indexing into the to get `MyProperty`. + +- Saving the attributes for this property in the attributes variable. + + Then the code sets `myAttribute` to the value of the in the and checks whether the property is browsable. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic BrowsableAttribute.Browsable Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BrowsableAttribute/Browsable/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute.Browsable Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic BrowsableAttribute.Browsable Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -270,11 +270,11 @@ Specifies the default value for the , which is . This field is read-only. - . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -462,11 +462,11 @@ Specifies that a property or event cannot be modified at design time. This field is read-only. - constructor of the value `false`, this attribute is set to the constant member . Therefore, when you check whether the attribute is set to this value in your code, you must specify the attribute as . - + constructor of the value `false`, this attribute is set to the constant member . Therefore, when you check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -512,13 +512,13 @@ Specifies that a property or event can be modified at design time. This field is read-only. - constructor of the value `true`, this attribute is set to the constant member . Therefore, when you check whether the attribute is set to this value in your code, you must specify the attribute as . - + constructor of the value `true`, this attribute is set to the constant member . Therefore, when you check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> diff --git a/xml/System.ComponentModel/CollectionConverter.xml b/xml/System.ComponentModel/CollectionConverter.xml index a2df0c23c54..97c2ad4d618 100644 --- a/xml/System.ComponentModel/CollectionConverter.xml +++ b/xml/System.ComponentModel/CollectionConverter.xml @@ -47,16 +47,16 @@ Provides a type converter to convert collection objects to and from various other representations. - method for this type converter always returns `null`, and the method always returns `false`. - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - + method for this type converter always returns `null`, and the method always returns `false`. + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + > [!NOTE] -> You should never create an instance of the class. Instead, call the method of the class. For more information, see the examples in the base class. - +> You should never create an instance of the class. Instead, call the method of the class. For more information, see the examples in the base class. + ]]> @@ -163,14 +163,14 @@ Converts the given value object to the specified destination type. An that represents the converted value. - [!NOTE] -> The converted result will be shown in the property browser. For example, if you are converting a char collection into a string, it will be displayed as `char[] collection`. - +> The converted result will be shown in the property browser. For example, if you are converting a char collection into a string, it will be displayed as `char[] collection`. + ]]> @@ -247,23 +247,23 @@ Gets a collection of properties for the type of array specified by the value parameter using the specified context and attributes. A with the properties that are exposed for this data type, or if there are no properties. This method always returns . - and objects. Filtering is defined by the following rules: - -- A object will be treated as a wildcard; it will match any property that has the in its set of attributes. - -- If a property does not have an of the same class, the property will not be included in the returned array. - -- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. - -- If an instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. - - Collections do not support properties; therefore, this method always returns `null`. - + and objects. Filtering is defined by the following rules: + +- A object will be treated as a wildcard; it will match any property that has the in its set of attributes. + +- If a property does not have an of the same class, the property will not be included in the returned array. + +- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. + +- If an instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. + + Collections do not support properties; therefore, this method always returns `null`. + ]]> @@ -310,13 +310,13 @@ because should not be called to find the properties of this object. This method never returns . - diff --git a/xml/System.ComponentModel/ComponentConverter.xml b/xml/System.ComponentModel/ComponentConverter.xml index 6b89fc0b02b..8338f18a92f 100644 --- a/xml/System.ComponentModel/ComponentConverter.xml +++ b/xml/System.ComponentModel/ComponentConverter.xml @@ -50,18 +50,18 @@ Provides a type converter to convert components to and from various other representations. - and by returning the properties through the method of . - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - + and by returning the properties through the method of . + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + > [!NOTE] -> You should never create an instance of . Instead, call the method of . For more information, see the examples in the base class. - - This converter converts an object that implements and displays its properties in the Properties window. - +> You should never create an instance of . Instead, call the method of . For more information, see the examples in the base class. + + This converter converts an object that implements and displays its properties in the Properties window. + ]]> @@ -181,21 +181,21 @@ Gets a collection of properties for the type of component specified by the value parameter. A with the properties that are exposed for the component, or if there are no properties. - and objects. Filtering is defined by the following rules: - -- A object will be treated as a wildcard; it will match any property that has the in its set of attributes. - -- If a property does not have an of the same class, the property will not be included in the returned array. - -- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. - -- If a instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. - + and objects. Filtering is defined by the following rules: + +- A object will be treated as a wildcard; it will match any property that has the in its set of attributes. + +- If a property does not have an of the same class, the property will not be included in the returned array. + +- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. + +- If a instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. + ]]> @@ -245,11 +245,11 @@ because should be called to find the properties of this object. This method never returns . - diff --git a/xml/System.ComponentModel/ExpandableObjectConverter.xml b/xml/System.ComponentModel/ExpandableObjectConverter.xml index 53ea3a91dad..b9deb64fd81 100644 --- a/xml/System.ComponentModel/ExpandableObjectConverter.xml +++ b/xml/System.ComponentModel/ExpandableObjectConverter.xml @@ -44,30 +44,30 @@ Provides a type converter to convert expandable objects to and from various other representations. - . To make a type of property expandable in the , specify this for standard implementations of and . Mark child properties with the to ensure correct behavior in a control. - + . To make a type of property expandable in the , specify this for standard implementations of and . Mark child properties with the to ensure correct behavior in a control. + > [!NOTE] -> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - - - -## Examples - The following code example converts a variable of type to a string variable. - +> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + + + +## Examples + The following code example converts a variable of type to a string variable. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Converters/CPP/converters.cpp" id="Snippet26"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/BooleanConverter/Overview/converters.cs" id="Snippet26"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Converters/VB/converters.vb" id="Snippet26"::: - - The following code example demonstrates how to use the and the class to create an expandable property on a custom control. This code example is part of a larger example provided for the class. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Converters/VB/converters.vb" id="Snippet26"::: + + The following code example demonstrates how to use the and the class to create an expandable property on a custom control. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ExpandableObjectConverter/Overview/DemoControl.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ExpandableObjectConverter/VB/DemoControl.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ExpandableObjectConverter/VB/DemoControl.vb" id="Snippet3"::: + ]]> @@ -185,21 +185,21 @@ Gets a collection of properties for the type of object specified by the value parameter. A with the properties that are exposed for the component, or if there are no properties. - and objects. Filtering is defined by the following rules: - -- A object will be treated as a wildcard; it will match any property that has the in its set of attributes. - -- If a property does not have an of the same class, the property will not be included in the returned array. - -- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. - -- If a instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. - + and objects. Filtering is defined by the following rules: + +- A object will be treated as a wildcard; it will match any property that has the in its set of attributes. + +- If a property does not have an of the same class, the property will not be included in the returned array. + +- If the attribute is an instance of , the property must be an exact match or it will not be included in the returned array. + +- If a instance is specified and it is the default property, it will be included in the returned array even if there is no instance of the in the property. + ]]> @@ -250,11 +250,11 @@ because should be called to find the properties of this object. This method never returns . - diff --git a/xml/System.ComponentModel/ICancelAddNew.xml b/xml/System.ComponentModel/ICancelAddNew.xml index c85be6b5247..12923a5f501 100644 --- a/xml/System.ComponentModel/ICancelAddNew.xml +++ b/xml/System.ComponentModel/ICancelAddNew.xml @@ -41,26 +41,26 @@ Adds transactional capability when adding a new item to a collection. - interface enables a collection to add a new item in an extensible way. The new item subsequently can be committed or rolled back. The method of the collection is used to tentatively add the item, which is subsequently transacted through the following operations: - -- The method will explicitly commit the pending addition. - -- Performing another collection operation, such as an insertion, removal, or move will implicitly commit the pending addition. - -- The method will roll back the pending addition if it has not already been committed. - + interface enables a collection to add a new item in an extensible way. The new item subsequently can be committed or rolled back. The method of the collection is used to tentatively add the item, which is subsequently transacted through the following operations: + +- The method will explicitly commit the pending addition. + +- Performing another collection operation, such as an insertion, removal, or move will implicitly commit the pending addition. + +- The method will roll back the pending addition if it has not already been committed. + > [!NOTE] -> In some scenarios, such as Windows Forms complex data binding, the collection may receive or calls for items other than the newly added item. (Each item is typically a row in a data view.) Ignore these calls; cancel or commit the new item only when that item's index is specified. - - There are two models that allow transactional addition of an item to a data-bound collection: - -- The older model relies directly on a collection that implements the interface and is data-bound directly using the class. The , , and methods of the class are responsible for transactional support for adding new items. However, this functionality depends upon the items supporting transactional behavior through the interface. If the items do not support this interface, the item will always be added to the list, regardless of subsequent calls to . - -- The newer model supports a more robust data-binding scenario through the generic class, which implements the and interfaces. In this case, the transactional support is managed by the collection directly. - +> In some scenarios, such as Windows Forms complex data binding, the collection may receive or calls for items other than the newly added item. (Each item is typically a row in a data view.) Ignore these calls; cancel or commit the new item only when that item's index is specified. + + There are two models that allow transactional addition of an item to a data-bound collection: + +- The older model relies directly on a collection that implements the interface and is data-bound directly using the class. The , , and methods of the class are responsible for transactional support for adding new items. However, this functionality depends upon the items supporting transactional behavior through the interface. If the items do not support this interface, the item will always be added to the list, regardless of subsequent calls to . + +- The newer model supports a more robust data-binding scenario through the generic class, which implements the and interfaces. In this case, the transactional support is managed by the collection directly. + ]]> @@ -110,11 +110,11 @@ The index of the item that was previously added to the collection. Discards a pending new item from the collection. - method rolls back a pending addition () of an item previously added to the collection at position `itemIndex`. The index parameter is necessary because several new items can be simultaneously pending. - + method rolls back a pending addition () of an item previously added to the collection at position `itemIndex`. The index parameter is necessary because several new items can be simultaneously pending. + ]]> @@ -163,11 +163,11 @@ The index of the item that was previously added to the collection. Commits a pending new item to the collection. - commits a pending addition () of an item previously added to the collection at position `itemIndex`. The index parameter is necessary because several new items can be simultaneously pending. - + commits a pending addition () of an item previously added to the collection at position `itemIndex`. The index parameter is necessary because several new items can be simultaneously pending. + ]]> diff --git a/xml/System.ComponentModel/IEditableCollectionView.xml b/xml/System.ComponentModel/IEditableCollectionView.xml index 9129494818b..3937ef965dd 100644 --- a/xml/System.ComponentModel/IEditableCollectionView.xml +++ b/xml/System.ComponentModel/IEditableCollectionView.xml @@ -21,21 +21,21 @@ Defines methods and properties that a implements to provide editing capabilities to a collection. - interface, you can directly change the underlying collection, if it allows changes to be made, by using the methods and properties that exposes, regardless of the collection's type. - - The types , , and are the types that ship with Windows Presentation Foundation (WPF) that inherit from . These types also implement the , so you can edit a collection that uses one of those types. , in particular, is often used because the property is an . - - - -## Examples - The following example shows how to add an item to a collection by using methods that are defined by . This application displays a list of items for sale and gives the user the option of adding, editing, or removing an item. When the user adds or edits an item, a form prompts the user to enter a new item. If the user submits the form, the item is committed to the collection. If the user cancels the form, the item is discarded. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + interface, you can directly change the underlying collection, if it allows changes to be made, by using the methods and properties that exposes, regardless of the collection's type. + + The types , , and are the types that ship with Windows Presentation Foundation (WPF) that inherit from . These types also implement the , so you can edit a collection that uses one of those types. , in particular, is often used because the property is an . + + + +## Examples + The following example shows how to add an item to a collection by using methods that are defined by . This application displays a list of items for sale and gives the user the option of adding, editing, or removing an item. When the user adds or edits an item, a form prompts the user to enter a new item. If the user submits the form, the item is committed to the collection. If the user cancels the form, the item is discarded. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetadditem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: + ]]> @@ -67,19 +67,19 @@ Adds a new item to the collection. The new item that is added to the collection. - begins an add transaction. You should call or to end the add transaction. A new item always appears in the collection view. Any filtering, sorting, or grouping that is applied to the view is applied to the new item when is called. - - - -## Examples - The following example creates a that prompts the user to add a new item. Then it calls to create a new object and sets the of the to that object. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + begins an add transaction. You should call or to end the add transaction. A new item always appears in the collection view. Any filtering, sorting, or grouping that is applied to the view is applied to the new item when is called. + + + +## Examples + The following example creates a that prompts the user to add a new item. Then it calls to create a new object and sets the of the to that object. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetadditem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: + ]]> @@ -111,23 +111,23 @@ if a new item can be added to the collection; otherwise, . - can add a new item if the following are true: - -- An item can be added to the underlying collection. For example, if the collection is read-only, is `false`. - -- The can create an object of the type that is in the collection. For example, if the collection is of type , the must be able to create an object of type `T`. - - - -## Examples - The following example checks whether an item can be added to the collection. If is `false`, the example tells the user that an item cannot be added. Otherwise, it shows a form that prompts the user to add a new item. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections) . - + can add a new item if the following are true: + +- An item can be added to the underlying collection. For example, if the collection is read-only, is `false`. + +- The can create an object of the type that is in the collection. For example, if the collection is of type , the must be able to create an object of type `T`. + + + +## Examples + The following example checks whether an item can be added to the collection. If is `false`, the example tells the user that an item cannot be added. Otherwise, it shows a form that prompts the user to add a new item. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections) . + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetadditem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: + ]]> @@ -159,19 +159,19 @@ if the collection view can discard pending changes and restore the original values of an edited object; otherwise, . - is `true` if the view supports the notion of "pending changes" on the currently edited item. For example, a collection view might return `true` if the edited item implements , or if the view has information about the item's state that it can use to roll back changes. is `false` if the view cannot revert changes on an object. In that case, call to cause the view to exit the edit state and provide logic to revert the changes on the object that was edited. - - - -## Examples - The following example gets to check whether the original values of the edited item can be restored before it calls . If the values cannot be restored, you must supply additional logic to do so. If they can be, the values are restored when the example calls . For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + is `true` if the view supports the notion of "pending changes" on the currently edited item. For example, a collection view might return `true` if the edited item implements , or if the view has information about the item's state that it can use to roll back changes. is `false` if the view cannot revert changes on an object. In that case, call to cause the view to exit the edit state and provide logic to revert the changes on the object that was edited. + + + +## Examples + The following example gets to check whether the original values of the edited item can be restored before it calls . If the values cannot be restored, you must supply additional logic to do so. If they can be, the values are restored when the example calls . For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetcanceledit"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetcanceledit"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetcanceledit"::: + ]]> @@ -202,19 +202,19 @@ Ends the edit transaction and, if possible, restores the original value to the item. - sets to `null` and causes the collection view to exit the edit state. If is `true`, also restores the original values of the edited object. - - - -## Examples - The following example gets to check whether the original values of the edited item can be restored before it calls . If the values cannot be restored, you must supply additional logic to do so. If they can be, the values are restored when the example calls . For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + sets to `null` and causes the collection view to exit the edit state. If is `true`, also restores the original values of the edited object. + + + +## Examples + The following example gets to check whether the original values of the edited item can be restored before it calls . If the values cannot be restored, you must supply additional logic to do so. If they can be, the values are restored when the example calls . For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetcanceledit"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetcanceledit"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetcanceledit"::: + ]]> @@ -245,14 +245,14 @@ Ends the add transaction and discards the pending new item. - to add the item to the collection. If the user cancels the form, the example calls to discard the item. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + to add the item to the collection. If the user cancels the form, the example calls to discard the item. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetadditem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: + ]]> @@ -284,19 +284,19 @@ if an item can be removed from the collection; otherwise, . - is `false` if the underlying collection is read-only. - - - -## Examples - The following example calls to check whether an item can be removed from the collection. If an item can be removed, the example prompts the user to confirm the action and calls if the user clicks **Yes**. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + is `false` if the underlying collection is read-only. + + + +## Examples + The following example calls to check whether an item can be removed from the collection. If an item can be removed, the example prompts the user to confirm the action and calls if the user clicks **Yes**. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetremoveitem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetremoveitem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetremoveitem"::: + ]]> @@ -327,14 +327,14 @@ Ends the edit transaction and saves the pending changes. - to save the changes to the collection. If the user cancels the form, the example calls to discard the changes. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + to save the changes to the collection. If the user cancels the form, the example calls to discard the changes. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetedititem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetedititem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetedititem"::: + ]]> @@ -365,19 +365,19 @@ Ends the add transaction and saves the pending new item. - is applied to the new item when is called. - - - -## Examples - The following example displays a form that prompts the user to add a new item. If the user submits the form, the example calls to add the item to the collection. If the user cancels the form, the example calls to discard the item. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + is applied to the new item when is called. + + + +## Examples + The following example displays a form that prompts the user to add a new item. If the user submits the form, the example calls to add the item to the collection. If the user cancels the form, the example calls to discard the item. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetadditem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetadditem"::: + ]]> @@ -467,14 +467,14 @@ The item to edit. Begins an edit transaction of the specified item. - @@ -506,11 +506,11 @@ if an add transaction is in progress; otherwise, . - and end the add transaction by calling or . - + and end the add transaction by calling or . + ]]> @@ -542,11 +542,11 @@ if an edit transaction is in progress; otherwise, . - and end the transaction by calling or . - + and end the transaction by calling or . + ]]> @@ -608,19 +608,19 @@ The item to remove. Removes the specified item from the collection. - does nothing. - - - -## Examples - The following example calls to check whether an item can be removed from the collection. If an item can be removed, the example prompts the user to confirm the action and calls if the user clicks **Yes**. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). - + does nothing. + + + +## Examples + The following example calls to check whether an item can be removed from the collection. If an item can be removed, the example prompts the user to confirm the action and calls if the user clicks **Yes**. For the entire sample, see [Changing a Collection by Using IEditableCollectionView Sample](https://github.com/Microsoft/WPF-Samples/tree/master/Data%20Binding/EditingCollections). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionView/Overview/Window1.xaml.cs" id="Snippetremoveitem"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetremoveitem"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/EditingCollectionsSnippets/visualbasic/window1.xaml.vb" id="Snippetremoveitem"::: + ]]> @@ -654,11 +654,11 @@ The position of the item to remove. Removes the item at the specified position from the collection. - so that 7 items appear, the valid values of `index` are 0 through 6. - + so that 7 items appear, the valid values of `index` are 0 through 6. + ]]> diff --git a/xml/System.ComponentModel/IEditableCollectionViewAddNewItem.xml b/xml/System.ComponentModel/IEditableCollectionViewAddNewItem.xml index 1983fcd0abe..c4241c56f49 100644 --- a/xml/System.ComponentModel/IEditableCollectionViewAddNewItem.xml +++ b/xml/System.ComponentModel/IEditableCollectionViewAddNewItem.xml @@ -24,45 +24,45 @@ Defines methods and properties that a implements to enable specifying adding items of a specific type. - interface enables application developers to specify what type of object to add to a collection. This interface extends , so you can add, edit, and remove items in a collection. adds the method, which takes an object that is added to the collection. This method is useful when the collection and objects that you want to add have one or more of the following characteristics: - -- The objects in the are different types. - -- The objects do not have a parameterless constructor. - -- The object already exists. - -- You want to add a `null` object to the collection. - - - -## Examples - The following example enables a user to add various types of items to a collection. The user can enter a new item and submit the entry or cancel the transaction. The example gets an from the property of a and creates an object, whose type is determined by the user. Then the example calls the method to add the object to the collection. - + interface enables application developers to specify what type of object to add to a collection. This interface extends , so you can add, edit, and remove items in a collection. adds the method, which takes an object that is added to the collection. This method is useful when the collection and objects that you want to add have one or more of the following characteristics: + +- The objects in the are different types. + +- The objects do not have a parameterless constructor. + +- The object already exists. + +- You want to add a `null` object to the collection. + + + +## Examples + The following example enables a user to add various types of items to a collection. The user can enter a new item and submit the entry or cancel the transaction. The example gets an from the property of a and creates an object, whose type is determined by the user. Then the example calls the method to add the object to the collection. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/window1.xaml.cs" id="Snippetmainwindowlogic"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/window1.xaml.vb" id="Snippetmainwindowlogic"::: - - The following example creates the user interface for the previous example. - - :::code language="xaml" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/window1.xaml" id="Snippetmainwindowxaml"::: - - The following example creates the `AddItemWindow` in which the user adds data for a new item. - - :::code language="xaml" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/additem.xaml" id="Snippetadditemxaml"::: - - The following example shows the logic for the `AddItemWindow`. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/window1.xaml.vb" id="Snippetmainwindowlogic"::: + + The following example creates the user interface for the previous example. + + :::code language="xaml" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/window1.xaml" id="Snippetmainwindowxaml"::: + + The following example creates the `AddItemWindow` in which the user adds data for a new item. + + :::code language="xaml" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/additem.xaml" id="Snippetadditemxaml"::: + + The following example shows the logic for the `AddItemWindow`. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/additem.xaml.cs" id="Snippetadditemlogic"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/additemwindow.xaml.vb" id="Snippetadditemlogic"::: - - The following example shows the data types and collection that is used in the previous examples. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/additemwindow.xaml.vb" id="Snippetadditemlogic"::: + + The following example shows the data types and collection that is used in the previous examples. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/data.cs" id="Snippetdata"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/data.vb" id="Snippetdata"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/data.vb" id="Snippetdata"::: + ]]> @@ -96,21 +96,21 @@ Adds the specified object to the collection. The object that is added to the collection. - method, it begins an add transaction. You should call the or methods to end the add transaction. - - A new item always appears in the collection view. Any filtering, sorting, or grouping that is applied to the view is applied to the new item when is called. - - - -## Examples - The following example calls the method to add an object to a collection. For the complete example, see the class. - + method, it begins an add transaction. You should call the or methods to end the add transaction. + + A new item always appears in the collection view. Any filtering, sorting, or grouping that is applied to the view is applied to the new item when is called. + + + +## Examples + The following example calls the method to add an object to a collection. For the complete example, see the class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IEditableCollectionViewAddNewItem/Overview/window1.xaml.cs" id="Snippetmainwindowlogic"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/window1.xaml.vb" id="Snippetmainwindowlogic"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ieditablecollectionviewadditemexample/visualbasic/window1.xaml.vb" id="Snippetmainwindowlogic"::: + ]]> @@ -141,11 +141,11 @@ if a specified object can be added to the collection; otherwise, . - property is `true`, you can specify an object to add to the collection by calling the method. is `false` if items cannot be added to the collection by using . If is `false`, you may still be able to add an object by using the method. For example, you can add objects to an ADO.NET source by using , but not by using . - + property is `true`, you can specify an object to add to the collection by calling the method. is `false` if items cannot be added to the collection by using . If is `false`, you may still be able to add an object by using the method. For example, you can add objects to an ADO.NET source by using , but not by using . + ]]> diff --git a/xml/System.ComponentModel/IListSource.xml b/xml/System.ComponentModel/IListSource.xml index 41587a30efd..f24f4a5a922 100644 --- a/xml/System.ComponentModel/IListSource.xml +++ b/xml/System.ComponentModel/IListSource.xml @@ -67,32 +67,32 @@ Provides functionality to an object to return a list that can be bound to a data source. - itself. - - Binding to data can occur at either run time or in a designer, but there are rules for each. At run time, you can bind to data in any of the following: - -- - -- Implementer of , provided the implementer has a strongly typed property (that is, the is anything but ). You can accomplish this by making the default implementation of private. If you want to create an that follows the rules of a strongly typed collection, you should derive from . - -- Implementer of . - - In a designer, you can initialize binding to objects by following the same rules. - + itself. + + Binding to data can occur at either run time or in a designer, but there are rules for each. At run time, you can bind to data in any of the following: + +- + +- Implementer of , provided the implementer has a strongly typed property (that is, the is anything but ). You can accomplish this by making the default implementation of private. If you want to create an that follows the rules of a strongly typed collection, you should derive from . + +- Implementer of . + + In a designer, you can initialize binding to objects by following the same rules. + > [!NOTE] -> Implementers of can return an that contains a collection of objects. - - - -## Examples - The following code example demonstrates how to implement the interface. A component named `EmployeeListSource` exposes an for data binding by implementing the method. For a full code listing, see [How to: Implement the IListSource Interface](/dotnet/framework/winforms/how-to-implement-the-ilistsource-interface). - +> Implementers of can return an that contains a collection of objects. + + + +## Examples + The following code example demonstrates how to implement the interface. A component named `EmployeeListSource` exposes an for data binding by implementing the method. For a full code listing, see [How to: Implement the IListSource Interface](/dotnet/framework/winforms/how-to-implement-the-ilistsource-interface). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IListSource/Overview/EmployeeListSource.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.IListSource/VB/EmployeeListSource.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.IListSource/VB/EmployeeListSource.vb" id="Snippet1"::: + ]]> @@ -144,19 +144,19 @@ if the collection is a collection of objects; otherwise, . - returns `true` because the class contains a collection of collections. Using this property in returns `false` because the class contains a collection of objects. - - - -## Examples - The following code example demonstrates how to implement the interface. A component named `EmployeeListSource` indicates that it does not contain an for data binding by returning `false` from the method. For a full code listing, see [How to: Implement the IListSource Interface](/dotnet/framework/winforms/how-to-implement-the-ilistsource-interface). - + returns `true` because the class contains a collection of collections. Using this property in returns `false` because the class contains a collection of objects. + + + +## Examples + The following code example demonstrates how to implement the interface. A component named `EmployeeListSource` indicates that it does not contain an for data binding by returning `false` from the method. For a full code listing, see [How to: Implement the IListSource Interface](/dotnet/framework/winforms/how-to-implement-the-ilistsource-interface). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IListSource/Overview/EmployeeListSource.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.IListSource/VB/EmployeeListSource.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.IListSource/VB/EmployeeListSource.vb" id="Snippet3"::: + ]]> @@ -207,14 +207,14 @@ Returns an that can be bound to a data source from an object that does not implement an itself. An that can be bound to a data source from the object. - interface. A component named `EmployeeListSource` exposes an for data binding by implementing the method. For a full code listing, see [How to: Implement the IListSource Interface](/dotnet/framework/winforms/how-to-implement-the-ilistsource-interface). - + interface. A component named `EmployeeListSource` exposes an for data binding by implementing the method. For a full code listing, see [How to: Implement the IListSource Interface](/dotnet/framework/winforms/how-to-implement-the-ilistsource-interface). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/IListSource/Overview/EmployeeListSource.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.IListSource/VB/EmployeeListSource.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.IListSource/VB/EmployeeListSource.vb" id="Snippet4"::: + ]]> diff --git a/xml/System.ComponentModel/INotifyPropertyChanged.xml b/xml/System.ComponentModel/INotifyPropertyChanged.xml index 0dbf2b18467..a9abd652d8e 100644 --- a/xml/System.ComponentModel/INotifyPropertyChanged.xml +++ b/xml/System.ComponentModel/INotifyPropertyChanged.xml @@ -44,328 +44,328 @@ Notifies clients that a property value has changed. - interface is used to notify clients, typically binding clients, that a property value has changed. - - For example, consider a `Person` object with a property called `FirstName`. To provide generic property-change notification, the `Person` type implements the interface and raises a event when `FirstName` is changed. - - For change notification to occur in a binding between a bound client and a data source, your bound type should either: - -- Implement the interface (preferred). - -- Provide a change event for each property of the bound type. - - Do not do both. - - - -## Examples - The following code example demonstrates the how to implement the interface. When you run this example, you will notice the bound control reflects the change in the data source without requiring the binding to be reset. - - If you use the `CallerMemberName` attribute, calls to the `NotifyPropertyChanged` method don't have to specify the property name as a string argument. For more information, see [Caller Information](https://learn.microsoft.com/previous-versions/hh534540(v=vs.140)). - - Replace the code in your Form1 with the following code and then change the namespace to the name of your project. As an alternative, you can name your project with the namespace name below when you create it. - -```csharp -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Drawing; -using System.Runtime.CompilerServices; -using System.Windows.Forms; - -// Either change the following namespace to the name of your project, -// or name your project with the following name when you create it. -namespace TestNotifyPropertyChangedCS -{ - // This form demonstrates using a BindingSource to bind - // a list to a DataGridView control. The list does not - // raise change notifications. However the DemoCustomer type - // in the list does. - public partial class Form1 : Form - { - // This button causes the value of a list element to be changed. - private Button changeItemBtn = new Button(); - - // This DataGridView control displays the contents of the list. - private DataGridView customersDataGridView = new DataGridView(); - - // This BindingSource binds the list to the DataGridView control. - private BindingSource customersBindingSource = new BindingSource(); - - public Form1() - { - InitializeComponent(); - - // Set up the "Change Item" button. - this.changeItemBtn.Text = "Change Item"; - this.changeItemBtn.Dock = DockStyle.Bottom; - this.changeItemBtn.Click += - new EventHandler(changeItemBtn_Click); - this.Controls.Add(this.changeItemBtn); - - // Set up the DataGridView. - customersDataGridView.Dock = DockStyle.Top; - this.Controls.Add(customersDataGridView); - - this.Size = new Size(400, 200); - } - - private void Form1_Load(object sender, EventArgs e) - { - // Create and populate the list of DemoCustomer objects - // which will supply data to the DataGridView. - BindingList customerList = new BindingList(); - customerList.Add(DemoCustomer.CreateNewCustomer()); - customerList.Add(DemoCustomer.CreateNewCustomer()); - customerList.Add(DemoCustomer.CreateNewCustomer()); - - // Bind the list to the BindingSource. - this.customersBindingSource.DataSource = customerList; - - // Attach the BindingSource to the DataGridView. - this.customersDataGridView.DataSource = - this.customersBindingSource; - - } - - // Change the value of the CompanyName property for the first - // item in the list when the "Change Item" button is clicked. - void changeItemBtn_Click(object sender, EventArgs e) - { - // Get a reference to the list from the BindingSource. - BindingList customerList = - this.customersBindingSource.DataSource as BindingList; - - // Change the value of the CompanyName property for the - // first item in the list. - customerList[0].CustomerName = "Tailspin Toys"; - customerList[0].PhoneNumber = "(708)555-0150"; - } - - } - - // This is a simple customer class that - // implements the IPropertyChange interface. - public class DemoCustomer : INotifyPropertyChanged - { - // These fields hold the values for the public properties. - private Guid idValue = Guid.NewGuid(); - private string customerNameValue = String.Empty; - private string phoneNumberValue = String.Empty; - - public event PropertyChangedEventHandler PropertyChanged; - - // This method is called by the Set accessor of each property. - // The CallerMemberName attribute that is applied to the optional propertyName - // parameter causes the property name of the caller to be substituted as an argument. - private void NotifyPropertyChanged([CallerMemberName] String propertyName = "") - { + interface is used to notify clients, typically binding clients, that a property value has changed. + + For example, consider a `Person` object with a property called `FirstName`. To provide generic property-change notification, the `Person` type implements the interface and raises a event when `FirstName` is changed. + + For change notification to occur in a binding between a bound client and a data source, your bound type should either: + +- Implement the interface (preferred). + +- Provide a change event for each property of the bound type. + + Do not do both. + + + +## Examples + The following code example demonstrates the how to implement the interface. When you run this example, you will notice the bound control reflects the change in the data source without requiring the binding to be reset. + + If you use the `CallerMemberName` attribute, calls to the `NotifyPropertyChanged` method don't have to specify the property name as a string argument. For more information, see [Caller Information](https://learn.microsoft.com/previous-versions/hh534540(v=vs.140)). + + Replace the code in your Form1 with the following code and then change the namespace to the name of your project. As an alternative, you can name your project with the namespace name below when you create it. + +```csharp +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Runtime.CompilerServices; +using System.Windows.Forms; + +// Either change the following namespace to the name of your project, +// or name your project with the following name when you create it. +namespace TestNotifyPropertyChangedCS +{ + // This form demonstrates using a BindingSource to bind + // a list to a DataGridView control. The list does not + // raise change notifications. However the DemoCustomer type + // in the list does. + public partial class Form1 : Form + { + // This button causes the value of a list element to be changed. + private Button changeItemBtn = new Button(); + + // This DataGridView control displays the contents of the list. + private DataGridView customersDataGridView = new DataGridView(); + + // This BindingSource binds the list to the DataGridView control. + private BindingSource customersBindingSource = new BindingSource(); + + public Form1() + { + InitializeComponent(); + + // Set up the "Change Item" button. + this.changeItemBtn.Text = "Change Item"; + this.changeItemBtn.Dock = DockStyle.Bottom; + this.changeItemBtn.Click += + new EventHandler(changeItemBtn_Click); + this.Controls.Add(this.changeItemBtn); + + // Set up the DataGridView. + customersDataGridView.Dock = DockStyle.Top; + this.Controls.Add(customersDataGridView); + + this.Size = new Size(400, 200); + } + + private void Form1_Load(object sender, EventArgs e) + { + // Create and populate the list of DemoCustomer objects + // which will supply data to the DataGridView. + BindingList customerList = new BindingList(); + customerList.Add(DemoCustomer.CreateNewCustomer()); + customerList.Add(DemoCustomer.CreateNewCustomer()); + customerList.Add(DemoCustomer.CreateNewCustomer()); + + // Bind the list to the BindingSource. + this.customersBindingSource.DataSource = customerList; + + // Attach the BindingSource to the DataGridView. + this.customersDataGridView.DataSource = + this.customersBindingSource; + + } + + // Change the value of the CompanyName property for the first + // item in the list when the "Change Item" button is clicked. + void changeItemBtn_Click(object sender, EventArgs e) + { + // Get a reference to the list from the BindingSource. + BindingList customerList = + this.customersBindingSource.DataSource as BindingList; + + // Change the value of the CompanyName property for the + // first item in the list. + customerList[0].CustomerName = "Tailspin Toys"; + customerList[0].PhoneNumber = "(708)555-0150"; + } + + } + + // This is a simple customer class that + // implements the IPropertyChange interface. + public class DemoCustomer : INotifyPropertyChanged + { + // These fields hold the values for the public properties. + private Guid idValue = Guid.NewGuid(); + private string customerNameValue = String.Empty; + private string phoneNumberValue = String.Empty; + + public event PropertyChangedEventHandler PropertyChanged; + + // This method is called by the Set accessor of each property. + // The CallerMemberName attribute that is applied to the optional propertyName + // parameter causes the property name of the caller to be substituted as an argument. + private void NotifyPropertyChanged([CallerMemberName] String propertyName = "") + { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); - } - - // The constructor is private to enforce the factory pattern. - private DemoCustomer() - { - customerNameValue = "Customer"; - phoneNumberValue = "(312)555-0100"; - } - - // This is the public factory method. - public static DemoCustomer CreateNewCustomer() - { - return new DemoCustomer(); - } - - // This property represents an ID, suitable - // for use as a primary key in a database. - public Guid ID - { - get - { - return this.idValue; - } - } - - public string CustomerName - { - get - { - return this.customerNameValue; - } - - set - { - if (value != this.customerNameValue) - { - this.customerNameValue = value; - NotifyPropertyChanged(); - } - } - } - - public string PhoneNumber - { - get - { - return this.phoneNumberValue; - } - - set - { - if (value != this.phoneNumberValue) - { - this.phoneNumberValue = value; - NotifyPropertyChanged(); - } - } - } - } -} -``` - -```vb -Imports System -Imports System.Collections.Generic -Imports System.ComponentModel -Imports System.Drawing -Imports System.Runtime.CompilerServices -Imports System.Windows.Forms - -' This form demonstrates using a BindingSource to bind -' a list to a DataGridView control. The list does not -' raise change notifications. However the DemoCustomer type -' in the list does. - -Public Class Form1 - Inherits System.Windows.Forms.Form - ' This button causes the value of a list element to be changed. - Private changeItemBtn As New Button() - - ' This DataGridView control displays the contents of the list. - Private customersDataGridView As New DataGridView() - - ' This BindingSource binds the list to the DataGridView control. - Private customersBindingSource As New BindingSource() - - Public Sub New() - InitializeComponent() - - ' Set up the "Change Item" button. - Me.changeItemBtn.Text = "Change Item" - Me.changeItemBtn.Dock = DockStyle.Bottom - AddHandler Me.changeItemBtn.Click, AddressOf changeItemBtn_Click - Me.Controls.Add(Me.changeItemBtn) - - ' Set up the DataGridView. - customersDataGridView.Dock = DockStyle.Top - Me.Controls.Add(customersDataGridView) - - Me.Size = New Size(400, 200) - End Sub - - Private Sub Form1_Load(ByVal sender As System.Object, _ - ByVal e As System.EventArgs) Handles Me.Load - - ' Create and populate the list of DemoCustomer objects - ' which will supply data to the DataGridView. - Dim customerList As New BindingList(Of DemoCustomer) - - customerList.Add(DemoCustomer.CreateNewCustomer()) - customerList.Add(DemoCustomer.CreateNewCustomer()) - customerList.Add(DemoCustomer.CreateNewCustomer()) - - ' Bind the list to the BindingSource. - Me.customersBindingSource.DataSource = customerList - - ' Attach the BindingSource to the DataGridView. - Me.customersDataGridView.DataSource = Me.customersBindingSource - End Sub - - ' This event handler changes the value of the CompanyName - ' property for the first item in the list. - Private Sub changeItemBtn_Click(ByVal sender As Object, ByVal e As EventArgs) - ' Get a reference to the list from the BindingSource. - Dim customerList As BindingList(Of DemoCustomer) = _ - CType(customersBindingSource.DataSource, BindingList(Of DemoCustomer)) - - ' Change the value of the CompanyName property for the - ' first item in the list. - customerList(0).CustomerName = "Tailspin Toys" - customerList(0).PhoneNumber = "(708)555-0150" - End Sub -End Class - -' This class implements a simple customer type -' that implements the IPropertyChange interface. - -Public Class DemoCustomer - Implements INotifyPropertyChanged - - ' These fields hold the values for the public properties. - Private idValue As Guid = Guid.NewGuid() - Private customerNameValue As String = String.Empty - Private phoneNumberValue As String = String.Empty - - Public Event PropertyChanged As PropertyChangedEventHandler _ - Implements INotifyPropertyChanged.PropertyChanged - - ' This method is called by the Set accessor of each property. - ' The CallerMemberName attribute that is applied to the optional propertyName - ' parameter causes the property name of the caller to be substituted as an argument. - Private Sub NotifyPropertyChanged( Optional ByVal propertyName As String = Nothing) - RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(propertyName)) - End Sub - - ' The constructor is private to enforce the factory pattern. - Private Sub New() - customerNameValue = "Customer" - phoneNumberValue = "(312)555-0100" - End Sub - - ' This is the public factory method. - Public Shared Function CreateNewCustomer() As DemoCustomer - Return New DemoCustomer() - End Function - - ' This property represents an ID, suitable - ' for use as a primary key in a database. - Public ReadOnly Property ID() As Guid - Get - Return Me.idValue - End Get - End Property - - Public Property CustomerName() As String - Get - Return Me.customerNameValue - End Get - - Set(ByVal value As String) - If Not (value = customerNameValue) Then - Me.customerNameValue = value - NotifyPropertyChanged() - End If - End Set - End Property - - Public Property PhoneNumber() As String - Get - Return Me.phoneNumberValue - End Get - - Set(ByVal value As String) - If Not (value = phoneNumberValue) Then - Me.phoneNumberValue = value - NotifyPropertyChanged() - End If - End Set - End Property -End Class -``` - + } + + // The constructor is private to enforce the factory pattern. + private DemoCustomer() + { + customerNameValue = "Customer"; + phoneNumberValue = "(312)555-0100"; + } + + // This is the public factory method. + public static DemoCustomer CreateNewCustomer() + { + return new DemoCustomer(); + } + + // This property represents an ID, suitable + // for use as a primary key in a database. + public Guid ID + { + get + { + return this.idValue; + } + } + + public string CustomerName + { + get + { + return this.customerNameValue; + } + + set + { + if (value != this.customerNameValue) + { + this.customerNameValue = value; + NotifyPropertyChanged(); + } + } + } + + public string PhoneNumber + { + get + { + return this.phoneNumberValue; + } + + set + { + if (value != this.phoneNumberValue) + { + this.phoneNumberValue = value; + NotifyPropertyChanged(); + } + } + } + } +} +``` + +```vb +Imports System +Imports System.Collections.Generic +Imports System.ComponentModel +Imports System.Drawing +Imports System.Runtime.CompilerServices +Imports System.Windows.Forms + +' This form demonstrates using a BindingSource to bind +' a list to a DataGridView control. The list does not +' raise change notifications. However the DemoCustomer type +' in the list does. + +Public Class Form1 + Inherits System.Windows.Forms.Form + ' This button causes the value of a list element to be changed. + Private changeItemBtn As New Button() + + ' This DataGridView control displays the contents of the list. + Private customersDataGridView As New DataGridView() + + ' This BindingSource binds the list to the DataGridView control. + Private customersBindingSource As New BindingSource() + + Public Sub New() + InitializeComponent() + + ' Set up the "Change Item" button. + Me.changeItemBtn.Text = "Change Item" + Me.changeItemBtn.Dock = DockStyle.Bottom + AddHandler Me.changeItemBtn.Click, AddressOf changeItemBtn_Click + Me.Controls.Add(Me.changeItemBtn) + + ' Set up the DataGridView. + customersDataGridView.Dock = DockStyle.Top + Me.Controls.Add(customersDataGridView) + + Me.Size = New Size(400, 200) + End Sub + + Private Sub Form1_Load(ByVal sender As System.Object, _ + ByVal e As System.EventArgs) Handles Me.Load + + ' Create and populate the list of DemoCustomer objects + ' which will supply data to the DataGridView. + Dim customerList As New BindingList(Of DemoCustomer) + + customerList.Add(DemoCustomer.CreateNewCustomer()) + customerList.Add(DemoCustomer.CreateNewCustomer()) + customerList.Add(DemoCustomer.CreateNewCustomer()) + + ' Bind the list to the BindingSource. + Me.customersBindingSource.DataSource = customerList + + ' Attach the BindingSource to the DataGridView. + Me.customersDataGridView.DataSource = Me.customersBindingSource + End Sub + + ' This event handler changes the value of the CompanyName + ' property for the first item in the list. + Private Sub changeItemBtn_Click(ByVal sender As Object, ByVal e As EventArgs) + ' Get a reference to the list from the BindingSource. + Dim customerList As BindingList(Of DemoCustomer) = _ + CType(customersBindingSource.DataSource, BindingList(Of DemoCustomer)) + + ' Change the value of the CompanyName property for the + ' first item in the list. + customerList(0).CustomerName = "Tailspin Toys" + customerList(0).PhoneNumber = "(708)555-0150" + End Sub +End Class + +' This class implements a simple customer type +' that implements the IPropertyChange interface. + +Public Class DemoCustomer + Implements INotifyPropertyChanged + + ' These fields hold the values for the public properties. + Private idValue As Guid = Guid.NewGuid() + Private customerNameValue As String = String.Empty + Private phoneNumberValue As String = String.Empty + + Public Event PropertyChanged As PropertyChangedEventHandler _ + Implements INotifyPropertyChanged.PropertyChanged + + ' This method is called by the Set accessor of each property. + ' The CallerMemberName attribute that is applied to the optional propertyName + ' parameter causes the property name of the caller to be substituted as an argument. + Private Sub NotifyPropertyChanged( Optional ByVal propertyName As String = Nothing) + RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(propertyName)) + End Sub + + ' The constructor is private to enforce the factory pattern. + Private Sub New() + customerNameValue = "Customer" + phoneNumberValue = "(312)555-0100" + End Sub + + ' This is the public factory method. + Public Shared Function CreateNewCustomer() As DemoCustomer + Return New DemoCustomer() + End Function + + ' This property represents an ID, suitable + ' for use as a primary key in a database. + Public ReadOnly Property ID() As Guid + Get + Return Me.idValue + End Get + End Property + + Public Property CustomerName() As String + Get + Return Me.customerNameValue + End Get + + Set(ByVal value As String) + If Not (value = customerNameValue) Then + Me.customerNameValue = value + NotifyPropertyChanged() + End If + End Set + End Property + + Public Property PhoneNumber() As String + Get + Return Me.phoneNumberValue + End Get + + Set(ByVal value As String) + If Not (value = phoneNumberValue) Then + Me.phoneNumberValue = value + NotifyPropertyChanged() + End If + End Set + End Property +End Class +``` + ]]> @@ -410,19 +410,19 @@ End Class Occurs when a property value changes. - event can indicate all properties on the object have changed by using either `null` or as the property name in the . Note that in a UWP application, must be used rather than `null`. - - - -## Examples - The following code example demonstrates how to implement the event of the interface. - + + + +## Examples + The following code example demonstrates how to implement the event of the interface. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/INotifyPropertyChanged/PropertyChanged/Form1.cs" id="Snippet9"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.IPropertyChangeExample/VB/Form1.vb" id="Snippet9"::: - + ]]> diff --git a/xml/System.ComponentModel/ITypedList.xml b/xml/System.ComponentModel/ITypedList.xml index 2495208d03b..fcda7532424 100644 --- a/xml/System.ComponentModel/ITypedList.xml +++ b/xml/System.ComponentModel/ITypedList.xml @@ -45,33 +45,33 @@ Provides functionality to discover the schema for a bindable list, where the properties available for binding differ from the public properties of the object to bind to. - object that represents a `customer` table, you want to bind to the properties on the `customer` object that the represents, not the properties of the . - - This interface is not required for design-time support of a bindable list. - - Binding to data can occur either at run time or in a designer, but there are rules for both. At run time, you can bind to data in any of the following: - -- - -- Implementer of , provided the implementer has a strongly typed property (that is, the is anything but ). You can accomplish this by making the default implementation of private. If you want to create an that follows the rules of a strongly typed collection, you should derive from . - -- Implementer of . - - In a designer, you can initialize binding to objects by following the same rules. - - For more information on binding to a data source, see the class. - - - -## Examples - The following code example demonstrates how to implement the interface. A generic type named `SortableBindingList` derives from the class and implements the interface. For a full code listing, see [How to: Implement the ITypedList Interface](/dotnet/framework/winforms/how-to-implement-the-itypedlist-interface). - + object that represents a `customer` table, you want to bind to the properties on the `customer` object that the represents, not the properties of the . + + This interface is not required for design-time support of a bindable list. + + Binding to data can occur either at run time or in a designer, but there are rules for both. At run time, you can bind to data in any of the following: + +- + +- Implementer of , provided the implementer has a strongly typed property (that is, the is anything but ). You can accomplish this by making the default implementation of private. If you want to create an that follows the rules of a strongly typed collection, you should derive from . + +- Implementer of . + + In a designer, you can initialize binding to objects by following the same rules. + + For more information on binding to a data source, see the class. + + + +## Examples + The following code example demonstrates how to implement the interface. A generic type named `SortableBindingList` derives from the class and implements the interface. For a full code listing, see [How to: Implement the ITypedList Interface](/dotnet/framework/winforms/how-to-implement-the-itypedlist-interface). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ITypedList/Overview/SortableBindingList.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ITypedList/VB/SortableBindingList.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ITypedList/VB/SortableBindingList.vb" id="Snippet1"::: + ]]> @@ -131,19 +131,19 @@ Returns the that represents the properties on each item used to bind data. The that represents the properties on each item used to bind data. - . For example, a containing two tables, `myCustomers` and `myOrders`, with a relationship between them called `myCustOrders`. If you create a object to view `myCustomers`, then calling the method with `null` returns the property descriptors for the columns in `myCustomers`. As a result, one of the returned property descriptors is a property descriptor for `myCustOrders`, just as calling the method with a list accessor array containing the property descriptors for `myCustOrders` will return the property descriptors for `myOrders`. - - - -## Examples - The following code example demonstrates how to implement the method. For a full code listing, see [How to: Implement the ITypedList Interface](/dotnet/framework/winforms/how-to-implement-the-itypedlist-interface). - + . For example, a containing two tables, `myCustomers` and `myOrders`, with a relationship between them called `myCustOrders`. If you create a object to view `myCustomers`, then calling the method with `null` returns the property descriptors for the columns in `myCustomers`. As a result, one of the returned property descriptors is a property descriptor for `myCustOrders`, just as calling the method with a list accessor array containing the property descriptors for `myCustOrders` will return the property descriptors for `myOrders`. + + + +## Examples + The following code example demonstrates how to implement the method. For a full code listing, see [How to: Implement the ITypedList Interface](/dotnet/framework/winforms/how-to-implement-the-itypedlist-interface). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ITypedList/Overview/SortableBindingList.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ITypedList/VB/SortableBindingList.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ITypedList/VB/SortableBindingList.vb" id="Snippet3"::: + ]]> @@ -203,19 +203,19 @@ Returns the name of the list. The name of the list. - control. - - - -## Examples - The following code example demonstrates how to implement the method. For a full code listing, see [How to: Implement the ITypedList Interface](/dotnet/framework/winforms/how-to-implement-the-itypedlist-interface). - + control. + + + +## Examples + The following code example demonstrates how to implement the method. For a full code listing, see [How to: Implement the ITypedList Interface](/dotnet/framework/winforms/how-to-implement-the-itypedlist-interface). + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ITypedList/Overview/SortableBindingList.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ITypedList/VB/SortableBindingList.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.ITypedList/VB/SortableBindingList.vb" id="Snippet4"::: + ]]> diff --git a/xml/System.ComponentModel/MaskedTextProvider.xml b/xml/System.ComponentModel/MaskedTextProvider.xml index 96b789de0f3..aa217e690f6 100644 --- a/xml/System.ComponentModel/MaskedTextProvider.xml +++ b/xml/System.ComponentModel/MaskedTextProvider.xml @@ -57,26 +57,26 @@ Represents a mask-parsing service that can be used by any number of controls that support masking, such as the control. - control contains a mask, composed of literal characters and formatting elements, that it tests all user input against. Instead of permanently associating a specific mask-parsing engine with , Windows Forms provides it as a separate service, represented by the class, which defines the syntax of the masking language discussed in the documentation for the property. - - Many of the members of the class refer their implementation to similarly named members of the associated . For example, the property of the class refers all access to the of the class. - - The mask-parsing engine used by is modeled after the Masked Edit control included in Microsoft Visual Basic version 6. Its masking language is described in the documentation for the property. - - The following three distinct strings are involved with the class. - -|String name|Description| -|-----------------|-----------------| -|Input character or string|Represents the characters used as input that the mask is applied against. In actuality, the input string may be composed of multiple input operations, including , , , and . Therefore, the input string cannot be accessed directly. However, aspects of the input string handling are available though the and , , and properties.| -|Mask|Represents the input formatting mask used to transform the input string into the formatted string. This string is set in the and accessed primarily though the property. Characteristics of the mask are also available through other members, such as the , , and properties.| -|Formatted string|Represents the string that results when the full mask is applied to the input string. The formatted string can be queried with many members of the class, including , , , , , , and so on. The full value of the formatted string is available from the and methods.| - + control contains a mask, composed of literal characters and formatting elements, that it tests all user input against. Instead of permanently associating a specific mask-parsing engine with , Windows Forms provides it as a separate service, represented by the class, which defines the syntax of the masking language discussed in the documentation for the property. + + Many of the members of the class refer their implementation to similarly named members of the associated . For example, the property of the class refers all access to the of the class. + + The mask-parsing engine used by is modeled after the Masked Edit control included in Microsoft Visual Basic version 6. Its masking language is described in the documentation for the property. + + The following three distinct strings are involved with the class. + +|String name|Description| +|-----------------|-----------------| +|Input character or string|Represents the characters used as input that the mask is applied against. In actuality, the input string may be composed of multiple input operations, including , , , and . Therefore, the input string cannot be accessed directly. However, aspects of the input string handling are available though the and , , and properties.| +|Mask|Represents the input formatting mask used to transform the input string into the formatted string. This string is set in the and accessed primarily though the property. Characteristics of the mask are also available through other members, such as the , , and properties.| +|Formatted string|Represents the string that results when the full mask is applied to the input string. The formatted string can be queried with many members of the class, including , , , , , , and so on. The full value of the formatted string is available from the and methods.| + > [!NOTE] -> The input string may represent direct user input, as in the case of the , or may be generated by other processes not directly associated with user input/output operations. - +> The input string may represent direct user input, as in the case of the , or may be generated by other processes not directly associated with user input/output operations. + ]]> @@ -138,13 +138,13 @@ A that represents the input mask. Initializes a new instance of the class using the specified mask. - constructor: - - `MaskedTextProvider(mask , null, true, '_', '\0', false)` - + constructor: + + `MaskedTextProvider(mask , null, true, '_', '\0', false)` + ]]> @@ -197,13 +197,13 @@ to restrict input to ASCII-compatible characters; otherwise to allow the entire Unicode set. Initializes a new instance of the class using the specified mask and ASCII restriction value. - constructor: - - `MaskedTextProvider(mask , null, true, '_', '\0', restrictToASCII)` - + constructor: + + `MaskedTextProvider(mask , null, true, '_', '\0', restrictToASCII)` + ]]> @@ -264,13 +264,13 @@ A that is used to set region-sensitive separator characters. Initializes a new instance of the class using the specified mask and culture. - constructor: - - `MaskedTextProvider(mask , culture, true, '_', '\0', false)` - + constructor: + + `MaskedTextProvider(mask , culture, true, '_', '\0', false)` + ]]> @@ -326,13 +326,13 @@ to allow the prompt character as input; otherwise . Initializes a new instance of the class using the specified mask, password character, and prompt usage value. - constructor: - - `MaskedTextProvider(mask , null, allowPromptAsInput, '_', passwordChar, false)` - + constructor: + + `MaskedTextProvider(mask , null, allowPromptAsInput, '_', passwordChar, false)` + ]]> @@ -397,13 +397,13 @@ to restrict input to ASCII-compatible characters; otherwise to allow the entire Unicode set. Initializes a new instance of the class using the specified mask, culture, and ASCII restriction value. - constructor: - - `MaskedTextProvider(mask , culture, true, '_', '\0', restrictToAscii)` - + constructor: + + `MaskedTextProvider(mask , culture, true, '_', '\0', restrictToAscii)` + ]]> @@ -470,13 +470,13 @@ to allow the prompt character as input; otherwise . Initializes a new instance of the class using the specified mask, culture, password character, and prompt usage value. - constructor: - - `MaskedTextProvider(mask , culture, allowPromptAsInput, '_', passwordChar, false)` - + constructor: + + `MaskedTextProvider(mask , culture, allowPromptAsInput, '_', passwordChar, false)` + ]]> @@ -542,19 +542,19 @@ to restrict input to ASCII-compatible characters; otherwise to allow the entire Unicode set. Initializes a new instance of the class using the specified mask, culture, prompt usage value, prompt character, password character, and ASCII restriction value. - class, which is detailed in the property of the class. - - Because neutral cultures cannot be queried for culture-specific information, the constructor will use the method to search for the first non-neutral culture to use to determine the proper separator characters. - + class, which is detailed in the property of the class. + + Because neutral cultures cannot be queried for culture-specific information, the constructor will use the method to search for the first non-neutral culture to use to determine the proper separator characters. + ]]> - The mask parameter is or . - - -or- - + The mask parameter is or . + + -or- + The mask contains one or more non-printable characters. @@ -619,15 +619,15 @@ if the input character was added successfully; otherwise . - method adds the `input` character value to the first available position in the formatted string after the position that was last assigned, which is represented by the property. This method will fail for any of the following reasons: - -- The input value, `input`, is not printable, or it does not match its corresponding mask element. - -- There are zero available edit positions in the formatted string, or there are no available edit positions after the last assigned position. - + method adds the `input` character value to the first available position in the formatted string after the position that was last assigned, which is represented by the property. This method will fail for any of the following reasons: + +- The input value, `input`, is not printable, or it does not match its corresponding mask element. + +- There are zero available edit positions in the formatted string, or there are no available edit positions after the last assigned position. + ]]> @@ -684,17 +684,17 @@ if all the characters from the input string were added successfully; otherwise to indicate that no characters were added. - method adds the characters from the `input` string to the formatted string, starting with the first available position after . This method will fail for any of the following reasons: - -- Any of the characters in the input value, `input`, are not printable, or the input value does not match its corresponding mask element. - -- There are not enough available edit positions in the formatted string after the last assigned position. - - If this method fails, no additions are made and the method returns `false`. - + method adds the characters from the `input` string to the formatted string, starting with the first available position after . This method will fail for any of the following reasons: + +- Any of the characters in the input value, `input`, are not printable, or the input value does not match its corresponding mask element. + +- There are not enough available edit positions in the formatted string after the last assigned position. + + If this method fails, no additions are made and the method returns `false`. + ]]> The parameter is . @@ -756,17 +756,17 @@ if the input character was added successfully; otherwise . - method attempts to add the `input` character value to the first available position in the formatted string after the position that was last assigned, which is represented by the property. This method will fail if all available positions are before the last assigned position. This method will fail for any of the following reasons: - -- The input value, `input`, is not printable, or it does not match its corresponding mask element. - -- There are zero available edit positions in the formatted string, or there are no available edit positions after the last assigned position. - - This method functions the same as the overridden version taking a single parameter, , except that it outputs additional information. - + method attempts to add the `input` character value to the first available position in the formatted string after the position that was last assigned, which is represented by the property. This method will fail if all available positions are before the last assigned position. This method will fail for any of the following reasons: + +- The input value, `input`, is not printable, or it does not match its corresponding mask element. + +- There are zero available edit positions in the formatted string, or there are no available edit positions after the last assigned position. + + This method functions the same as the overridden version taking a single parameter, , except that it outputs additional information. + ]]> @@ -827,19 +827,19 @@ if all the characters from the input string were added successfully; otherwise to indicate that no characters were added. - method adds the characters from the `input` string to the formatted string, starting with the first available position after . This method will fail for any of the following reasons: - -- Any of the characters in the input value, `input`, are not printable, or the input value does not match its corresponding mask element. - -- There are not enough available edit positions in the formatted string after the last assigned position. - - If this method fails, no additions are made and the method returns `false`. - - This method functions the same as the overridden version taking a single parameter, , except that it outputs additional information. - + method adds the characters from the `input` string to the formatted string, starting with the first available position after . This method will fail for any of the following reasons: + +- Any of the characters in the input value, `input`, are not printable, or the input value does not match its corresponding mask element. + +- There are not enough available edit positions in the formatted string after the last assigned position. + + If this method fails, no additions are made and the method returns `false`. + + This method functions the same as the overridden version taking a single parameter, , except that it outputs additional information. + ]]> @@ -892,13 +892,13 @@ if the user can enter into the control; otherwise, . The default is . - property's value is set in the constructor. - - Even when is `true`, the prompt character must be valid for the current location in the mask in order to be accepted. - + property's value is set in the constructor. + + Even when is `true`, the prompt character must be valid for the current location in the mask in order to be accepted. + ]]> @@ -945,13 +945,13 @@ if only ASCII is accepted; if can accept any arbitrary Unicode character. The default is . - property's value is set in the constructor. - - If `true`, restricts user input to the ASCII character set. - + property's value is set in the constructor. + + If `true`, restricts user input to the ASCII character set. + ]]> @@ -1002,11 +1002,11 @@ Gets the number of editable character positions that have already been successfully assigned an input value. An containing the number of editable character positions in the input mask that have already been assigned a character value in the formatted string. - property, should equal the sum of the and the properties. - + property, should equal the sum of the and the properties. + ]]> @@ -1056,11 +1056,11 @@ Gets the number of editable character positions in the input mask that have not yet been assigned an input value. An containing the number of editable character positions that not yet been assigned a character value. - property, should equal the sum of the and the properties. - + property, should equal the sum of the and the properties. + ]]> @@ -1118,11 +1118,11 @@ Clears all the editable input characters from the formatted string, replacing them with prompt characters. - method reinitializes the formatted string, inserting the prompt character into all editable positions. - + method reinitializes the formatted string, inserting the prompt character into all editable positions. + ]]> @@ -1175,11 +1175,11 @@ A that succinctly describes the result of the operation. An output parameter. Clears all the editable input characters from the formatted string, replacing them with prompt characters, and then outputs descriptive information. - method reinitializes the formatted string, inserting the prompt character into all editable positions. It functions equivalently to the overridden version that takes no parameters, , except it outputs additional information. - + method reinitializes the formatted string, inserting the prompt character into all editable positions. It functions equivalently to the overridden version that takes no parameters, , except it outputs additional information. + ]]> @@ -1238,11 +1238,11 @@ Creates a copy of the current . The object this method creates, cast as an object. - method returns a new copy of the current . - + method returns a new copy of the current . + ]]> @@ -1294,11 +1294,11 @@ Gets the culture that determines the value of the localizable separators and placeholders in the input mask. A containing the culture information associated with the input mask. - property is set in the constructor. - + property is set in the constructor. + ]]> @@ -1343,11 +1343,11 @@ Gets the default password character used obscure user input. A that represents the default password character. - property is defined in the class to be the asterisk character (*). - + property is defined in the class to be the asterisk character (*). + ]]> @@ -1393,11 +1393,11 @@ Gets the number of editable positions in the formatted string. An containing the number of editable positions in the formatted string. - property, must equal the sum of the and the properties. This value includes both the required and the optional editable characters. - + property, must equal the sum of the and the properties. This value includes both the required and the optional editable characters. + ]]> @@ -1449,13 +1449,13 @@ Gets a newly created enumerator for the editable positions in the formatted string. An that supports enumeration over the editable positions in the formatted string. - property, a temporary collection of editable positions is created that the retrieved operates on. - - This collection is read-only. - + property, a temporary collection of editable positions is created that the retrieved operates on. + + This collection is read-only. + ]]> @@ -1510,15 +1510,15 @@ Returns the position of the first assigned editable position after the specified position using the specified search direction. If successful, an representing the zero-based position of the first assigned editable position encountered; otherwise . - method is used to search for the first assigned character after a specified position and search direction. The result can subsequently be passed as a parameter to the indexer to obtain the assigned value at this position. - - The and methods are complements of this method. - + method is used to search for the first assigned character after a specified position and search direction. The result can subsequently be passed as a parameter to the indexer to obtain the assigned value at this position. + + The and methods are complements of this method. + ]]> @@ -1577,15 +1577,15 @@ Returns the position of the first assigned editable position between the specified positions using the specified search direction. If successful, an representing the zero-based position of the first assigned editable position encountered; otherwise . - method is used to search for the first assigned character between two specified positions, inclusive, using the specified search direction. The result can subsequently be passed as a parameter to the indexer to obtain the assigned value at this position. - - The and methods are complements of this method. - + method is used to search for the first assigned character between two specified positions, inclusive, using the specified search direction. The result can subsequently be passed as a parameter to the indexer to obtain the assigned value at this position. + + The and methods are complements of this method. + ]]> @@ -1642,13 +1642,13 @@ Returns the position of the first editable position after the specified position using the specified search direction. If successful, an representing the zero-based position of the first editable position encountered; otherwise . - method is used to search for the next assigned or unassigned editable position in the formatted string after the specified position. - - The method is the complement of this method. - + method is used to search for the next assigned or unassigned editable position in the formatted string after the specified position. + + The method is the complement of this method. + ]]> @@ -1707,13 +1707,13 @@ Returns the position of the first editable position between the specified positions using the specified search direction. If successful, an representing the zero-based position of the first editable position encountered; otherwise . - method is used to search for the first editable character between two specified positions, inclusive, using the specified search direction. The result can subsequently be passed as a parameter to the indexer to obtain the assigned value at this position. - - The method is the complement of this method. - + method is used to search for the first editable character between two specified positions, inclusive, using the specified search direction. The result can subsequently be passed as a parameter to the indexer to obtain the assigned value at this position. + + The method is the complement of this method. + ]]> @@ -1770,13 +1770,13 @@ Returns the position of the first non-editable position after the specified position using the specified search direction. If successful, an representing the zero-based position of the first literal position encountered; otherwise . - method is used to search for the next literal character in the formatted string after the specified position. The result can subsequently be passed as a parameter to the indexer to obtain the literal value at this position. - - The method is the complement of this method. - + method is used to search for the next literal character in the formatted string after the specified position. The result can subsequently be passed as a parameter to the indexer to obtain the literal value at this position. + + The method is the complement of this method. + ]]> @@ -1835,13 +1835,13 @@ Returns the position of the first non-editable position between the specified positions using the specified search direction. If successful, an representing the zero-based position of the first literal position encountered; otherwise . - method is used to search for the first literal character between two specified positions, inclusive, using the specified search direction. The result can subsequently be passed as a parameter to the indexer to obtain the literal value at this position. - - The method is the complement of this method. - + method is used to search for the first literal character between two specified positions, inclusive, using the specified search direction. The result can subsequently be passed as a parameter to the indexer to obtain the literal value at this position. + + The method is the complement of this method. + ]]> @@ -1898,15 +1898,15 @@ Returns the position of the first unassigned editable position after the specified position using the specified search direction. If successful, an representing the zero-based position of the first unassigned editable position encountered; otherwise . - method is used to search for the first unassigned character after a specified position and search direction. The prompt character should occupy this position. - - The and methods are complements of this method. - + method is used to search for the first unassigned character after a specified position and search direction. The prompt character should occupy this position. + + The and methods are complements of this method. + ]]> @@ -1965,15 +1965,15 @@ Returns the position of the first unassigned editable position between the specified positions using the specified search direction. If successful, an representing the zero-based position of the first unassigned editable position encountered; otherwise . - method is used to search for the first unassigned character between two specified positions, inclusive, using the specified search direction. The prompt character should occupy this position. - - The and methods are complements of this method. - + method is used to search for the first unassigned character between two specified positions, inclusive, using the specified search direction. The prompt character should occupy this position. + + The and methods are complements of this method. + ]]> @@ -2029,11 +2029,11 @@ if the specified value represents a success; otherwise, if it represents failure. - class contain a parameter of type that is used to output information about the operation of the method: , , , , , , , , and . The method interprets this value and returns a Boolean value that indicates whether the has signaled that the operation was a success or failure. - + class contain a parameter of type that is used to output information about the operation of the method: , , , , , , , , and . The method interprets this value and returns a Boolean value that indicates whether the has signaled that the operation was a success or failure. + ]]> @@ -2078,11 +2078,11 @@ if literals are included; otherwise, . The default is . - and properties will determine whether prompt and literal characters appear when calling the method. By setting both of these properties to `false`, the parsed string will represent only the characters entered by the user. - + and properties will determine whether prompt and literal characters appear when calling the method. By setting both of these properties to `false`, the parsed string will represent only the characters entered by the user. + ]]> @@ -2131,11 +2131,11 @@ if the prompt character is used to represent the positions where no user input was provided; otherwise, . The default is . - and properties will determine whether prompt and literal characters appear when calling the method. By setting both of these properties to `false`, the parsed string will represent only the characters entered by the user. - + and properties will determine whether prompt and literal characters appear when calling the method. By setting both of these properties to `false`, the parsed string will represent only the characters entered by the user. + ]]> @@ -2197,23 +2197,23 @@ if the insertion was successful; otherwise, . - method inserts a character into the first edit position at or beyond that specified by the `pos` parameter. This method will shift all existing characters after the insertion point over by one position to make room for the inserted `input` character. If one of the following errors occurs, the insertion is not performed, and the method returns `false`. - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- An editable character was not found in the formatted string at or beyond the specified position, `pos`. - -- The insertion character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. - -- There are no available positions to the right of the insertion point, so that existing characters cannot be shifted. - -- Shifting the existing characters would produce a violation of the mask. - - An empty `input` string will cause no change in the formatted string, but will return `true`. - + method inserts a character into the first edit position at or beyond that specified by the `pos` parameter. This method will shift all existing characters after the insertion point over by one position to make room for the inserted `input` character. If one of the following errors occurs, the insertion is not performed, and the method returns `false`. + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- An editable character was not found in the formatted string at or beyond the specified position, `pos`. + +- The insertion character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. + +- There are no available positions to the right of the insertion point, so that existing characters cannot be shifted. + +- Shifting the existing characters would produce a violation of the mask. + + An empty `input` string will cause no change in the formatted string, but will return `true`. + ]]> @@ -2271,23 +2271,23 @@ if the insertion was successful; otherwise, . - method inserts each character from the `input` string into the edit positions located at position `pos` and beyond. This method will shift all existing characters after the insertion point over by one position for each inserted character. If one of the following errors occurs, no insertion is performed, and the method returns `false`. - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- Not enough editable characters exist in the formatted string at or beyond the specified position, `pos`, to insert all of the characters from the `input` string. - -- One or more of the insertion characters are not a valid input character because they are not printable or do not match their corresponding mask element. - -- There are not enough available positions to the right of the insertion point, so that existing characters cannot be shifted. - -- Shifting the existing characters would produce a violation of the mask. Note that this shifting occurs during the insertion of each individual character. - - An empty `input` string will cause no change in the formatted string, but will return `true`. - + method inserts each character from the `input` string into the edit positions located at position `pos` and beyond. This method will shift all existing characters after the insertion point over by one position for each inserted character. If one of the following errors occurs, no insertion is performed, and the method returns `false`. + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- Not enough editable characters exist in the formatted string at or beyond the specified position, `pos`, to insert all of the characters from the `input` string. + +- One or more of the insertion characters are not a valid input character because they are not printable or do not match their corresponding mask element. + +- There are not enough available positions to the right of the insertion point, so that existing characters cannot be shifted. + +- Shifting the existing characters would produce a violation of the mask. Note that this shifting occurs during the insertion of each individual character. + + An empty `input` string will cause no change in the formatted string, but will return `true`. + ]]> The parameter is . @@ -2350,23 +2350,23 @@ if the insertion was successful; otherwise, . - method inserts a character into the first edit position at or beyond that specified by the `pos` parameter. This method will shift all existing characters after the insertion point over by one position to make room for the inserted `input` character. If one of the following errors occurs, the insertion is not performed, and the method returns `false`. - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- An editable character was not found in the formatted string at or beyond the specified position, `pos`. - -- The insertion character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. - -- There are no available positions to the right of the insertion point, so that existing characters cannot be shifted. - -- Shifting the existing characters would produce a violation of the mask. - - An empty `input` string will cause no change in the formatted string, but will return `true`. - + method inserts a character into the first edit position at or beyond that specified by the `pos` parameter. This method will shift all existing characters after the insertion point over by one position to make room for the inserted `input` character. If one of the following errors occurs, the insertion is not performed, and the method returns `false`. + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- An editable character was not found in the formatted string at or beyond the specified position, `pos`. + +- The insertion character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. + +- There are no available positions to the right of the insertion point, so that existing characters cannot be shifted. + +- Shifting the existing characters would produce a violation of the mask. + + An empty `input` string will cause no change in the formatted string, but will return `true`. + ]]> @@ -2428,23 +2428,23 @@ if the insertion was successful; otherwise, . - method inserts each character from the `input` string into the edit positions located at position `pos` and beyond. This method will shift all existing characters after the insertion point over by one position for each inserted character. If one of the following errors occurs, no insertion is performed, and the method returns `false`. - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- Not enough editable characters exist in the formatted string at or beyond the specified position, `pos`, to insert all of the characters from the `input` string. - -- One or more of the insertion characters are not a valid input character because they are not printable or do not match their corresponding mask element. - -- There are not enough available positions to the right of the insertion point, so that existing characters cannot be shifted. - -- Shifting the existing characters would produce a violation of the mask. Note that this shifting occurs during the insertion of each individual character. - - An empty `input` string will cause no change in the formatted string, but will return `true`. - + method inserts each character from the `input` string into the edit positions located at position `pos` and beyond. This method will shift all existing characters after the insertion point over by one position for each inserted character. If one of the following errors occurs, no insertion is performed, and the method returns `false`. + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- Not enough editable characters exist in the formatted string at or beyond the specified position, `pos`, to insert all of the characters from the `input` string. + +- One or more of the insertion characters are not a valid input character because they are not printable or do not match their corresponding mask element. + +- There are not enough available positions to the right of the insertion point, so that existing characters cannot be shifted. + +- Shifting the existing characters would produce a violation of the mask. Note that this shifting occurs during the insertion of each individual character. + + An empty `input` string will cause no change in the formatted string, but will return `true`. + ]]> The parameter is . @@ -2496,13 +2496,13 @@ Gets the upper bound of the range of invalid indexes. A value representing the largest invalid index, as determined by the provider implementation. For example, if the lowest valid index is 0, this property will return -1. - property is used to represent a result that is not valid for indexing operations, such as the method. - - When you use the provider or implement your own, you should use this property to decide if an index is invalid, rather than hard-coding knowledge of invalid values. - + property is used to represent a result that is not valid for indexing operations, such as the method. + + When you use the provider or implement your own, you should use this property to decide if an index is invalid, rather than hard-coding knowledge of invalid values. + ]]> @@ -2555,17 +2555,17 @@ if the specified position in the formatted string is editable and has not been assigned to yet; otherwise . - method returns `true` only if all of the following conditions are true: - -- The `pos` parameter is within the bounds of the formatted string; that is, its value is greater than or equal to zero and less than the of the formatted string. - -- The specified position is an editable character. - -- A character has not already been assigned to this position. - + method returns `true` only if all of the following conditions are true: + +- The `pos` parameter is within the bounds of the formatted string; that is, its value is greater than or equal to zero and less than the of the formatted string. + +- The specified position is an editable character. + +- A character has not already been assigned to this position. + ]]> @@ -2617,15 +2617,15 @@ if the specified position in the formatted string is editable; otherwise . - method returns `true` only if both of the following conditions are true: - -- The `pos` parameter is within the bounds of the formatted string; that is, its value is greater than or equal to zero and less than the of the formatted string. - -- The specified position is an editable character. - + method returns `true` only if both of the following conditions are true: + +- The `pos` parameter is within the bounds of the formatted string; that is, its value is greater than or equal to zero and less than the of the formatted string. + +- The specified position is an editable character. + ]]> @@ -2674,17 +2674,17 @@ if the input string is to be treated as a password string; otherwise, . The default is . - property to a non-`null` value. - -- Setting the property to `true`, which also sets the property to the value. - - is used by the and methods to determine whether to reveal the actual input characters or obscure them with . - + property to a non-`null` value. + +- Setting the property to `true`, which also sets the property to the value. + + is used by the and methods to determine whether to reveal the actual input characters or obscure them with . + ]]> @@ -2742,11 +2742,11 @@ if the specified character contains a valid input value; otherwise . - @@ -2807,11 +2807,11 @@ if the specified character contains a valid mask value; otherwise . - @@ -2862,11 +2862,11 @@ if the specified character contains a valid password value; otherwise . - @@ -2917,11 +2917,11 @@ Gets the element at the specified position in the formatted string. The at the specified position in the formatted string. - property is the standard indexer for the class. - + property is the standard indexer for the class. + ]]> @@ -2969,11 +2969,11 @@ Gets the index in the mask of the rightmost input character that has been assigned to the mask. If at least one input character has been assigned to the mask, an containing the index of rightmost assigned position; otherwise, if no position has been assigned, . - property represents the farthest edit position in the mask, relative to the origin, that has been assigned an input character. For languages read left-to-right (LTR), such as English, this is the rightmost assigned position; for languages read right-to-left (RTL), this would be the leftmost position. - + property represents the farthest edit position in the mask, relative to the origin, that has been assigned an input character. For languages read left-to-right (LTR), such as English, this is the rightmost assigned position; for languages read right-to-left (RTL), this would be the leftmost position. + ]]> @@ -3020,13 +3020,13 @@ Gets the length of the mask, absent any mask modifier characters. An containing the number of positions in the mask, excluding characters that modify mask input. - property represents the total number of characters in the mask, including both the literal and editable characters. The number of literal characters can be determined by subtracting the value of the from the . - - also describes the length of the formatted string, including input characters, literals, and prompt characters. - + property represents the total number of characters in the mask, including both the literal and editable characters. The number of literal characters can be determined by subtracting the value of the from the . + + also describes the length of the formatted string, including input characters, literals, and prompt characters. + ]]> @@ -3078,11 +3078,11 @@ Gets the input mask. A containing the full mask. - property is set in the constructor. This mask must contain only valid characters as defined by the masking language. - + property is set in the constructor. This mask must contain only valid characters as defined by the masking language. + ]]> @@ -3133,13 +3133,13 @@ if all required input has been entered into the mask; otherwise, . - property checks only required input elements. To determine whether all required and optional input elements have been entered, use the property of the class instead. - - The current value of the property determines which formatting elements are considered required and which are optional. - + property checks only required input elements. To determine whether all required and optional input elements have been entered, use the property of the class instead. + + The current value of the property determines which formatting elements are considered required and which are optional. + ]]> @@ -3188,11 +3188,11 @@ if all required and optional inputs have been entered; otherwise, . - property instead. The current value of the property determines which formatting elements are considered required and which are optional. - + property instead. The current value of the property determines which formatting elements are considered required and which are optional. + ]]> @@ -3246,11 +3246,11 @@ Gets or sets the character to be substituted for the actual input characters. The value used as the password character. - property is set to a non-`null` character, output methods such as and will obscure the input characters with the specified password character. Setting this property to `null` will disable password protection functionality. - + property is set to a non-`null` character, output methods such as and will obscure the input characters with the specified password character. Setting this property to `null` will disable password protection functionality. + ]]> The password character specified when setting this property is the same as the current prompt character, . The two are required to be different. @@ -3307,11 +3307,11 @@ Gets or sets the character used to represent the absence of user input for all available edit positions. The character used to prompt the user for input. The default is an underscore (_). - property represents the prompt character that is used by the and methods to represent the current state of the formatted input string. A prompt character is placed in editable positions that have not yet been assigned an input value. Some versions of the method also depend on the value of the property. - + property represents the prompt character that is used by the and methods to represent the current state of the formatted input string. A prompt character is placed in editable positions that have not yet been assigned an input value. Some versions of the method also depend on the value of the property. + ]]> The prompt character specified when setting this property is the same as the current password character, . The two are required to be different. @@ -3375,13 +3375,13 @@ if the character was successfully removed; otherwise, . - method has no effect if there are no characters assigned to the mask yet. - - When the last assigned character is removed from the formatted string, the editable mask character is reset for that position, allowing subsequent input. - + method has no effect if there are no characters assigned to the mask yet. + + When the last assigned character is removed from the formatted string, the editable mask character is reset for that position, allowing subsequent input. + ]]> @@ -3438,13 +3438,13 @@ if the character was successfully removed; otherwise, . - method has no effect if there are no characters assigned to the mask yet. - - When the last assigned character is removed from the formatted string, the editable mask character is reset for that position, allowing subsequent input. - + method has no effect if there are no characters assigned to the mask yet. + + When the last assigned character is removed from the formatted string, the editable mask character is reset for that position, allowing subsequent input. + ]]> @@ -3515,17 +3515,17 @@ if the character was successfully removed; otherwise, . - method has no effect if there are no assigned characters at the removal position specified. Literal characters are not affected by this method. - - When a character is removed, the remaining higher-positioned characters in the mask will shift to the left to fill in the gap created by the removal. Vacated positions are reset for input. If movement of the characters is prevented by the mask definition, no removal occurs, and returns `false`. - - This method call is exactly equivalent to the following call to the overloaded version: - - `RemoveAt(pos, pos);` - + method has no effect if there are no assigned characters at the removal position specified. Literal characters are not affected by this method. + + When a character is removed, the remaining higher-positioned characters in the mask will shift to the left to fill in the gap created by the removal. Vacated positions are reset for input. If movement of the characters is prevented by the mask definition, no removal occurs, and returns `false`. + + This method call is exactly equivalent to the following call to the overloaded version: + + `RemoveAt(pos, pos);` + ]]> @@ -3581,13 +3581,13 @@ if the character was successfully removed; otherwise, . - method has no effect if there are no assigned characters at the removal positions specified. - - When a character is removed, the remaining higher-positioned characters in the mask will shift to the left to fill in the gap created by the removal. Vacated positions are reset for input. If movement of the characters is prevented by the mask definition, no removal occurs, and returns `false`. - + method has no effect if there are no assigned characters at the removal positions specified. + + When a character is removed, the remaining higher-positioned characters in the mask will shift to the left to fill in the gap created by the removal. Vacated positions are reset for input. If movement of the characters is prevented by the mask definition, no removal occurs, and returns `false`. + ]]> @@ -3647,15 +3647,15 @@ if the character was successfully removed; otherwise, . - method has no effect if there are no assigned characters at the removal positions specified. - - When a character is removed, the remaining higher-positioned characters in the mask will shift to the left to fill in the gap created by the removal. Vacated positions are reset for input. If movement of the characters is prevented by the mask definition, no removal occurs, and returns `false`. - - This version of provides two additional output parameters to convey more information about the operation of the method. - + method has no effect if there are no assigned characters at the removal positions specified. + + When a character is removed, the remaining higher-positioned characters in the mask will shift to the left to fill in the gap created by the removal. Vacated positions are reset for input. If movement of the characters is prevented by the mask definition, no removal occurs, and returns `false`. + + This version of provides two additional output parameters to convey more information about the operation of the method. + ]]> @@ -3721,17 +3721,17 @@ if the character was successfully replaced; otherwise, . - method searches for the first editable position in the formatted string at or beyond the specified position, `pos`. If one is found, the value of the editable position is changed to the specified character, `input`. Any of the following conditions will result in an error that causes no replacement to be performed and a value of `false` to be returned: - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- An editable character was not found in the formatted string at or beyond the specified position, `pos`. - -- The replacement character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. - + method searches for the first editable position in the formatted string at or beyond the specified position, `pos`. If one is found, the value of the editable position is changed to the specified character, `input`. Any of the following conditions will result in an error that causes no replacement to be performed and a value of `false` to be returned: + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- An editable character was not found in the formatted string at or beyond the specified position, `pos`. + +- The replacement character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. + ]]> @@ -3789,19 +3789,19 @@ if all the characters were successfully replaced; otherwise, . - method searches for the first editable position at or beyond the specified position, `pos`. Operating under the assumption that there are enough editable positions after this point, the existing character values are replaced one-by-one with the contents of the replacement string parameter, `input`. - - The following conditions are considered errors. When an error occurs, no replacement occurs and returns `false`. - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- There are not enough editable positions in the formatted string to hold the contents of the replacement string. - -- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. - + method searches for the first editable position at or beyond the specified position, `pos`. Operating under the assumption that there are enough editable positions after this point, the existing character values are replaced one-by-one with the contents of the replacement string parameter, `input`. + + The following conditions are considered errors. When an error occurs, no replacement occurs and returns `false`. + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- There are not enough editable positions in the formatted string to hold the contents of the replacement string. + +- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. + ]]> The parameter is . @@ -3863,19 +3863,19 @@ if the character was successfully replaced; otherwise, . - method searches for the first editable position in the formatted string at or beyond the specified position, `pos`. If one is found, the value of the editable position is changed to the specified character, `input`. Any of the following conditions will result in an error condition that causes no replacement to be performed and a value of `false` to be returned: - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- An editable character was not found in the formatted string at or beyond the specified position, `pos`. - -- The replacement character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. - - In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. - + method searches for the first editable position in the formatted string at or beyond the specified position, `pos`. If one is found, the value of the editable position is changed to the specified character, `input`. Any of the following conditions will result in an error condition that causes no replacement to be performed and a value of `false` to be returned: + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- An editable character was not found in the formatted string at or beyond the specified position, `pos`. + +- The replacement character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. + + In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. + ]]> @@ -3936,21 +3936,21 @@ if all the characters were successfully replaced; otherwise, . - method searches for the first editable position at or beyond the specified position, `pos`. Operating on the assumption that there are enough editable positions after this point, the existing character values are replaced one-by-one with the contents of the replacement string parameter, `input`. - - The following conditions are considered errors. When an error occurs, no replacement occurs and returns `false`. - -- The `pos` parameter is less than zero or greater than the of the formatted string. - -- There are not enough editable positions in the formatted string to hold the contents of the replacement string. - -- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. - - In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. - + method searches for the first editable position at or beyond the specified position, `pos`. Operating on the assumption that there are enough editable positions after this point, the existing character values are replaced one-by-one with the contents of the replacement string parameter, `input`. + + The following conditions are considered errors. When an error occurs, no replacement occurs and returns `false`. + +- The `pos` parameter is less than zero or greater than the of the formatted string. + +- There are not enough editable positions in the formatted string to hold the contents of the replacement string. + +- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. + + In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. + ]]> @@ -4013,19 +4013,19 @@ if the character was successfully replaced; otherwise, . - method searches for the first editable position in the formatted string between the specified starting and ending positions. If one is found, the value of the editable position is changed to the specified character, `input`. Any of the following conditions will result in an error condition that causes no replacement to be performed and a value of `false` to be returned: - -- The `startPos` or `endPos` parameters point before the start of the formatted string or beyond its end. - -- An editable character was not found in the specified interval. - -- The replacement character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. - - In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. - + method searches for the first editable position in the formatted string between the specified starting and ending positions. If one is found, the value of the editable position is changed to the specified character, `input`. Any of the following conditions will result in an error condition that causes no replacement to be performed and a value of `false` to be returned: + +- The `startPos` or `endPos` parameters point before the start of the formatted string or beyond its end. + +- An editable character was not found in the specified interval. + +- The replacement character, `input`, is not a valid input character because it is not printable or does not match its corresponding mask element. + + In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. + ]]> @@ -4088,21 +4088,21 @@ if all the characters were successfully replaced; otherwise, . - method searches for the first editable position in the formatted string between the specified starting and ending positions. Operating on the assumption that there are enough editable positions after this point, the existing character values are replaced one-by-one with the contents of the replacement string parameter, `input`. - - The following conditions are considered errors. When an error occurs, no replacement occurs and returns `false`. - -- The `startPos` or `endPos` parameters point before the start of the formatted string or beyond its end. - -- There are not enough editable positions in the formatted string to hold the contents of the replacement string. - -- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. - - In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. - + method searches for the first editable position in the formatted string between the specified starting and ending positions. Operating on the assumption that there are enough editable positions after this point, the existing character values are replaced one-by-one with the contents of the replacement string parameter, `input`. + + The following conditions are considered errors. When an error occurs, no replacement occurs and returns `false`. + +- The `startPos` or `endPos` parameters point before the start of the formatted string or beyond its end. + +- There are not enough editable positions in the formatted string to hold the contents of the replacement string. + +- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. + + In addition to the return value, this method has two output parameters to supply additional information about the replacement operation. + ]]> @@ -4153,20 +4153,20 @@ if the prompt character entered as input causes the current editable position in the mask to be reset; otherwise, to indicate that the prompt character is to be processed as a normal input character. The default is . - can treat two categories of characters, paces and prompt characters, in a special manner. Normally, each input character will be tested against the mask and either accepted or rejected. Operating on the assumption that the property is set to a value other than `null`, then setting the property to `true` will result in special processing for the prompt character. When a prompt character is added, it causes the current mask character position to be cleared and the current position to be advanced to the next editable character. - - takes precedence over the property as described in the following table. - -|||Resulting behavior| -|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------| -|`true`|`true`|The prompt character can be added and it causes the current mask position to be reset. The default.| -|`true`|`false`|The prompt character can be added and it causes the current mask position to be reset.| -|`false`|`true`|The prompt character is processed as a normal input character.| -|`false`|`false`|The prompt character is not valid and methods attempting to add the character will fail.| - + can treat two categories of characters, paces and prompt characters, in a special manner. Normally, each input character will be tested against the mask and either accepted or rejected. Operating on the assumption that the property is set to a value other than `null`, then setting the property to `true` will result in special processing for the prompt character. When a prompt character is added, it causes the current mask character position to be cleared and the current position to be advanced to the next editable character. + + takes precedence over the property as described in the following table. + +|||Resulting behavior| +|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------| +|`true`|`true`|The prompt character can be added and it causes the current mask position to be reset. The default.| +|`true`|`false`|The prompt character can be added and it causes the current mask position to be reset.| +|`false`|`true`|The prompt character is processed as a normal input character.| +|`false`|`false`|The prompt character is not valid and methods attempting to add the character will fail.| + ]]> @@ -4218,13 +4218,13 @@ if the space input character causes the current editable position in the mask to be reset; otherwise, to indicate that it is to be processed as a normal input character. The default is . - can treat two categories of characters, spaces and prompt characters, in a special manner. Normally, each input character will be tested against the mask and either accepted or rejected. Setting the property to `true` will result in the current mask character position being cleared and the current position being advanced to the next editable character. - - is useful when assigning text that was saved excluding the prompt, where the prompt is replaced with a space. Before restoring such a string, setting to `true` will reset the prompt characters at the positions occupied by spaces in the input string. - + can treat two categories of characters, spaces and prompt characters, in a special manner. Normally, each input character will be tested against the mask and either accepted or rejected. Setting the property to `true` will result in the current mask character position being cleared and the current position being advanced to the next editable character. + + is useful when assigning text that was saved excluding the prompt, where the prompt is replaced with a space. Before restoring such a string, setting to `true` will reset the prompt characters at the positions occupied by spaces in the input string. + ]]> @@ -4286,17 +4286,17 @@ if all the characters were successfully set; otherwise, . - method clears the existing contents of the formatted string and then applies the mask against the `input` string to update the contents of the formatted string. - - The following conditions are considered errors. When an error occurs, the formatted string remains unaltered and returns `false`. - -- There are not enough editable positions in the formatted string to hold the contents of the replacement string. - -- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. - + method clears the existing contents of the formatted string and then applies the mask against the `input` string to update the contents of the formatted string. + + The following conditions are considered errors. When an error occurs, the formatted string remains unaltered and returns `false`. + +- There are not enough editable positions in the formatted string to hold the contents of the replacement string. + +- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. + ]]> The parameter is . @@ -4356,19 +4356,19 @@ if all the characters were successfully set; otherwise, . - method clears the existing contents of the formatted string and then applies the mask against the `input` string to update the contents of the formatted string. - - The following conditions are considered errors. When an error occurs, the formatted string remains unaltered and returns `false`. - -- There are not enough editable positions in the formatted string to hold the contents of the replacement string. - -- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. - - This version of provides two additional output parameters to convey more information about the operation of the method. - + method clears the existing contents of the formatted string and then applies the mask against the `input` string to update the contents of the formatted string. + + The following conditions are considered errors. When an error occurs, the formatted string remains unaltered and returns `false`. + +- There are not enough editable positions in the formatted string to hold the contents of the replacement string. + +- One of the replacement character values is not valid because it is not printable or does not match its corresponding mask element. + + This version of provides two additional output parameters to convey more information about the operation of the method. + ]]> The parameter is . @@ -4420,15 +4420,15 @@ to allow literals to be added back; otherwise, to not allow the user to overwrite literal characters. The default is . - property determines the result. - -- If this property is `true`, it is valid to overwrite a literal with the same value when adding input characters. For example, a forward slash character value, `'/'`, could be added to the third position of the mask `"00/00/000"`. - -- If this property is `false`, it is not valid to assign any value to a mask position occupied by a literal character. - + property determines the result. + +- If this property is `true`, it is valid to overwrite a literal with the same value when adding input characters. For example, a forward slash character value, `'/'`, could be added to the third position of the mask `"00/00/000"`. + +- If this property is `false`, it is not valid to assign any value to a mask position occupied by a literal character. + ]]> @@ -4477,13 +4477,13 @@ Returns the formatted string in a displayable form. The formatted that includes prompts and mask literals. - method will always include prompt and literal characters in the return value, regardless of the value of the or properties. This method will always display password characters if the property is set to a character value other than `null`. - - is commonly used to obtain the string to display in associated user interface elements, such as . - + method will always include prompt and literal characters in the return value, regardless of the value of the or properties. This method will always display password characters if the property is set to a character value other than `null`. + + is commonly used to obtain the string to display in associated user interface elements, such as . + ]]> @@ -4542,14 +4542,14 @@ Returns the formatted string that includes all the assigned character values. The formatted that includes all the assigned character values. - method includes prompts and literals according to the current values of the and properties, respectively. It will always return the original input characters, ignoring the value of the property. - + method includes prompts and literals according to the current values of the and properties, respectively. It will always return the original input characters, ignoring the value of the property. + > [!IMPORTANT] -> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. - +> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. + ]]> @@ -4602,14 +4602,14 @@ Returns the formatted string, optionally including password characters. The formatted that includes literals, prompts, and optionally password characters. - method includes prompts and literals according to the current values of the and properties, respectively. If the `ignorePasswordChar` parameter is `true`, it will return the original input characters, ignoring the value of the property. If this parameter is `false`, it will use the password character to obscure editable user input if the property is set to a value other than `null`. - + method includes prompts and literals according to the current values of the and properties, respectively. If the `ignorePasswordChar` parameter is `true`, it will return the original input characters, ignoring the value of the property. If this parameter is `false`, it will use the password character to obscure editable user input if the property is set to a value other than `null`. + > [!IMPORTANT] -> Because this method potentially reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. - +> Because this method potentially reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. + ]]> @@ -4665,14 +4665,14 @@ Returns the formatted string, optionally including prompt and literal characters. The formatted that includes all the assigned character values and optionally includes literals and prompts. - method includes prompts and literals according to the values of the `IncludePrompt` and `IncludeLiterals` parameters, respectively. Notice that these parameters override the values of the properties. This method will always return the original input characters, ignoring the value of the property. - + method includes prompts and literals according to the values of the `IncludePrompt` and `IncludeLiterals` parameters, respectively. Notice that these parameters override the values of the properties. This method will always return the original input characters, ignoring the value of the property. + > [!IMPORTANT] -> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. - +> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. + ]]> @@ -4727,24 +4727,24 @@ Returns a substring of the formatted string. If successful, a substring of the formatted , which includes all the assigned character values; otherwise the string. - method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The returned string includes prompts and literals according to the current values of the and properties, respectively. The return string will contain the original input characters; the property is always ignored. - + method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The returned string includes prompts and literals according to the current values of the and properties, respectively. The return string will contain the original input characters; the property is always ignored. + > [!IMPORTANT] -> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. - - performs the following actions when there are discrepancies in the input parameters: - -- If `startPos` is less than zero, the starting position is set to zero. - -- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. - -- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. - -- If `length` is less than or equal to zero, the string is returned. - +> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. + + performs the following actions when there are discrepancies in the input parameters: + +- If `startPos` is less than zero, the starting position is set to zero. + +- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. + +- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. + +- If `length` is less than or equal to zero, the string is returned. + ]]> @@ -4801,24 +4801,24 @@ Returns a substring of the formatted string, optionally including password characters. If successful, a substring of the formatted , which includes literals, prompts, and optionally password characters; otherwise the string. - method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The returned string includes prompts and literals according to the current values of the and properties, respectively. If the `ignorePasswordChar` parameter is `true`, it will return the original input characters, ignoring the value of the property. If this parameter is `false`, it will use the password character to obscure editable user input if the property is set to a value other than `null`. - + method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The returned string includes prompts and literals according to the current values of the and properties, respectively. If the `ignorePasswordChar` parameter is `true`, it will return the original input characters, ignoring the value of the property. If this parameter is `false`, it will use the password character to obscure editable user input if the property is set to a value other than `null`. + > [!IMPORTANT] -> Because this method potentially reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. - - performs the following actions when there are discrepancies in the input parameters: - -- If `startPos` is less than zero, the starting position is set to zero. - -- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. - -- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. - -- If `length` is less than or equal to zero, the string is returned. - +> Because this method potentially reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. + + performs the following actions when there are discrepancies in the input parameters: + +- If `startPos` is less than zero, the starting position is set to zero. + +- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. + +- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. + +- If `length` is less than or equal to zero, the string is returned. + ]]> @@ -4884,24 +4884,24 @@ Returns a substring of the formatted string, optionally including prompt and literal characters. If successful, a substring of the formatted , which includes all the assigned character values and optionally includes literals and prompts; otherwise the string. - method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The return string includes prompts and literals according to the values of the `IncludePrompt` and `IncludeLiterals` parameters, respectively. Notice that these parameters override the values of the properties. This method will always return the original input characters, ignoring the value of the property. - + method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The return string includes prompts and literals according to the values of the `IncludePrompt` and `IncludeLiterals` parameters, respectively. Notice that these parameters override the values of the properties. This method will always return the original input characters, ignoring the value of the property. + > [!IMPORTANT] -> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. - - performs the following actions when there are discrepancies in the input parameters: - -- If `startPos` is less than zero, the starting position is set to zero. - -- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. - -- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. - -- If `length` is less than or equal to zero, the string is returned. - +> Because this method reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. + + performs the following actions when there are discrepancies in the input parameters: + +- If `startPos` is less than zero, the starting position is set to zero. + +- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. + +- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. + +- If `length` is less than or equal to zero, the string is returned. + ]]> @@ -4964,24 +4964,24 @@ Returns a substring of the formatted string, optionally including prompt, literal, and password characters. If successful, a substring of the formatted , which includes all the assigned character values and optionally includes literals, prompts, and password characters; otherwise the string. - method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The return string includes prompts and literals according to the values of the `IncludePrompt` and `IncludeLiterals` parameters, respectively. Notice that these parameters override the values of the and properties. If the `ignorePasswordChar` parameter is `true`, it will return the original input characters, ignoring the value of the property. If this parameter is `false`, it will use the password character to obscure editable user input if the property is set to a value other than `null`. - + method returns a substring of the formatted string, starting at the position `startPos` and including the subsequent number of characters specified by the `length` parameter. The return string includes prompts and literals according to the values of the `IncludePrompt` and `IncludeLiterals` parameters, respectively. Notice that these parameters override the values of the and properties. If the `ignorePasswordChar` parameter is `true`, it will return the original input characters, ignoring the value of the property. If this parameter is `false`, it will use the password character to obscure editable user input if the property is set to a value other than `null`. + > [!IMPORTANT] -> Because this method potentially reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. - - performs the following actions when there are discrepancies in the input parameters: - -- If `startPos` is less than zero, the starting position is set to zero. - -- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. - -- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. - -- If `length` is less than or equal to zero, the string is returned. - +> Because this method potentially reveals information that is usually protected in the user interface by password characters, it should be used with extreme caution to avoid accidentally revealing sensitive user data. + + performs the following actions when there are discrepancies in the input parameters: + +- If `startPos` is less than zero, the starting position is set to zero. + +- If `startPos` is greater than or equal to the actual of the formatted string, the string is returned. + +- If `length` is greater than the remaining number of characters past the starting position, only the remaining characters are returned. + +- If `length` is less than or equal to zero, the string is returned. + ]]> @@ -5038,21 +5038,21 @@ if the specified character is valid for the specified position; otherwise, . - method tests whether a single character value represents valid input at the specified position in the formatted string. This method will return `false` for the following reasons: - -- The `pos` parameter is less than zero or greater than the of the . - -- The character `input` is not a valid input character, as determined by the method. - -- The `input` is not compatible with the mask element at the specified position, `pos`. - - The last condition may depend on the current value of the , , , and properties. - - To test an entire input string against the mask, use one of the methods instead. - + method tests whether a single character value represents valid input at the specified position in the formatted string. This method will return `false` for the following reasons: + +- The `pos` parameter is less than zero or greater than the of the . + +- The character `input` is not a valid input character, as determined by the method. + +- The `input` is not compatible with the mask element at the specified position, `pos`. + + The last condition may depend on the current value of the , , , and properties. + + To test an entire input string against the mask, use one of the methods instead. + ]]> @@ -5107,19 +5107,19 @@ if the specified character would be escaped at the specified position; otherwise, . - property is `true`. - -- Input characters are escaped if they have the same value as the literal in the mask, and if the property is `true`. - -- Space characters are escaped if the property is `true`. - - The method will also return `false` if the `pos` parameter is less than zero or greater than the of the . - + property is `true`. + +- Input characters are escaped if they have the same value as the literal in the mask, and if the property is `true`. + +- Space characters are escaped if the property is `true`. + + The method will also return `false` if the `pos` parameter is less than zero or greater than the of the . + ]]> @@ -5183,11 +5183,11 @@ if the specified string represents valid input; otherwise, . - applies the `input` string against the mask, without actually changing the formatted string, to test whether `input` would be valid in a corresponding operation. This method also returns `true` if input is `null` or has zero length. - + applies the `input` string against the mask, without actually changing the formatted string, to test whether `input` would be valid in a corresponding operation. This method also returns `true` if input is `null` or has zero length. + ]]> @@ -5243,13 +5243,13 @@ if the specified string represents valid input; otherwise, . - applies the `input` string against the mask, without actually changing the formatted string, to test whether `input` would be valid in a corresponding operation. This method also returns `true` if input is `null` or has zero length. - - This version of provides two additional output parameters to convey more information about the operation of the method. - + applies the `input` string against the mask, without actually changing the formatted string, to test whether `input` would be valid in a corresponding operation. This method also returns `true` if input is `null` or has zero length. + + This version of provides two additional output parameters to convey more information about the operation of the method. + ]]> diff --git a/xml/System.ComponentModel/MergablePropertyAttribute.xml b/xml/System.ComponentModel/MergablePropertyAttribute.xml index 37a28eb09a6..2c1d452efba 100644 --- a/xml/System.ComponentModel/MergablePropertyAttribute.xml +++ b/xml/System.ComponentModel/MergablePropertyAttribute.xml @@ -55,39 +55,39 @@ Specifies that this property can be combined with properties belonging to other objects in a Properties window. - set to `true` can be combined with properties belonging to other objects in a Properties window. Properties that are marked with the set to `false` must be displayed separately. The default is `true`. - + set to `true` can be combined with properties belonging to other objects in a Properties window. Properties that are marked with the set to `false` must be displayed separately. The default is `true`. + > [!NOTE] -> When you mark a property with the set to `true`, the value of this attribute is set to the constant member . For a property marked with the property set to `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . - - For more information, see [Attributes](/dotnet/standard/attributes/). - - - -## Examples - The following example marks a property as appropriate to merge. - +> When you mark a property with the set to `true`, the value of this attribute is set to the constant member . For a property marked with the property set to `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . + + For more information, see [Attributes](/dotnet/standard/attributes/). + + + +## Examples + The following example marks a property as appropriate to merge. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/MergablePropertyAttribute/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/VB/source.vb" id="Snippet1"::: - - The next example shows how to check the value of the for `MyProperty`. First the code gets a with all the properties for the object. Next it indexes into the to get `MyProperty`. Then it returns the attributes for this property and saves them in the attributes variable. - - The example presents two different ways of checking the value of the . In the second code fragment, the example calls the method with a `static` value. In the last code fragment, the example uses the property to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/VB/source.vb" id="Snippet1"::: + + The next example shows how to check the value of the for `MyProperty`. First the code gets a with all the properties for the object. Next it indexes into the to get `MyProperty`. Then it returns the attributes for this property and saves them in the attributes variable. + + The example presents two different ways of checking the value of the . In the second code fragment, the example calls the method with a `static` value. In the last code fragment, the example uses the property to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/MergablePropertyAttribute/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/VB/source.vb" id="Snippet2"::: - - If you marked a class with the , use the following code to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/VB/source.vb" id="Snippet2"::: + + If you marked a class with the , use the following code to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/CPP/source.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/MergablePropertyAttribute/Overview/source.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/VB/source.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute Example/VB/source.vb" id="Snippet3"::: + ]]> @@ -143,15 +143,15 @@ if this property can be combined with properties belonging to other objects in a Properties window; otherwise, . Initializes a new instance of the class. - , sets its value to , and binds it to the property. - + , sets its value to , and binds it to the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic MergablePropertyAttribute.MergablePropertyAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/MergablePropertyAttribute/.ctor/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute.MergablePropertyAttribute Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute.MergablePropertyAttribute Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -204,23 +204,23 @@ if this property can be combined with properties belonging to other objects in a Properties window; otherwise, . - with all the properties for the object. - -- Indexing into the to get `MyProperty`. - -- Saving the attributes for this property in the attributes variable. - - Then the code sets `myAttribute` to the value of the in the and checks whether the property is appropriate to merge. - + with all the properties for the object. + +- Indexing into the to get `MyProperty`. + +- Saving the attributes for this property in the attributes variable. + + Then the code sets `myAttribute` to the value of the in the and checks whether the property is appropriate to merge. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic MergablePropertyAttribute.AllowMerge Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/MergablePropertyAttribute/AllowMerge/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute.AllowMerge Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic MergablePropertyAttribute.AllowMerge Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -269,11 +269,11 @@ Specifies the default value, which is , that is a property can be combined with properties belonging to other objects in a Properties window. This field is read-only. - . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -461,11 +461,11 @@ Specifies that a property cannot be combined with properties belonging to other objects in a Properties window. This field is read-only. - set to `false`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + set to `false`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -511,13 +511,13 @@ Specifies that a property can be combined with properties belonging to other objects in a Properties window. This field is read-only. - set to `true`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + set to `true`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> diff --git a/xml/System.ComponentModel/NestedContainer.xml b/xml/System.ComponentModel/NestedContainer.xml index c221f4396e1..e6783eb63bd 100644 --- a/xml/System.ComponentModel/NestedContainer.xml +++ b/xml/System.ComponentModel/NestedContainer.xml @@ -71,13 +71,13 @@ ## Remarks The class is a simple implementation of the interface, which defines a component that logically contains zero or more other components and is owned by a parent component. The behavior of nested containers differs from a standard in a number of ways, including the following: -- Site characteristics such as and are routed through the owning component's site. +- Site characteristics such as and are routed through the owning component's site. -- The site's property is a qualified name that includes the owning component's name followed by a period (.) and the child component's name. +- The site's property is a qualified name that includes the owning component's name followed by a period (.) and the child component's name. - provides support for the as a service. -- When the owning component is disposed, the container is disposed as well. +- When the owning component is disposed, the container is disposed as well. In addition, designers treat nested containers differently. A designer host is only interested in one container - the one associated with the host. Therefore, component add and remove events are not raised when a component is added to or removed from a nested container. However, because services flow through to the nested container, component change events are raised when a component in a nested container is changed. diff --git a/xml/System.ComponentModel/PropertyDescriptor.xml b/xml/System.ComponentModel/PropertyDescriptor.xml index ad7f1daba64..17d6c4b1bc4 100644 --- a/xml/System.ComponentModel/PropertyDescriptor.xml +++ b/xml/System.ComponentModel/PropertyDescriptor.xml @@ -57,60 +57,60 @@ Provides an abstraction of a property on a class. - provides the following properties and methods: - -- contains the for this property. - -- indicates whether this property should be localized. - -- returns an editor of the specified type. - - also provides the following `abstract` properties and methods: - -- contains the type of component this property is bound to. - -- indicates whether this property is read-only. - -- gets the type of the property. - -- indicates whether resetting the component changes the value of the component. - -- returns the current value of the property on a component. - -- resets the value for this property of the component. - -- sets the value of the component to a different value. - -- indicates whether the value of this property needs to be persisted. - - Typically, the `abstract` members are implemented through reflection. For more information about reflection, see the topics in [Reflection](/dotnet/framework/reflection-and-codedom/reflection). - - - -## Examples - The following code example is built upon the example in the class. It prints the information (category, description, display name) of the text of a button in a text box. It assumes that `button1` and `textbox1` have been instantiated on a form. - + provides the following properties and methods: + +- contains the for this property. + +- indicates whether this property should be localized. + +- returns an editor of the specified type. + + also provides the following `abstract` properties and methods: + +- contains the type of component this property is bound to. + +- indicates whether this property is read-only. + +- gets the type of the property. + +- indicates whether resetting the component changes the value of the component. + +- returns the current value of the property on a component. + +- resets the value for this property of the component. + +- sets the value of the component to a different value. + +- indicates whether the value of this property needs to be persisted. + + Typically, the `abstract` members are implemented through reflection. For more information about reflection, see the topics in [Reflection](/dotnet/framework/reflection-and-codedom/reflection). + + + +## Examples + The following code example is built upon the example in the class. It prints the information (category, description, display name) of the text of a button in a text box. It assumes that `button1` and `textbox1` have been instantiated on a form. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/PropertyDescriptor/CPP/propertydescriptor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/PropertyDescriptor/Overview/propertydescriptor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/PropertyDescriptor/VB/propertydescriptor.vb" id="Snippet1"::: - - The following code example shows how to implement a custom property descriptor that provides a read-only wrapper around a property. The `SerializeReadOnlyPropertyDescriptor` is used in a custom designer to provide a read-only property descriptor for the control's property. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/PropertyDescriptor/VB/propertydescriptor.vb" id="Snippet1"::: + + The following code example shows how to implement a custom property descriptor that provides a read-only wrapper around a property. The `SerializeReadOnlyPropertyDescriptor` is used in a custom designer to provide a read-only property descriptor for the control's property. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/PropertyDescriptor/Overview/SerializeReadOnlyPropertyDescriptor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.PropertyDescriptor/VB/SerializeReadOnlyPropertyDescriptor.vb" id="Snippet1"::: - - The following code examples show how to use the `SerializeReadOnlyPropertyDescriptor` in a custom designer. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.PropertyDescriptor/VB/SerializeReadOnlyPropertyDescriptor.vb" id="Snippet1"::: + + The following code examples show how to use the `SerializeReadOnlyPropertyDescriptor` in a custom designer. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/PropertyDescriptor/Overview/DemoControlDesigner.cs" id="Snippet10"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.PropertyDescriptor/VB/DemoControlDesigner.vb" id="Snippet10"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.PropertyDescriptor/VB/DemoControlDesigner.vb" id="Snippet10"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/PropertyDescriptor/Overview/DemoControl.cs" id="Snippet100"::: -:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.PropertyDescriptor/VB/DemoControl.vb" id="Snippet100"::: - +:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.PropertyDescriptor/VB/DemoControl.vb" id="Snippet100"::: + ]]> @@ -233,11 +233,11 @@ An array containing the attributes you want to associate with the property. Initializes a new instance of the class with the name in the specified and the attributes in both the and the array. - array to the attributes in the . - + array to the attributes in the . + ]]> @@ -397,11 +397,11 @@ if resetting the component changes its value; otherwise, . - @@ -450,11 +450,11 @@ When overridden in a derived class, gets the type of the component this property is bound to. A that represents the type of component this property is bound to. When the or methods are invoked, the object specified might be an instance of this type. - @@ -594,13 +594,13 @@ Creates an instance of the specified type. A new instance of the type. - looks for a constructor that takes the specified type. If it finds a constructor, the type of the property is passed in. - - Converters and editors use this method to create versions of a component. This method enables a single component to be reused for more than one type. - + looks for a constructor that takes the specified type. If it finds a constructor, the type of the property is passed in. + + Converters and editors use this method to create versions of a component. This method enables a single component to be reused for more than one type. + ]]> @@ -704,11 +704,11 @@ An that lists the attributes in the parent class. Initially, this is empty. Adds the attributes of the to the specified list of attributes in the parent class. - @@ -774,23 +774,23 @@ Returns the default . A collection of property descriptor. - and objects. Filtering is defined by the following rules: - -- A object is treated as a wildcard; it matches any property that has the in its set of attributes. - -- If a property does not have an of the same class, the property will not be included in the returned array. - -- If the attribute is an instance of , the property must be an exact match to be included in the returned array. - -- If you specify an and it is the default property, it will be included in the returned array, even if there is no instance of in the property. - + and objects. Filtering is defined by the following rules: + +- A object is treated as a wildcard; it matches any property that has the in its set of attributes. + +- If a property does not have an of the same class, the property will not be included in the returned array. + +- If the attribute is an instance of , the property must be an exact match to be included in the returned array. + +- If you specify an and it is the default property, it will be included in the returned array, even if there is no instance of in the property. + ]]> @@ -854,23 +854,23 @@ Returns a using a specified array of attributes as a filter. A with the properties that match the specified attributes. - and objects. Filtering is defined by the following rules: - -- A object is treated as a wildcard; it matches any property that has the in its set of attributes. - -- If a property does not have an of the same class, the property will not be included in the returned array. - -- If the attribute is an instance of , the property must be an exact match to be included in the returned array. - -- If you specify an instance and it is the default property, it will be included in the returned array even if there is no instance of the in the property. - + and objects. Filtering is defined by the following rules: + +- A object is treated as a wildcard; it matches any property that has the in its set of attributes. + +- If a property does not have an of the same class, the property will not be included in the returned array. + +- If the attribute is an instance of , the property must be an exact match to be included in the returned array. + +- If you specify an instance and it is the default property, it will be included in the returned array even if there is no instance of the in the property. + ]]> @@ -934,23 +934,23 @@ Returns a for a given object. A with the properties for the specified component. - and objects. Filtering is defined by the following rules: - -- A object is treated as a wildcard; it matches any property that has the in its set of attributes. - -- If a property does not have an of the same class, the property will not be included in the returned array. - -- If the attribute is an instance of , the property must be an exact match to be included in the returned array. - -- If you specify an instance and it is the default property, it will be included in the returned array even if there is no instance of the in the property. - + and objects. Filtering is defined by the following rules: + +- A object is treated as a wildcard; it matches any property that has the in its set of attributes. + +- If a property does not have an of the same class, the property will not be included in the returned array. + +- If the attribute is an instance of , the property must be an exact match to be included in the returned array. + +- If you specify an instance and it is the default property, it will be included in the returned array even if there is no instance of the in the property. + ]]> @@ -1027,23 +1027,23 @@ Returns a for a given object using a specified array of attributes as a filter. A with the properties that match the specified attributes for the specified component. - and objects. Filtering is defined by the following rules: - -- A object is treated as a wildcard; it matches any property that has the in its set of attributes. - -- If a property does not have an of the same class, the property will not be included in the returned array. - -- If the attribute is an instance of , the property must be an exact match to be included in the returned array. - -- If you specify an instance and it is the default property, it will be included in the returned array even if there is no instance of the in the property. - - Generally, child properties should be returned by implementing the member of the returned from this property. - + and objects. Filtering is defined by the following rules: + +- A object is treated as a wildcard; it matches any property that has the in its set of attributes. + +- If a property does not have an of the same class, the property will not be included in the returned array. + +- If the attribute is an instance of , the property must be an exact match to be included in the returned array. + +- If you specify an instance and it is the default property, it will be included in the returned array even if there is no instance of the in the property. + + Generally, child properties should be returned by implementing the member of the returned from this property. + ]]> @@ -1211,11 +1211,11 @@ This method returns the object that should be used during invocation of members. The that should be used during invocation of members. - method may return a different value. - + method may return a different value. + ]]> @@ -1284,11 +1284,11 @@ Returns a type using its name. A that matches the given type name, or if a match cannot be found. - references. If it does not find the type in the assembly, it calls . - + references. If it does not find the type in the assembly, it calls . + ]]> @@ -1338,13 +1338,13 @@ When overridden in a derived class, gets the current value of the property on a component. The value of a property for a given component. - , and post-change method, , of the . - + , and post-change method, , of the . + ]]> @@ -1445,11 +1445,11 @@ if the member is marked with the set to ; otherwise, . - set to `true` and used in a visual designer, its values are saved in a resource file. If you mark a property with the attribute and then set the property in code, resource files are not used. - + set to `true` and used in a visual designer, its values are saved in a resource file. If you mark a property with the attribute and then set the property in code, resource files are not used. + ]]> @@ -1552,11 +1552,11 @@ An that contains the event data. Raises the ValueChanged event that you implemented. - @@ -1601,11 +1601,11 @@ When overridden in a derived class, gets the type of the property. A that represents the type of the property. - @@ -1702,33 +1702,33 @@ The component with the property value that is to be reset to the default value. When overridden in a derived class, resets the value for this property of the component to the default value. - for this property. - -3. There is a "ResetMyProperty" method that you have implemented, where "MyProperty" is the name of the property you pass to it. - - This method creates a automatically in the following order: - -1. The method calls the method to create a new to represent the changes. - -2. The method calls the method to indicate that the transaction has begun and the changes are about to occur. - -3. The method resets the property to the value determined by this method's checking order. - -4. The method calls the method to indicate that the changes have occurred. - -5. The method calls to indicate that the transaction is completed. - - The purpose of the transaction is to support `Undo` and `Redo` functionality. - + for this property. + +3. There is a "ResetMyProperty" method that you have implemented, where "MyProperty" is the name of the property you pass to it. + + This method creates a automatically in the following order: + +1. The method calls the method to create a new to represent the changes. + +2. The method calls the method to indicate that the transaction has begun and the changes are about to occur. + +3. The method resets the property to the value determined by this method's checking order. + +4. The method calls the method to indicate that the changes have occurred. + +5. The method calls to indicate that the transaction is completed. + + The purpose of the transaction is to support `Undo` and `Redo` functionality. + ]]> @@ -1827,25 +1827,25 @@ The new value. When overridden in a derived class, sets the value of the component to a different value. - automatically in the following order: - -1. The method calls the method to create a new to represent the changes. - -2. The method calls the method to indicate that the transaction has begun and the changes are about to occur. - -3. The method resets the property to the value determined by this method's checking order. - -4. The method calls the method to indicate that the changes have occurred. - -5. The method calls to indicate that the transaction is complete. - - The purpose of the transaction is to support `Undo` and `Redo` functionality. - + automatically in the following order: + +1. The method calls the method to create a new to represent the changes. + +2. The method calls the method to indicate that the transaction has begun and the changes are about to occur. + +3. The method resets the property to the value determined by this method's checking order. + +4. The method calls the method to indicate that the changes have occurred. + +5. The method calls to indicate that the transaction is complete. + + The purpose of the transaction is to support `Undo` and `Redo` functionality. + ]]> @@ -1899,16 +1899,16 @@ if the property should be persisted; otherwise, . - When overridden in a derived class, this method returns if the current value of the property is different from its default value. It looks for a default value by first looking for a . If the method finds this attribute, it compares the value of the attribute with the property's current value. If this method cannot find a , it looks for a "ShouldSerializeMyProperty" method that you need to implement. If it is found, invokes it. If this method cannot find a or a "ShouldSerializeMyProperty" method, it cannot create optimizations and it returns . - + Note: The class implements special serialization logic for inherited components. For more information, see . @@ -1954,11 +1954,11 @@ Note: The class if value change notifications may originate from outside the property descriptor; otherwise, . - property indicates whether value change notifications for this property may originate from outside the property descriptor, such as from the component itself, or whether notifications will only originate from direct calls made to the method. For example, the component may implement the interface, or may have an explicit `name.Changed` event for this property. - + property indicates whether value change notifications for this property may originate from outside the property descriptor, such as from the component itself, or whether notifications will only originate from direct calls made to the method. For example, the component may implement the interface, or may have an explicit `name.Changed` event for this property. + ]]> diff --git a/xml/System.ComponentModel/ReadOnlyAttribute.xml b/xml/System.ComponentModel/ReadOnlyAttribute.xml index 87befcad426..36892c37e64 100644 --- a/xml/System.ComponentModel/ReadOnlyAttribute.xml +++ b/xml/System.ComponentModel/ReadOnlyAttribute.xml @@ -55,39 +55,39 @@ Specifies whether the property this attribute is bound to is read-only or read/write. This class cannot be inherited. - set to `true` or that do not have a `Set` method cannot be changed. Members that do not have this attribute or that are marked with the set to `false` are read/write, and they can be changed. The default is . - + set to `true` or that do not have a `Set` method cannot be changed. Members that do not have this attribute or that are marked with the set to `false` are read/write, and they can be changed. The default is . + > [!IMPORTANT] -> The class enforces the in the design environment and at run time. When you mark a property with the set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . - - For more information, see [Attributes](/dotnet/standard/attributes/). - - - -## Examples - The following code example marks a property as read-only. - +> The class enforces the in the design environment and at run time. When you mark a property with the set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . + + For more information, see [Attributes](/dotnet/standard/attributes/). + + + +## Examples + The following code example marks a property as read-only. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ReadOnlyAttribute/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/VB/source.vb" id="Snippet1"::: - - The next code example shows how to check the value of the for `MyProperty`. First, the code gets a with all the properties for the object. Next, it indexes into the to get `MyProperty`. Then it returns the attributes for this property and saves them in the attributes variable. - - The example presents two different ways of checking the value of the . In the second code fragment, the example calls the method. In the last code fragment, the example uses the property to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/VB/source.vb" id="Snippet1"::: + + The next code example shows how to check the value of the for `MyProperty`. First, the code gets a with all the properties for the object. Next, it indexes into the to get `MyProperty`. Then it returns the attributes for this property and saves them in the attributes variable. + + The example presents two different ways of checking the value of the . In the second code fragment, the example calls the method. In the last code fragment, the example uses the property to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ReadOnlyAttribute/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/VB/source.vb" id="Snippet2"::: - - If you marked a class with the , use the following code example to check the value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/VB/source.vb" id="Snippet2"::: + + If you marked a class with the , use the following code example to check the value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/CPP/source.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ReadOnlyAttribute/Overview/source.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/VB/source.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute Example/VB/source.vb" id="Snippet3"::: + ]]> @@ -143,23 +143,23 @@ to show that the property this attribute is bound to is read-only; to show that the property is read/write. Initializes a new instance of the class. - set to `true` or that do not have a `Set` method cannot be changed. Members that do not have this attribute or that are marked with the set to `false` are read/write, and they can be changed. The default is . - + set to `true` or that do not have a `Set` method cannot be changed. Members that do not have this attribute or that are marked with the set to `false` are read/write, and they can be changed. The default is . + > [!NOTE] -> When you mark a property with the set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . - - - -## Examples - The following code example marks a property as read-only. This code creates a new , sets its value to , and binds it to the property. - +> When you mark a property with the set to `true`, the value of this attribute is set to the constant member . For a property marked with the set to `false`, the value is . Therefore, when you want to check the value of this attribute in your code, you must specify the attribute as or . + + + +## Examples + The following code example marks a property as read-only. This code creates a new , sets its value to , and binds it to the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic ReadOnlyAttribute.ReadOnlyAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ReadOnlyAttribute/.ctor/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute.ReadOnlyAttribute Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute.ReadOnlyAttribute Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -204,11 +204,11 @@ Specifies the default value for the , which is (that is, the property this attribute is bound to is read/write). This field is read-only. - . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -404,23 +404,23 @@ if the property this attribute is bound to is read-only; if the property is read/write. - with all the properties for the object. - -- Indexing into the to get `MyProperty`. - -- Saving the attributes for this property in the attributes variable. - - Then the code sets `myAttribute` to the value of the in the and checks whether the property is read-only. - + with all the properties for the object. + +- Indexing into the to get `MyProperty`. + +- Saving the attributes for this property in the attributes variable. + + Then the code sets `myAttribute` to the value of the in the and checks whether the property is read-only. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/Classic ReadOnlyAttribute.IsReadOnly Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ReadOnlyAttribute/IsReadOnly/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute.IsReadOnly Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/Classic ReadOnlyAttribute.IsReadOnly Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -469,13 +469,13 @@ Specifies that the property this attribute is bound to is read/write and can be modified. This field is read-only. - set to `false`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + set to `false`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> @@ -521,11 +521,11 @@ Specifies that the property this attribute is bound to is read-only and cannot be modified in the server explorer. This field is read-only. - set to `true`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . - + set to `true`, the value of this attribute is set to the constant member . Therefore, when you want to check whether the attribute is set to this value in your code, you must specify the attribute as . + ]]> diff --git a/xml/System.ComponentModel/TypeConverter.xml b/xml/System.ComponentModel/TypeConverter.xml index a11033c0b87..6f3d818081c 100644 --- a/xml/System.ComponentModel/TypeConverter.xml +++ b/xml/System.ComponentModel/TypeConverter.xml @@ -107,13 +107,13 @@ Inherit from to implement your own conversion requirements. When you inherit from this class, you can override the following methods: -- To support custom type conversion, override the , , , and methods. +- To support custom type conversion, override the , , , and methods. -- To convert types that must re-create the object to change its value, override the and methods. +- To convert types that must re-create the object to change its value, override the and methods. -- To convert types that support properties, override the and methods. If the class you are converting does not have properties, and you need to implement properties, you can use the class as a base for implementing the property descriptors. When you inherit from , you must override the and methods. +- To convert types that support properties, override the and methods. If the class you are converting does not have properties, and you need to implement properties, you can use the class as a base for implementing the property descriptors. When you inherit from , you must override the and methods. -- To convert types that support standard values, override the , , and methods. +- To convert types that support standard values, override the , , and methods. Note: Your derived type might be marked as or , but an instance of your type can be created with the class. Do not write insecure code by assuming the caller is trusted. Assume instead that callers might create instances of your type in partial trust. @@ -2071,13 +2071,13 @@ Note: Your derived type might be marked as or and objects. Filtering is defined by the following rules: -- A is treated as a wildcard; it matches a property that has the in its set of attributes. +- A is treated as a wildcard; it matches a property that has the in its set of attributes. -- If a property does not have an of the same class, the property is not included in the returned array. +- If a property does not have an of the same class, the property is not included in the returned array. -- If the attribute is an instance of , the property must be an exact match or it is not included in the returned array. +- If the attribute is an instance of , the property must be an exact match or it is not included in the returned array. -- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. +- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. diff --git a/xml/System.ComponentModel/TypeDescriptionProvider.xml b/xml/System.ComponentModel/TypeDescriptionProvider.xml index 9b216364434..240a51a8f64 100644 --- a/xml/System.ComponentModel/TypeDescriptionProvider.xml +++ b/xml/System.ComponentModel/TypeDescriptionProvider.xml @@ -52,21 +52,21 @@ Provides supplemental metadata to the . - class dynamically extends the type information associated with a type or object by adding, modifying, or hiding characteristics such as attributes, properties, and events. There can be multiple type description provider classes that offer metadata to a single . - - There are two ways to associate a with a : - -- At design time, when the target class can be assigned the appropriate tag. - -- At run time, when one of the methods of the class can be called. These overloaded methods require either the target object or its class type. - - The class relies on a parent object of the same type, supplied during construction. This allows classes that derive from to selectively override methods. - + class dynamically extends the type information associated with a type or object by adding, modifying, or hiding characteristics such as attributes, properties, and events. There can be multiple type description provider classes that offer metadata to a single . + + There are two ways to associate a with a : + +- At design time, when the target class can be assigned the appropriate tag. + +- At run time, when one of the methods of the class can be called. These overloaded methods require either the target object or its class type. + + The class relies on a parent object of the same type, supplied during construction. This allows classes that derive from to selectively override methods. + Instances of are only built upon demand, minimizing the impact of custom type information on performance. - + ]]> @@ -128,11 +128,11 @@ Initializes a new instance of the class. - constructor with a parameter value that is `null`. - + constructor with a parameter value that is `null`. + ]]> @@ -183,21 +183,21 @@ The parent type description provider. Initializes a new instance of the class using a parent type description provider. - methods will return default values. Otherwise, all methods will delegate to the methods of `parent`. - - The following table shows the default return values for methods. - -|Method|Default return value| -|------------|--------------------------| -||`null`| -||A newly created object through a call to the method.| -||A default instance of a class.| -||A default instance of a class.| -||The `objectType` first parameter.| - + methods will return default values. Otherwise, all methods will delegate to the methods of `parent`. + + The following table shows the default return values for methods. + +|Method|Default return value| +|------------|--------------------------| +||`null`| +||A newly created object through a call to the method.| +||A default instance of a class.| +||A default instance of a class.| +||The `objectType` first parameter.| + ]]> @@ -278,13 +278,13 @@ Creates an object that can substitute for another data type. The substitute . - specified by the `provider` parameter is passed in by the method of the class. If `provider` is not `null`, the service provider can be used by the type description provider to obtain additional context about the creation call. - - The method is `virtual` and, by default, returns the result of the method if `parent` is `null`. If `parent` is not `null`, this method will invoke the method of the parent provider. - + specified by the `provider` parameter is passed in by the method of the class. If `provider` is not `null`, the service provider can be used by the type description provider to obtain additional context about the creation call. + + The method is `virtual` and, by default, returns the result of the method if `parent` is `null`. If `parent` is not `null`, this method will invoke the method of the parent provider. + ]]> @@ -343,13 +343,13 @@ Gets a per-object cache, accessed as an of key/value pairs. An if the provided object supports caching; otherwise, . - may need to perform complex operations on collections of metadata. Because types are not unloaded for the life of a domain, the class will automatically cache the results of these operations based on type. However, some operations use live object instances. These operations cannot be cached within the class because caching them would prevent the object from being garbage collected. Instead, the class allows for a per-object cache, accessed as an of key/value pairs, to exist on an object. The method returns an instance of this cache. The method will return `null` if there is no supported cache for an object. - - The default used by examines the object to see if it is a sited component that implements the interface. If the object is, it uses the dictionary service to store the object's cache. Otherwise, the object it returns `null`. Other type description providers may provide their own implementation here. For example, dependency objects can just attach a property of type . - + may need to perform complex operations on collections of metadata. Because types are not unloaded for the life of a domain, the class will automatically cache the results of these operations based on type. However, some operations use live object instances. These operations cannot be cached within the class because caching them would prevent the object from being garbage collected. Instead, the class allows for a per-object cache, accessed as an of key/value pairs, to exist on an object. The method returns an instance of this cache. The method will return `null` if there is no supported cache for an object. + + The default used by examines the object to see if it is a sited component that implements the interface. If the object is, it uses the dictionary service to store the object's cache. Otherwise, the object it returns `null`. Other type description providers may provide their own implementation here. For example, dependency objects can just attach a property of type . + ]]> @@ -405,13 +405,13 @@ Gets an extended custom type descriptor for the given object. An that can provide extended metadata for the object. - interface can attach properties to other objects that reside in the same logical container. The overloaded methods do not return a type descriptor that provides these extra extended properties. The method returns the set of these extended properties. The will automatically merge the results of these two property collections. While the .NET Framework component model supports only extended properties, can be used for extended attributes as well as events, if the type description provider supports it. - - is `virtual` and, by default, returns a custom type descriptor that returns empty results if no parent provider was passed. If a parent provider was passed, this method will invoke the parent provider's method. - + interface can attach properties to other objects that reside in the same logical container. The overloaded methods do not return a type descriptor that provides these extra extended properties. The method returns the set of these extended properties. The will automatically merge the results of these two property collections. While the .NET Framework component model supports only extended properties, can be used for extended attributes as well as events, if the type description provider supports it. + + is `virtual` and, by default, returns a custom type descriptor that returns empty results if no parent provider was passed. If a parent provider was passed, this method will invoke the parent provider's method. + ]]> @@ -615,13 +615,13 @@ Performs normal reflection against the given object. The type of reflection for this . - method is a lower-level version of the method. If no custom type descriptor can be located for an object, is called to perform normal reflection against the object. - - Use this method overload if you have called a type descriptor member that uses an instance instead of a type. - + method is a lower-level version of the method. If no custom type descriptor can be located for an object, is called to perform normal reflection against the object. + + Use this method overload if you have called a type descriptor member that uses an instance instead of a type. + ]]> @@ -691,13 +691,13 @@ Performs normal reflection against a type. The type of reflection for this . - method is a lower-level version of the method. If no custom type descriptor can be located for an object, is called to perform normal reflection against the object. - - Use this method overload if you have called a type descriptor member that uses a type instead of an instance. - + method is a lower-level version of the method. If no custom type descriptor can be located for an object, is called to perform normal reflection against the object. + + Use this method overload if you have called a type descriptor member that uses a type instead of an instance. + ]]> @@ -771,11 +771,11 @@ Performs normal reflection against the given object with the given type. The type of reflection for this . - method is a lower-level version of the method. If no custom type descriptor can be located for an object, is called to perform normal reflection against the object. - + method is a lower-level version of the method. If no custom type descriptor can be located for an object, is called to perform normal reflection against the object. + ]]> @@ -826,11 +826,11 @@ Converts a reflection type into a runtime type. A that represents the runtime equivalent of . - method reverses the method to convert a reflection type back into a runtime type. Using the method is preferred over using the property, which was used in earlier versions to return the runtime type. - + method reverses the method to convert a reflection type back into a runtime type. Using the method is preferred over using the property, which was used in earlier versions to return the runtime type. + ]]> @@ -1031,11 +1031,11 @@ Gets a custom type descriptor for the given type and object. An that can provide metadata for the type. - method. - + method. + ]]> diff --git a/xml/System.ComponentModel/TypeDescriptor.xml b/xml/System.ComponentModel/TypeDescriptor.xml index de891f05ac4..fb9430c2ff2 100644 --- a/xml/System.ComponentModel/TypeDescriptor.xml +++ b/xml/System.ComponentModel/TypeDescriptor.xml @@ -53,29 +53,29 @@ Provides information about the characteristics for a component, such as its attributes, properties, and events. This class cannot be inherited. - namespace, and the class. Reflection is a general mechanism available to all types because its foundation is established in the method of the root class. The information it returns for a type is not extensible, in that it cannot be modified after compilation of the target type. For more information, see the topics in [Reflection](/dotnet/framework/reflection-and-codedom/reflection). - - In contrast, is an extensible inspection mechanism for components: those classes that implement the interface. Unlike reflection, it does not inspect for methods. can be dynamically extended by several services available through the target component's . The following table shows these services. - -|Service name|Description| -|------------------|-----------------| -||Enables another class, such as , to provide extra properties to a component.| -||Enables another object to modify the standard metadata that is exposed by a component.| -||Enables a class to completely and dynamically specify its own metadata, replacing the standard inspection mechanism of .| - - The extensibility provided by allows the design-time representation of a component to differ from its actual run-time representation, which makes useful for building design-time infrastructure. - - All the methods in are `static`. You cannot create an instance of this class, and this class cannot be inherited. - - You can set property and event values two different ways: specify them in the component class or change them at design time. Because you can set these values two ways, the overloaded methods of take two different types of parameters: a class type or an object instance. - - When you want to access information and you have an instance of the object, use the method that calls for a component. Use the method that calls for the class type only when you do not have an instance of the object. - - Properties and events are cached by for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If this is the case, then the method must be called to update the cache. - + namespace, and the class. Reflection is a general mechanism available to all types because its foundation is established in the method of the root class. The information it returns for a type is not extensible, in that it cannot be modified after compilation of the target type. For more information, see the topics in [Reflection](/dotnet/framework/reflection-and-codedom/reflection). + + In contrast, is an extensible inspection mechanism for components: those classes that implement the interface. Unlike reflection, it does not inspect for methods. can be dynamically extended by several services available through the target component's . The following table shows these services. + +|Service name|Description| +|------------------|-----------------| +||Enables another class, such as , to provide extra properties to a component.| +||Enables another object to modify the standard metadata that is exposed by a component.| +||Enables a class to completely and dynamically specify its own metadata, replacing the standard inspection mechanism of .| + + The extensibility provided by allows the design-time representation of a component to differ from its actual run-time representation, which makes useful for building design-time infrastructure. + + All the methods in are `static`. You cannot create an instance of this class, and this class cannot be inherited. + + You can set property and event values two different ways: specify them in the component class or change them at design time. Because you can set these values two ways, the overloaded methods of take two different types of parameters: a class type or an object instance. + + When you want to access information and you have an instance of the object, use the method that calls for a component. Use the method that calls for the class type only when you do not have an instance of the object. + + Properties and events are cached by for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If this is the case, then the method must be called to update the cache. + ]]> @@ -155,11 +155,11 @@ Adds class-level attributes to the target component instance. The newly created that was used to add the specified attributes. - method adds class-level attributes to the specified instance of a component. Because this is a common requirement of applications using the Visual Studio Windows Forms Designer and Properties window, this method provides a shortcut by creating a type description provider that merges the provided attributes with the attributes that already exist on the class. The return value is the type description provider that was used to add the attributes. This provider can later be passed to the method when the added attributes are no longer needed. - + method adds class-level attributes to the specified instance of a component. Because this is a common requirement of applications using the Visual Studio Windows Forms Designer and Properties window, this method provides a shortcut by creating a type description provider that merges the provided attributes with the attributes that already exist on the class. The return value is the type description provider that was used to add the attributes. This provider can later be passed to the method when the added attributes are no longer needed. + ]]> One or both of the parameters is . @@ -224,11 +224,11 @@ Adds class-level attributes to the target component type. The newly created that was used to add the specified attributes. - method adds class-level attributes to the specified type of a component. Because this is a common requirement of applications using the Visual Studio Windows Forms Designer and Properties window, this method provides a shortcut by creating a type description provider that merges the provided attributes with the attributes that already exist on the class. The return value is the type description provider that was used to add the attributes. This provider can later be passed to the method when the added attributes are no longer needed. - + method adds class-level attributes to the specified type of a component. Because this is a common requirement of applications using the Visual Studio Windows Forms Designer and Properties window, this method provides a shortcut by creating a type description provider that merges the provided attributes with the attributes that already exist on the class. The return value is the type description provider that was used to add the attributes. This provider can later be passed to the method when the added attributes are no longer needed. + ]]> One or both of the parameters is . @@ -294,13 +294,13 @@ The to add. Adds an editor table for the given editor base type. - method adds an editor table for the given editor base type. Typically, editors are specified as metadata on a component. However, if no metadata for a requested editor base type can be found on the component, the associated will search an editor table for the editor type, if one can be found. Once an editor table has been added to a type descriptor, it cannot be removed and is owned by the type descriptor. The type descriptor may freely make modifications to this table. - - The format for an editor table uses data types as keys and editors as values. The value portion of an entry in the table represents an editor instance. It can have one of three values. If it contains a string, the type descriptor will assume this is a fully qualified name of a type, and then load the type for the object. If it contains a type, an instance of this type will be created to obtain an editor. Finally, the value portion may contain an actual editor instance. If the type descriptor resolves an editor to an instance, it will store the instance back into the table for future use. - + method adds an editor table for the given editor base type. Typically, editors are specified as metadata on a component. However, if no metadata for a requested editor base type can be found on the component, the associated will search an editor table for the editor type, if one can be found. Once an editor table has been added to a type descriptor, it cannot be removed and is owned by the type descriptor. The type descriptor may freely make modifications to this table. + + The format for an editor table uses data types as keys and editors as values. The value portion of an entry in the table represents an editor instance. It can have one of three values. If it contains a string, the type descriptor will assume this is a fully qualified name of a type, and then load the type for the object. If it contains a type, an instance of this type will be created to obtain an editor. Finally, the value portion may contain an actual editor instance. If the type descriptor resolves an editor to an instance, it will store the instance back into the table for future use. + ]]> @@ -367,22 +367,22 @@ An instance of the target component. Adds a type description provider for a single instance of a component. - method adds a type description provider that supplies type information for a single instance of a component. If a provider is added by this method, the provider's method will not be called because the instance already exists. - - This method does not maintain a hard reference to the component, so it does not prevent the component from finalizing. - - It is possible to add multiple type description providers for the same type or object. If this occurs, the first type description provider encountered that provides type information will be used exclusively. Since type information providers are stored in a stack, the last provider added will be the first one queried. This behavior enables the and methods to be used to push and pop type description providers as required for particular scenarios. - - If successful, this method calls the method on the `instance` parameter. - + method adds a type description provider that supplies type information for a single instance of a component. If a provider is added by this method, the provider's method will not be called because the instance already exists. + + This method does not maintain a hard reference to the component, so it does not prevent the component from finalizing. + + It is possible to add multiple type description providers for the same type or object. If this occurs, the first type description provider encountered that provides type information will be used exclusively. Since type information providers are stored in a stack, the last provider added will be the first one queried. This behavior enables the and methods to be used to push and pop type description providers as required for particular scenarios. + + If successful, this method calls the method on the `instance` parameter. + > [!NOTE] -> The two versions of this method produce results with different scopes. The method that takes an parameter affects only that single instance of the component specified. In contrast, the other overload, which takes a parameter, affects all instances of the component described by that type. - - Use the method if you need to call from partially trusted code. - +> The two versions of this method produce results with different scopes. The method that takes an parameter affects only that single instance of the component specified. In contrast, the other overload, which takes a parameter, affects all instances of the component described by that type. + + Use the method if you need to call from partially trusted code. + ]]> One or both of the parameters are . @@ -441,25 +441,25 @@ The of the target component. Adds a type description provider for a component class. - method adds a type description provider that supplies type information for the specified class, derived classes, and all instances of these types. - + method adds a type description provider that supplies type information for the specified class, derived classes, and all instances of these types. + > [!NOTE] -> The `type` parameter can be any type, including an interface. For example, to provide custom type and instance information for all components, you would specify `typeof(IComponent)`. Passing `typeof(object)` will call the provider to supply type information for all types. - - This method does not maintain a hard reference to any object, so it does not prevent objects from finalizing. - - It is possible to add multiple type description providers for the same type or object. If this occurs, the first type description provider encountered that provides type information will be used exclusively. Because type information providers are stored in a stack, the last provider added will be the first one queried. This behavior enables the and methods to be used to push and pop type description providers as required for particular scenarios. - - If successful, this method calls the method on the `type` parameter. - +> The `type` parameter can be any type, including an interface. For example, to provide custom type and instance information for all components, you would specify `typeof(IComponent)`. Passing `typeof(object)` will call the provider to supply type information for all types. + + This method does not maintain a hard reference to any object, so it does not prevent objects from finalizing. + + It is possible to add multiple type description providers for the same type or object. If this occurs, the first type description provider encountered that provides type information will be used exclusively. Because type information providers are stored in a stack, the last provider added will be the first one queried. This behavior enables the and methods to be used to push and pop type description providers as required for particular scenarios. + + If successful, this method calls the method on the `type` parameter. + > [!NOTE] -> The two versions of this method produce results with different scopes. The method that takes an parameter affects only that single instance of the component specified. In contrast, the other overload, which takes a parameter, affects all instances of the component described by that type. - - Use the method if you need to call from partially trusted code. - +> The two versions of this method produce results with different scopes. The method that takes an parameter affects only that single instance of the component specified. In contrast, the other overload, which takes a parameter, affects all instances of the component described by that type. + + Use the method if you need to call from partially trusted code. + ]]> One or both of the parameters are . @@ -526,13 +526,13 @@ An instance of the target component. Adds a type description provider for a single instance of a component. - is defined, the caller can register a provider for the specified instance if its type is also partially trusted. - - Use the method if you do not need to call from partially trusted code. - + is defined, the caller can register a provider for the specified instance if its type is also partially trusted. + + Use the method if you do not need to call from partially trusted code. + ]]> One or both of the parameters are . @@ -587,13 +587,13 @@ The of the target component. Adds a type description provider for a component class. - is defined, the caller can register a provider for the specified type if it is also partially trusted. - - Use the method if you do not need to call from partially trusted code. - + is defined, the caller can register a provider for the specified type if it is also partially trusted. + + Use the method if you do not need to call from partially trusted code. + ]]> One or both of the parameters are . @@ -669,11 +669,11 @@ Gets or sets the provider for the Component Object Model (COM) type information for the target component. An instance representing the COM type information provider. - property and the interface are obsolete. For more information, see the property. - + property and the interface are obsolete. For more information, see the property. + ]]> @@ -727,13 +727,13 @@ Gets the type of the Component Object Model (COM) object represented by the target component. The of the COM object represented by this component, or for non-COM objects. - property returns a type that can be passed to the method to define a type description provider for COM types. - - The property and other members in this class replace the functionality in the obsolete interface. To implement a mapping layer between a COM object and , add a to handle type . - + property returns a type that can be passed to the method to define a type description provider for COM types. + + The property and other members in this class replace the functionality in the obsolete interface. To implement a mapping layer between a COM object and , add a to handle type . + ]]> @@ -789,13 +789,13 @@ The secondary . Creates a primary-secondary association between two objects. - method creates an association between a primary and a secondary object. Once an association is created, a designer or other filtering mechanism can add properties that route to either object into the primary object's property set. When a property invocation is made against the primary object, the method will be called to resolve the actual object instance that is related to its type parameter. - - A is used to maintain the association between the primary and secondary object; therefore, this method does not prevent either object from being finalized and reclaimed by garbage collection. - + method creates an association between a primary and a secondary object. Once an association is created, a designer or other filtering mechanism can add properties that route to either object into the primary object's property set. When a property invocation is made against the primary object, the method will be called to resolve the actual object instance that is related to its type parameter. + + A is used to maintain the association between the primary and secondary object; therefore, this method does not prevent either object from being finalized and reclaimed by garbage collection. + ]]> One or both of the parameters are . @@ -867,11 +867,11 @@ Creates an instance of the designer associated with the specified component and of the specified type of designer. An that is an instance of the designer for the component, or if no designer can be found. - , it searches up the class hierarchy for a designer. If it cannot find a designer in the class hierarchy, it returns `null`. - + , it searches up the class hierarchy for a designer. If it cannot find a designer in the class hierarchy, it returns `null`. + ]]> @@ -1102,11 +1102,11 @@ Creates an object that can substitute for another data type. An instance of the substitute data type if an associated is found; otherwise, . - method will search for a that is associated with the specified `objectType` data type. This method first tries to obtain a type description provider from the `provider` parameter. If this fails, it searches its own internal tables for a provider (these entries were created through previous calls to ). If it finds a provider, this method will delegate the creation call to that object. - + method will search for a that is associated with the specified `objectType` data type. This method first tries to obtain a type description provider from the `provider` parameter. If this fails, it searches its own internal tables for a provider (these entries were created through previous calls to ). If it finds a provider, this method will delegate the creation call to that object. + ]]> @@ -1334,13 +1334,13 @@ Returns an instance of the type associated with the specified primary object. An instance of the secondary type that has been associated with the primary object if an association exists; otherwise, if no specified association exists. - method, then the method returns the correct secondary object to invoke for the requested type. Otherwise, searches for a compatible designer for `type` and returns the designer if one is found. This method never returns `null`. - - A is used to maintain the association between the primary and secondary object; therefore, this method does not prevent either the primary or secondary object from being finalized and reclaimed by garbage collection. - + method, then the method returns the correct secondary object to invoke for the requested type. Otherwise, searches for a compatible designer for `type` and returns the designer if one is found. This method never returns `null`. + + A is used to maintain the association between the primary and secondary object; therefore, this method does not prevent either the primary or secondary object from being finalized and reclaimed by garbage collection. + ]]> One or both of the parameters are . @@ -1413,21 +1413,21 @@ Returns the collection of attributes for the specified component. An containing the attributes for the component. If is , this method returns an empty collection. - method may be dynamically modified from the original component's source listing by extender providers (), filter services (), and attribute filters. - - When you define a custom attribute with set to `true`, you must override the property to make it unique. If all instances of your attribute are unique, override to return the object identity of your attribute. If only some instances of your attribute are unique, return a value from that would return equality in those cases. For example, some attributes have a constructor parameter that acts as a unique key. For these attributes, return the value of the constructor parameter from the property. - + method may be dynamically modified from the original component's source listing by extender providers (), filter services (), and attribute filters. + + When you define a custom attribute with set to `true`, you must override the property to make it unique. If all instances of your attribute are unique, override to return the object identity of your attribute. If only some instances of your attribute are unique, return a value from that would return equality in those cases. For example, some attributes have a constructor parameter that acts as a unique key. For these attributes, return the value of the constructor parameter from the property. + > [!NOTE] -> The default implementation of returns the type identity regardless of the value of the property. In order to return multiple instances of an attribute from the , your attribute must override the property. - - - -## Examples - For an example of this method, see the method. - +> The default implementation of returns the type identity regardless of the value of the property. In order to return multiple instances of an attribute from the , your attribute must override the property. + + + +## Examples + For an example of this method, see the method. + ]]> @@ -1489,18 +1489,18 @@ Returns a collection of attributes for the specified type of component. An with the attributes for the type of the component. If the component is , this method returns an empty collection. - set to `true`, the attribute collection removes duplicate instances. These are instances in which the property returns equal values. - - When you define a custom attribute with set to `true`, you must override the property to make it unique. If all instances of your attribute are unique, override to return the object identity of your attribute. If only some instances of your attribute are unique, return a value from that would return equality in those cases. For example, some attributes have a constructor parameter that acts as a unique key. For these attributes, return the value of the constructor parameter from the property. - + set to `true`, the attribute collection removes duplicate instances. These are instances in which the property returns equal values. + + When you define a custom attribute with set to `true`, you must override the property to make it unique. If all instances of your attribute are unique, override to return the object identity of your attribute. If only some instances of your attribute are unique, return a value from that would return equality in those cases. For example, some attributes have a constructor parameter that acts as a unique key. For these attributes, return the value of the constructor parameter from the property. + > [!NOTE] -> The default implementation of returns the type identity regardless of the value of the property. In order to return multiple instances of an attribute from the , your attribute must override the property. - +> The default implementation of returns the type identity regardless of the value of the property. In order to return multiple instances of an attribute from the , your attribute must override the property. + ]]> @@ -1568,16 +1568,16 @@ Returns a collection of attributes for the specified component and a Boolean indicating that a custom type descriptor has been created. An with the attributes for the component. If the component is , this method returns an empty collection. - method may be dynamically modified from the original components source listing by extender providers (), filter services (), and attribute filters. - - When you define a custom attribute with set to `true`, you must override the property to make it unique. If all instances of your attribute are unique, override to return the object identity of your attribute. If only some instances of your attribute are unique, return a value from that would return equality in those cases. For example, some attributes have a constructor parameter that acts as a unique key. For these attributes, return the value of the constructor parameter from the property. - + method may be dynamically modified from the original components source listing by extender providers (), filter services (), and attribute filters. + + When you define a custom attribute with set to `true`, you must override the property to make it unique. If all instances of your attribute are unique, override to return the object identity of your attribute. If only some instances of your attribute are unique, return a value from that would return equality in those cases. For example, some attributes have a constructor parameter that acts as a unique key. For these attributes, return the value of the constructor parameter from the property. + > [!NOTE] -> The default implementation of returns the type identity regardless of the value of the property. In order to return multiple instances of an attribute from the , your attribute must override the property. - +> The default implementation of returns the type identity regardless of the value of the property. In order to return multiple instances of an attribute from the , your attribute must override the property. + ]]> @@ -1660,13 +1660,13 @@ Returns the name of the class for the specified component using the default type descriptor. A containing the name of the class for the specified component. - name for the `component` parameter type. For example, the class name for a button is "System.Windows.Forms.Button". If `component` implements , it can return an alternate name. - - This method is equivalent to the overloaded method with a second parameter of `false`. - + name for the `component` parameter type. For example, the class name for a button is "System.Windows.Forms.Button". If `component` implements , it can return an alternate name. + + This method is equivalent to the overloaded method with a second parameter of `false`. + ]]> @@ -1735,11 +1735,11 @@ Returns the name of the class for the specified type. A containing the name of the class for the specified component type. - @@ -1815,11 +1815,11 @@ Returns the name of the class for the specified component using a custom type descriptor. A containing the name of the class for the specified component. - name for the `component` parameter type. For example, the class name for a button is "System.Windows.Forms.Button". If the `component` parameter implements , it can return an alternate name. - + name for the `component` parameter type. For example, the class name for a button is "System.Windows.Forms.Button". If the `component` parameter implements , it can return an alternate name. + ]]> @@ -1905,15 +1905,15 @@ Returns the name of the specified component using the default type descriptor. A containing the name of the specified component, or if there is no component name. - method with a second parameter of `false`. - - This method is used at design time to retrieve the name of an instance of a component. - + method with a second parameter of `false`. + + This method is used at design time to retrieve the name of an instance of a component. + ]]> @@ -1991,11 +1991,11 @@ Returns the name of the specified component using a custom type descriptor. The name of the class for the specified component, or if there is no component name. - interface, it can return an alternate name. - + interface, it can return an alternate name. + ]]> @@ -2074,18 +2074,18 @@ Returns a type converter for the type of the specified component. A for the specified component. - . If it cannot find a , it traverses the base class hierarchy of the class until it finds a primitive type. - - This method is equivalent to the overloaded method with a second parameter of `false`. - - - -## Examples - For an example of using this method, see the class. - + . If it cannot find a , it traverses the base class hierarchy of the class until it finds a primitive type. + + This method is equivalent to the overloaded method with a second parameter of `false`. + + + +## Examples + For an example of using this method, see the class. + ]]> @@ -2155,13 +2155,13 @@ Returns a type converter for the specified type. A for the specified type. - . If it cannot find a , it traverses the base class hierarchy of the class until it finds a primitive type. - + . If it cannot find a , it traverses the base class hierarchy of the class until it finds a primitive type. + ]]> @@ -2229,11 +2229,11 @@ Returns a type converter for the type of the specified component with a custom type descriptor. A for the specified component. - . If it cannot find a , it traverses the base class hierarchy of the class until it finds a primitive type. - + . If it cannot find a , it traverses the base class hierarchy of the class until it finds a primitive type. + ]]> @@ -2382,11 +2382,11 @@ Returns the default event for the specified component. An with the default event, or if there are no events. - method with a second parameter of `false`. - + method with a second parameter of `false`. + ]]> @@ -2467,11 +2467,11 @@ Returns the default event for the specified type of component. An with the default event, or if there are no events. - @@ -2636,11 +2636,11 @@ Returns the default property for the specified component. A with the default property, or if there are no properties. - @@ -2716,13 +2716,13 @@ Returns the default property for the specified type of component. A with the default property, or if there are no properties. - @@ -2796,11 +2796,11 @@ Returns the default property for the specified component with a custom type descriptor. A with the default property, or if there are no properties. - @@ -2890,13 +2890,13 @@ Gets an editor with the specified base type for the specified component. An instance of the editor that can be cast to the specified editor type, or if no editor of the requested type can be found. - , but you can also use other types (for example, and ). - - You can define multiple editors for a property. You use this method to select the editor you want to use. - + , but you can also use other types (for example, and ). + + You can define multiple editors for a property. You use this method to select the editor you want to use. + ]]> @@ -2978,15 +2978,15 @@ Returns an editor with the specified base type for the specified type. An instance of the editor object that can be cast to the given base type, or if no editor of the requested type can be found. - , but you can also use other types (for example and ). - - You can define multiple editors for a type. You use this method to select the one you want to use. - - Call this version of this method only when you do not have an instance of the object. - + , but you can also use other types (for example and ). + + You can define multiple editors for a type. You use this method to select the one you want to use. + + Call this version of this method only when you do not have an instance of the object. + ]]> @@ -3065,13 +3065,13 @@ Returns an editor with the specified base type and with a custom type descriptor for the specified component. An instance of the editor that can be cast to the specified editor type, or if no editor of the requested type can be found. - , but you can also use other types (for example and ). - - You can define multiple editors for a property. You use this method to select the editor you want to use. - + , but you can also use other types (for example and ). + + You can define multiple editors for a property. You use this method to select the editor you want to use. + ]]> @@ -3148,20 +3148,20 @@ Returns the collection of events for the specified component. An with the events for this component. - property. - + property. + ]]> @@ -3226,15 +3226,15 @@ Returns the collection of events for a specified type of component. An with the events for this component. - @@ -3302,25 +3302,25 @@ Returns the collection of events for a specified component using a specified array of attributes as a filter. An with the events that match the specified attributes for this component. - and objects. Filtering is defined by the following rules: - -- A is treated as a wildcard; it matches any event that has the in its set of attributes. - -- If an event does not have an of the same class, the event is not included in the returned array. - -- If the attribute is an instance of the class, the event must be an exact match or it is not included in the returned array. - -- If an instance is specified and it is the default event, it is included in the returned array even if there is no instance of the in the event. - - If `component` is `null`, an empty collection is returned. - - The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. - + and objects. Filtering is defined by the following rules: + +- A is treated as a wildcard; it matches any event that has the in its set of attributes. + +- If an event does not have an of the same class, the event is not included in the returned array. + +- If the attribute is an instance of the class, the event must be an exact match or it is not included in the returned array. + +- If an instance is specified and it is the default event, it is included in the returned array even if there is no instance of the in the event. + + If `component` is `null`, an empty collection is returned. + + The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. + ]]> @@ -3395,15 +3395,15 @@ Returns the collection of events for a specified component with a custom type descriptor. An with the events for this component. - @@ -3477,25 +3477,25 @@ Returns the collection of events for a specified type of component using a specified array of attributes as a filter. An with the events that match the specified attributes for this component. - and objects. Filtering is defined by the following rules: - -- A is treated as a wildcard; it matches any event that has the in its set of attributes. - -- If an event does not have an of the same class, the event is not included in the returned array. - -- If the attribute is an instance of the class, the event must be an exact match or it is not included in the returned array. - -- If an instance is specified and it is the default event, it is included in the returned array even if there is no instance of the in the event. - - If the `componentType` parameter is `null`, an empty collection is returned. - - The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. - + and objects. Filtering is defined by the following rules: + +- A is treated as a wildcard; it matches any event that has the in its set of attributes. + +- If an event does not have an of the same class, the event is not included in the returned array. + +- If the attribute is an instance of the class, the event must be an exact match or it is not included in the returned array. + +- If an instance is specified and it is the default event, it is included in the returned array even if there is no instance of the in the event. + + If the `componentType` parameter is `null`, an empty collection is returned. + + The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. + ]]> @@ -3574,25 +3574,25 @@ Returns the collection of events for a specified component using a specified array of attributes as a filter and using a custom type descriptor. An with the events that match the specified attributes for this component. - and objects. Filtering is defined by the following rules: - -- A is treated as a wildcard; it matches any event that has the in its set of attributes. - -- If an event does not have an of the same class, the event is not included in the returned array. - -- If the attribute is an instance of the class, the event must be an exact match or it is not included in the returned array. - -- If an instance is specified and it is the default event, it is included in the returned array even if there is no instance of the in the event. - - If `component` is `null`, an empty collection is returned. - - The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. - + and objects. Filtering is defined by the following rules: + +- A is treated as a wildcard; it matches any event that has the in its set of attributes. + +- If an event does not have an of the same class, the event is not included in the returned array. + +- If the attribute is an instance of the class, the event must be an exact match or it is not included in the returned array. + +- If an instance is specified and it is the default event, it is included in the returned array even if there is no instance of the in the event. + + If `component` is `null`, an empty collection is returned. + + The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. + ]]> @@ -3695,11 +3695,11 @@ Returns the fully qualified name of the component. The fully qualified name of the specified component, or if the component has no name. - method will return the same value as the method. However, if the component resides in a nested container or has other nested semantics, it may return a different fully qualified name. - + method will return the same value as the method. However, if the component resides in a nested container or has other nested semantics, it may return a different fully qualified name. + ]]> @@ -3773,23 +3773,23 @@ Returns the collection of properties for a specified component. A with the properties for the specified component. - method to access the properties of a control. This code example is part of a larger example provided for the class. - + method to access the properties of a control. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/TypeDescriptor/GetProperties/Form1.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.DesignerServices/VB/Form1.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.ComponentModel.Design.DesignerServices/VB/Form1.vb" id="Snippet8"::: + ]]> @@ -3861,15 +3861,15 @@ Returns the collection of properties for a specified type of component. A with the properties for a specified type of component. - @@ -3945,33 +3945,33 @@ Returns the collection of properties for a specified component using a specified array of attributes as a filter. A with the properties that match the specified attributes for the specified component. - of the same class, the property is not included in the returned array. - -- If the attribute is an instance of the class, the property must be an exact match or it is not included in the returned array. - -- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. - -- If `attributes` has a default attribute, the method matches the case when the property does not have the attribute applied. - - If `component` is `null`, an empty collection is returned. - - The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. - - - -## Examples - The following code example demonstrates how to implement the method. This code example is part of a larger example provided for the class. - + of the same class, the property is not included in the returned array. + +- If the attribute is an instance of the class, the property must be an exact match or it is not included in the returned array. + +- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. + +- If `attributes` has a default attribute, the method matches the case when the property does not have the attribute applied. + + If `component` is `null`, an empty collection is returned. + + The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. + + + +## Examples + The following code example demonstrates how to implement the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/PropertyTabExample/CPP/class1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/PropertyTabAttribute/Overview/class1.cs" id="Snippet2"::: - + ]]> @@ -4046,15 +4046,15 @@ Returns the collection of properties for a specified component using the default type descriptor. A with the properties for a specified component. - @@ -4136,33 +4136,33 @@ Returns the collection of properties for a specified type of component using a specified array of attributes as a filter. A with the properties that match the specified attributes for this type of component. - of the same class, the property is not included in the returned array. - -- If the attribute is an instance of the class, the property must be an exact match or it is not included in the returned array. - -- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. - -- If `attributes` has a default attribute, the method matches the case when the property does not have the attribute applied. - - If the `componentType` parameter is `null`, an empty collection is returned. - - The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. - - - -## Examples - The following code example demonstrates how to implement the method. This code example is part of a larger example provided for the class. - + of the same class, the property is not included in the returned array. + +- If the attribute is an instance of the class, the property must be an exact match or it is not included in the returned array. + +- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. + +- If `attributes` has a default attribute, the method matches the case when the property does not have the attribute applied. + + If the `componentType` parameter is `null`, an empty collection is returned. + + The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. + + + +## Examples + The following code example demonstrates how to implement the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/PropertyTabExample/CPP/class1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/PropertyTabAttribute/Overview/class1.cs" id="Snippet2"::: - + ]]> @@ -4241,25 +4241,25 @@ Returns the collection of properties for a specified component using a specified array of attributes as a filter and using a custom type descriptor. A with the events that match the specified attributes for the specified component. - of the same class, the property is not included in the returned array. - -- If the attribute is an instance of the class, the property must be an exact match or it is not included in the returned array. - -- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. - -- If `attributes` has a default attribute, the method matches the case when the property does not have the attribute applied. - - If the `component` parameter is `null`, an empty collection is returned. - - The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. - + of the same class, the property is not included in the returned array. + +- If the attribute is an instance of the class, the property must be an exact match or it is not included in the returned array. + +- If an instance is specified and it is the default property, it is included in the returned array even if there is no instance of the in the property. + +- If `attributes` has a default attribute, the method matches the case when the property does not have the attribute applied. + + If the `component` parameter is `null`, an empty collection is returned. + + The order of the returned collection is not guaranteed to be identical between calls, so always order it before use. + ]]> @@ -4397,11 +4397,11 @@ Returns the type description provider for the specified component. A associated with the specified component. - method will always return a type description provider. Even the default implementation is built on a . - + method will always return a type description provider. Even the default implementation is built on a . + ]]> @@ -4463,11 +4463,11 @@ Returns the type description provider for the specified type. A associated with the specified type. - method will always return a type description provider. Even the default implementation is built on a . - + method will always return a type description provider. Even the default implementation is built on a . + ]]> @@ -4543,11 +4543,11 @@ Returns a that can be used to perform reflection, given an object. A for the specified object. - method is a low-level version of the method. is typically used to perform standard reflection against an object when no custom type descriptor can be located for it. - + method is a low-level version of the method. is typically used to perform standard reflection against an object when no custom type descriptor can be located for it. + ]]> @@ -4620,11 +4620,11 @@ Returns a that can be used to perform reflection, given a class type. A of the specified class. - method is a low-level version of the method. is typically used to perform standard reflection against a class when no custom type descriptor can be located for it. - + method is a low-level version of the method. is typically used to perform standard reflection against a class when no custom type descriptor can be located for it. + ]]> @@ -4679,11 +4679,11 @@ Gets a type that represents a type description provider for all interface types. A that represents a custom type description provider for all interface types. - property gets a object that you can pass to the methods to define a type description provider for interface types. - + property gets a object that you can pass to the methods to define a type description provider for interface types. + ]]> @@ -4747,18 +4747,18 @@ A component for which the properties or events have changed. Clears the properties and events for the specified component from the cache. - for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they should call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. - - This method also raises a event when the properties or events of a component change. This event is only raised if there was a prior call to the or method that cached the information. - - - -## Examples - For an example of using this method, see the class. - + for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they should call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. + + This method also raises a event when the properties or events of a component change. This event is only raised if there was a prior call to the or method that cached the information. + + + +## Examples + For an example of using this method, see the class. + ]]> @@ -4809,15 +4809,15 @@ The that represents the assembly to refresh. Each in this assembly will be refreshed. Clears the properties and events for the specified assembly from the cache. - for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they can call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. - - Before you make a call to the method to clear the cache, you need to call the method for the specific assembly to cache the information first. - - This method also raises a event to notify all classes that want to be notified when the property set of a component changes. - + for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they can call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. + + Before you make a call to the method to clear the cache, you need to call the method for the specific assembly to cache the information first. + + This method also raises a event to notify all classes that want to be notified when the property set of a component changes. + ]]> @@ -4871,15 +4871,15 @@ The that represents the module to refresh. Each in this module will be refreshed. Clears the properties and events for the specified module from the cache. - for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they can call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. - - Before you make a call to the method to clear the cache, you need to call the method for the specific module to cache the information first. - - This method also raises a event to notify all classes that want to be notified when the property set of a component changes. - + for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they can call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. + + Before you make a call to the method to clear the cache, you need to call the method for the specific module to cache the information first. + + This method also raises a event to notify all classes that want to be notified when the property set of a component changes. + ]]> @@ -4933,15 +4933,15 @@ The of the target component. Clears the properties and events for the specified type of component from the cache. - for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they can call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. - - This method also raises a event when the properties or events of a component change. This event is only raised if there was a prior call to the or method that cached the information. - + for speed. Typically, they are constant for the lifetime of an object. However, extender providers and designers can change the set of properties on an object. If they do, they can call this method to clear the property and event descriptors of the object. This method is used only at design time. It is not used during run time. + + This method also raises a event when the properties or events of a component change. This event is only raised if there was a prior call to the or method that cached the information. + ]]> @@ -4998,16 +4998,16 @@ Occurs when the cache for a component is cleared. - class. - + class. + ]]> @@ -5102,13 +5102,13 @@ The secondary . Removes an association between two objects. - method removes an association between two objects formed by the method. - - A is used to maintain the association between the primary and secondary object; therefore, this method does not influence when either object is finalized or reclaimed by garbage collection. - + method removes an association between two objects formed by the method. + + A is used to maintain the association between the primary and secondary object; therefore, this method does not influence when either object is finalized or reclaimed by garbage collection. + ]]> One or both of the parameters are . @@ -5164,13 +5164,13 @@ The primary in an association. Removes all associations for a primary object. - method removes all associations between a primary object and all of its secondary objects, created by calls to the method. - - A is used to maintain the association between the primary and secondary object; therefore, this method does not influence when either the primary of secondary objects are finalized or reclaimed by garbage collection. - + method removes all associations between a primary object and all of its secondary objects, created by calls to the method. + + A is used to maintain the association between the primary and secondary object; therefore, this method does not influence when either the primary of secondary objects are finalized or reclaimed by garbage collection. + ]]> @@ -5239,13 +5239,13 @@ An instance of the target component. Removes a previously added type description provider that is associated with the specified object. - method. Removing a provider causes a event to be raised for the associated object. - - Use the method if you need to call from partially trusted code. - + method. Removing a provider causes a event to be raised for the associated object. + + Use the method if you need to call from partially trusted code. + ]]> One or both of the parameters are . @@ -5304,13 +5304,13 @@ The of the target component. Removes a previously added type description provider that is associated with the specified type. - method. Removing a provider causes a event to be raised for the associated type. - - Use the method if you need to call from partially trusted code. - + method. Removing a provider causes a event to be raised for the associated type. + + Use the method if you need to call from partially trusted code. + ]]> One or both of the parameters are . @@ -5378,15 +5378,15 @@ An instance of the target component. Removes a previously added type description provider that is associated with the specified object. - method. Removing a provider causes a event to be raised for the associated object. - - This method can be called from partially trusted code. If is defined, the caller can register a provider for the specified instance if its type is also partially trusted. - - Use the method if you do not need to call from partially trusted code. - + method. Removing a provider causes a event to be raised for the associated object. + + This method can be called from partially trusted code. If is defined, the caller can register a provider for the specified instance if its type is also partially trusted. + + Use the method if you do not need to call from partially trusted code. + ]]> One or both of the parameters are . @@ -5441,15 +5441,15 @@ The of the target component. Removes a previously added type description provider that is associated with the specified type. - method. Removing a provider causes a event to be raised for the associated type. - - This method can be called from partially trusted code. If is defined, the caller can unregister a provider for the specified type if it is also partially trusted. - - Use the method if you do not need to call from partially trusted code. - + method. Removing a provider causes a event to be raised for the associated type. + + This method can be called from partially trusted code. If is defined, the caller can unregister a provider for the specified type if it is also partially trusted. + + Use the method if you do not need to call from partially trusted code. + ]]> One or both of the parameters are . diff --git a/xml/System.ComponentModel/TypeListConverter.xml b/xml/System.ComponentModel/TypeListConverter.xml index 18add51d579..40552014077 100644 --- a/xml/System.ComponentModel/TypeListConverter.xml +++ b/xml/System.ComponentModel/TypeListConverter.xml @@ -53,28 +53,28 @@ Provides a type converter that can be used to populate a list box with available types. - base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - + base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + > [!NOTE] -> You should never create an instance of a . Instead, call the method of . For more information, see the examples in the base class. - +> You should never create an instance of a . Instead, call the method of . For more information, see the examples in the base class. + ]]> - When you inherit from , you can override the following methods. - -- To support custom type conversion, override the , , , and methods. - -- To convert types that must re-create the object to change its value, override the and methods. - -- To convert types that support properties, override the and methods. If the class you are converting does not have properties, and you need to implement properties, you can use the class as a base for implementing the property descriptors. When you inherit from , you must override the and methods. - -- To convert types that support standard values, override the , , and methods. + When you inherit from , you can override the following methods. + +- To support custom type conversion, override the , , , and methods. + +- To convert types that must re-create the object to change its value, override the and methods. + +- To convert types that support properties, override the and methods. If the class you are converting does not have properties, and you need to implement properties, you can use the class as a base for implementing the property descriptors. When you inherit from , you must override the and methods. + +- To convert types that support standard values, override the , , and methods. @@ -124,11 +124,11 @@ The array of type to use as the available types. Initializes a new instance of the class using the type array as the available types. - @@ -245,11 +245,11 @@ if this converter can perform the conversion; otherwise, . - @@ -374,13 +374,13 @@ Converts the given value object to the specified destination type. An that represents the converted . - @@ -440,11 +440,11 @@ Gets a collection of standard values for the data type this validator is designed for. A that holds a standard set of valid values, or if the data type does not support a standard set of values. - @@ -495,13 +495,13 @@ because the returned from is an exhaustive list of possible values. This method never returns . - method provides. - + method provides. + ]]> @@ -552,11 +552,11 @@ because should be called to find a common set of values the object supports. This method never returns . - diff --git a/xml/System.Configuration.Assemblies/AssemblyHashAlgorithm.xml b/xml/System.Configuration.Assemblies/AssemblyHashAlgorithm.xml index b325d62c8bb..0087953f4bc 100644 --- a/xml/System.Configuration.Assemblies/AssemblyHashAlgorithm.xml +++ b/xml/System.Configuration.Assemblies/AssemblyHashAlgorithm.xml @@ -61,9 +61,9 @@ The basic requirements for a cryptographic hash function are: -- The input can be of any length. +- The input can be of any length. -- The output has a fixed length. +- The output has a fixed length. - `H` (`x)` is relatively easy to compute for any given x. diff --git a/xml/System.Configuration.Install/AssemblyInstaller.xml b/xml/System.Configuration.Install/AssemblyInstaller.xml index 8c0d391b908..217161b94b4 100644 --- a/xml/System.Configuration.Install/AssemblyInstaller.xml +++ b/xml/System.Configuration.Install/AssemblyInstaller.xml @@ -18,15 +18,15 @@ Loads an assembly, and runs all the installers in it. - is created by invoking the constructor. The properties of this object are set and the and methods are called to install the `MyAssembly.exe` assembly. - + is created by invoking the constructor. The properties of this object are set and the and methods are called to install the `MyAssembly.exe` assembly. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller/CPP/assemblyinstaller.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/Overview/assemblyinstaller.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller/VB/assemblyinstaller.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller/VB/assemblyinstaller.vb" id="Snippet1"::: + ]]> @@ -57,17 +57,17 @@ Initializes a new instance of the class. - constructor and the and methods of the class. - - An is created by invoking the constructor. The properties of this object are set and the and methods are called to install the `MyAssembly_Install.exe` assembly. - + constructor and the and methods of the class. + + An is created by invoking the constructor. The properties of this object are set and the and methods are called to install the `MyAssembly_Install.exe` assembly. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Install/CPP/assemblyinstaller_install.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/.ctor/assemblyinstaller_install.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Install/VB/assemblyinstaller_install.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Install/VB/assemblyinstaller_install.vb" id="Snippet2"::: + ]]> @@ -129,15 +129,15 @@ The command line to use when creating a new object for the assembly's installation. Can be a null value. Initializes a new instance of the class, and specifies both the file name of the assembly to install and the command line to use when creating a new object for the assembly's installation. - is created by invoking the constructor with the assembly to install and the command line argument array as parameters. - + is created by invoking the constructor with the assembly to install and the command line argument array as parameters. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Uninstall/CPP/assemblyinstaller_uninstall.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/.ctor/assemblyinstaller_uninstall.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Uninstall/VB/assemblyinstaller_uninstall.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Uninstall/VB/assemblyinstaller_uninstall.vb" id="Snippet1"::: + ]]> @@ -192,33 +192,33 @@ The assembly in which to search for installers. Checks to see if the specified assembly can be installed. - method determines whether the specified assembly can be installed. To avoid an exception being thrown, the file must meet the following criteria: - -- The file exists. - -- The file is a .NET Framework assembly. - -- The public types can be read from the file. - -- There is at least one public, non abstract class that extends the class and contains the attribute. - -- An instance of each installer can be created. - + method determines whether the specified assembly can be installed. To avoid an exception being thrown, the file must meet the following criteria: + +- The file exists. + +- The file is a .NET Framework assembly. + +- The public types can be read from the file. + +- There is at least one public, non abstract class that extends the class and contains the attribute. + +- An instance of each installer can be created. + > [!NOTE] -> If the assembly is valid but contains no installers, an exception is thrown. This behavior differs from that at install time, when it is not an error to install an empty assembly. - - - -## Examples - In the following example, the method is applied to both an existent and nonexistent assembly and the results of the call are displayed to the console. - +> If the assembly is valid but contains no installers, an exception is thrown. This behavior differs from that at install time, when it is not an error to install an empty assembly. + + + +## Examples + In the following example, the method is applied to both an existent and nonexistent assembly and the results of the call are displayed to the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_CheckIfInstallable/CPP/assemblyinstaller_checkifinstallable.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/CheckIfInstallable/assemblyinstaller_checkifinstallable.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_CheckIfInstallable/VB/assemblyinstaller_checkifinstallable.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_CheckIfInstallable/VB/assemblyinstaller_checkifinstallable.vb" id="Snippet1"::: + ]]> The specified assembly cannot be installed. @@ -245,15 +245,15 @@ Gets or sets the command line to use when creating a new object for the assembly's installation. An array of type that represents the command line to use when creating a new object for the assembly's installation. - property of an is set to the logfile name. - + property of an is set to the logfile name. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Rollback/CPP/assemblyinstaller_rollback.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/CommandLine/assemblyinstaller_rollback.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Rollback/VB/assemblyinstaller_rollback.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Rollback/VB/assemblyinstaller_rollback.vb" id="Snippet3"::: + ]]> @@ -283,51 +283,51 @@ An that contains the state of the computer after all the installers in the installer collection have run. Completes the installation transaction. - methods of all the installers in this instance's succeed. This method then calls the method of each installer in the collection. - - Store any information that you might need to do a correct uninstall operation in the saved-state , which is passed to the method. - - - -## Examples - The following example demonstrates the constructor and the and methods of the class. - - An class is created by invoking the constructor. The properties of this object are set and the and methods are called to install the `MyAssembly_Install.exe` assembly. - + methods of all the installers in this instance's succeed. This method then calls the method of each installer in the collection. + + Store any information that you might need to do a correct uninstall operation in the saved-state , which is passed to the method. + + + +## Examples + The following example demonstrates the constructor and the and methods of the class. + + An class is created by invoking the constructor. The properties of this object are set and the and methods are called to install the `MyAssembly_Install.exe` assembly. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Install/CPP/assemblyinstaller_install.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/.ctor/assemblyinstaller_install.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Install/VB/assemblyinstaller_install.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Install/VB/assemblyinstaller_install.vb" id="Snippet2"::: + ]]> - The parameter is . - - -or- - - The saved-state might have been corrupted. - - -or- - + The parameter is . + + -or- + + The saved-state might have been corrupted. + + -or- + A file could not be found. - An error occurred in the event handler of one of the installers in the collection. - - -or- - - An error occurred in the event handler of one of the installers in the collection. - - -or- - - An exception occurred during the phase of the installation. The exception is ignored and the installation continues. However, the application might not function correctly after installation completes. - - -or- - - Installer types were not found in one of the assemblies. - - -or- - + An error occurred in the event handler of one of the installers in the collection. + + -or- + + An error occurred in the event handler of one of the installers in the collection. + + -or- + + An exception occurred during the phase of the installation. The exception is ignored and the installation continues. However, the application might not function correctly after installation completes. + + -or- + + Installer types were not found in one of the assemblies. + + -or- + An instance of one of the installer types could not be created. An exception occurred during the phase of the installation. The exception is ignored and the installation continues. However, the application might not function correctly after installation completes. @@ -353,20 +353,20 @@ Gets the help text for all the installers in the installer collection. The help text for all the installers in the installer collection, including the description of what each installer does and the command-line options (for the installation program) that can be passed to and understood by each installer. - property of an is displayed to the console. - + property of an is displayed to the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_HelpText/CPP/assemblyinstaller_helptext.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/HelpText/assemblyinstaller_helptext.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_HelpText/VB/assemblyinstaller_helptext.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_HelpText/VB/assemblyinstaller_helptext.vb" id="Snippet2"::: + ]]> @@ -396,41 +396,41 @@ An used to save information needed to perform a commit, rollback, or uninstall operation. Performs the installation. - method of each installer contained in the property of this instance. The object specified by the `savedState` parameter is updated to reflect the status of the installation after the contained installers have run. If all the methods succeed, the method is called. Otherwise, the method is called. - - - -## Examples - The following example demonstrates the constructor and the and methods of the class. - - An object of the class is created by invoking the constructor. The properties of this object are set and the and methods are called to install the 'MyAssembly_Install.exe' assembly. - + method of each installer contained in the property of this instance. The object specified by the `savedState` parameter is updated to reflect the status of the installation after the contained installers have run. If all the methods succeed, the method is called. Otherwise, the method is called. + + + +## Examples + The following example demonstrates the constructor and the and methods of the class. + + An object of the class is created by invoking the constructor. The properties of this object are set and the and methods are called to install the 'MyAssembly_Install.exe' assembly. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Install/CPP/assemblyinstaller_install.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/.ctor/assemblyinstaller_install.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Install/VB/assemblyinstaller_install.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Install/VB/assemblyinstaller_install.vb" id="Snippet2"::: + ]]> - The parameter is . - - -or- - + The parameter is . + + -or- + A file could not be found. - An exception occurred in the event handler of one of the installers in the collection. - - -or- - - An exception occurred in the event handler of one of the installers in the collection. - - -or- - - Installer types were not found in one of the assemblies. - - -or- - + An exception occurred in the event handler of one of the installers in the collection. + + -or- + + An exception occurred in the event handler of one of the installers in the collection. + + -or- + + Installer types were not found in one of the assemblies. + + -or- + An instance of one of the installer types could not be created. The specified by the parameter should be empty when passed to the method. @@ -458,15 +458,15 @@ Gets or sets the path of the assembly to install. The path of the assembly to install. - is created by invoking the constructor. The properties of this object are set. - + is created by invoking the constructor. The properties of this object are set. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Rollback/CPP/assemblyinstaller_rollback.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/CommandLine/assemblyinstaller_rollback.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Rollback/VB/assemblyinstaller_rollback.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Rollback/VB/assemblyinstaller_rollback.vb" id="Snippet2"::: + ]]> @@ -495,47 +495,47 @@ An that contains the pre-installation state of the computer. Restores the computer to the state it was in before the installation. - method is called if the method of this instance or of any installer in the installer collection fails to run correctly. Any exceptions generated by calling the method of an installer in the collection are ignored, and the rollback of the other installers continues. - - - -## Examples - In the following sample, the method is called to undo the install process on the specified assembly. - + method is called if the method of this instance or of any installer in the installer collection fails to run correctly. Any exceptions generated by calling the method of an installer in the collection are ignored, and the rollback of the other installers continues. + + + +## Examples + In the following sample, the method is called to undo the install process on the specified assembly. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Rollback/CPP/assemblyinstaller_rollback.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/CommandLine/assemblyinstaller_rollback.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Rollback/VB/assemblyinstaller_rollback.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Rollback/VB/assemblyinstaller_rollback.vb" id="Snippet1"::: + ]]> - The parameter is . - - -or- - - The saved-state might have been corrupted. - - -or- - + The parameter is . + + -or- + + The saved-state might have been corrupted. + + -or- + A file could not be found. - An exception occurred in the event handler of one of the installers in the collection. - - -or- - - An exception occurred in the event handler of one of the installers in the collection. - - -or- - - An exception occurred during the phase of the installation. The exception is ignored and the rollback continues. However, the computer might not be fully reverted to its initial state after the rollback completes. - - -or- - - Installer types were not found in one of the assemblies. - - -or- - + An exception occurred in the event handler of one of the installers in the collection. + + -or- + + An exception occurred in the event handler of one of the installers in the collection. + + -or- + + An exception occurred during the phase of the installation. The exception is ignored and the rollback continues. However, the computer might not be fully reverted to its initial state after the rollback completes. + + -or- + + Installer types were not found in one of the assemblies. + + -or- + An instance of one of the installer types could not be created. An exception occurred during the phase of the installation. The exception is ignored and the rollback continues. However, the computer might not be fully reverted to its initial state after the rollback completes. @@ -564,50 +564,50 @@ An that contains the post-installation state of the computer. Removes an installation. - method fails for one of the installers in the collection, it is still called for the remaining installers. A failed uninstallation does not roll back the computer to its pre-uninstallation state. - + method fails for one of the installers in the collection, it is still called for the remaining installers. A failed uninstallation does not roll back the computer to its pre-uninstallation state. + > [!NOTE] -> Although the and methods save the state of the computer after the installations, the file containing the from the `savedState` parameter might have been deleted at some point after the installation was complete. If the file is deleted, the `savedState` parameter is `null`. - - - -## Examples - In the following sample, the method is called after installing and committing the assembly passed as the parameter to the constructor. - +> Although the and methods save the state of the computer after the installations, the file containing the from the `savedState` parameter might have been deleted at some point after the installation was complete. If the file is deleted, the `savedState` parameter is `null`. + + + +## Examples + In the following sample, the method is called after installing and committing the assembly passed as the parameter to the constructor. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_Uninstall/CPP/assemblyinstaller_uninstall.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/.ctor/assemblyinstaller_uninstall.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Uninstall/VB/assemblyinstaller_uninstall.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_Uninstall/VB/assemblyinstaller_uninstall.vb" id="Snippet2"::: + ]]> - The saved-state might have been corrupted. - - -or- - + The saved-state might have been corrupted. + + -or- + A file could not be found. - An error occurred in the event handler of one of the installers in the collection. - - -or- - - An error occurred in the event handler of one of the installers in the collection. - - -or- - - An exception occurred while uninstalling. The exception is ignored and the uninstall continues. However, the application might not be fully uninstalled after the uninstall completes. - - -or- - - Installer types were not found in one of the assemblies. - - -or- - - An instance of one of the installer types could not be created. - - -or- - + An error occurred in the event handler of one of the installers in the collection. + + -or- + + An error occurred in the event handler of one of the installers in the collection. + + -or- + + An exception occurred while uninstalling. The exception is ignored and the uninstall continues. However, the application might not be fully uninstalled after the uninstall completes. + + -or- + + Installer types were not found in one of the assemblies. + + -or- + + An instance of one of the installer types could not be created. + + -or- + A file could not be deleted. An exception occurred while uninstalling. The exception is ignored and the uninstall continues. However, the application might not be fully uninstalled after the uninstall completes. @@ -634,20 +634,20 @@ if a new object should be created for the assembly's installation; otherwise, . The default is . - to `false` prevents the new file from being created. - - - -## Examples - In the following example, an is created by invoking the constructor. The property of this object is set to `true` and the method is invoked on the `MyAssembly_HelpText.exe` assembly. Due to this, the log messages are displayed on the console. - + to `false` prevents the new file from being created. + + + +## Examples + In the following example, an is created by invoking the constructor. The property of this object is set to `true` and the method is invoked on the `MyAssembly_HelpText.exe` assembly. Due to this, the log messages are displayed on the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/AssemblyInstaller_HelpText/CPP/assemblyinstaller_helptext.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/AssemblyInstaller/HelpText/assemblyinstaller_helptext.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_HelpText/VB/assemblyinstaller_helptext.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/AssemblyInstaller_HelpText/VB/assemblyinstaller_helptext.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Configuration.Install/Installer.xml b/xml/System.Configuration.Install/Installer.xml index e837c9a5f76..5725f5553f3 100644 --- a/xml/System.Configuration.Install/Installer.xml +++ b/xml/System.Configuration.Install/Installer.xml @@ -28,42 +28,42 @@ Provides the foundation for custom installations. - : - -- Inherit the class. - -- Override the , , , and methods. - -- Add the to your derived class and set it to `true`. - -- Put your derived class in the assembly with your application to install. - -- Invoke the installers. For example, use the InstallUtil.exe to invoke the installers. - - The property contains a collection of installers. If this instance of is part of an installer collection, the property is set to the instance that contains the collection. For an example of the use of the collection, see the class. - - The , , , and methods of the class go through the collection of installers stored in the property, and invokes the corresponding method of each installer. - - The , , , and methods are not always called on the same instance. For example, one instance might be used while installing and committing an application, and then the reference to that instance is released. Later, uninstalling the application creates a reference to a new instance, meaning that the method is called by a different instance of . For this reason, in your derived class, do not save the state of a computer in an installer. Instead, use an that is preserved across calls and passed into your , , , and methods. - - Two situations illustrate the need to save information in the state-saver . First, suppose that your installer sets a registry key. It should save the key's original value in the . If the installation is rolled back, the original value can be restored. Second, suppose the installer replaces an existing file. Save the existing file in a temporary directory and the location of the new location of the file in the . If the installation is rolled back, the newer file is deleted and replaced by the original from the temporary location. - - The property contains information about the installation. For example, information about the location of the log file for the installation, the location of the file to save information required by the method, and the command line that was entered when the installation executable was run. - - - -## Examples - The following example demonstrates the use of the class. It creates a class which inherits from . When is about to complete, event occurs and a message is displayed. To use the class, you must reference the **System.Configuration.Install** assembly in your project. - + : + +- Inherit the class. + +- Override the , , , and methods. + +- Add the to your derived class and set it to `true`. + +- Put your derived class in the assembly with your application to install. + +- Invoke the installers. For example, use the InstallUtil.exe to invoke the installers. + + The property contains a collection of installers. If this instance of is part of an installer collection, the property is set to the instance that contains the collection. For an example of the use of the collection, see the class. + + The , , , and methods of the class go through the collection of installers stored in the property, and invokes the corresponding method of each installer. + + The , , , and methods are not always called on the same instance. For example, one instance might be used while installing and committing an application, and then the reference to that instance is released. Later, uninstalling the application creates a reference to a new instance, meaning that the method is called by a different instance of . For this reason, in your derived class, do not save the state of a computer in an installer. Instead, use an that is preserved across calls and passed into your , , , and methods. + + Two situations illustrate the need to save information in the state-saver . First, suppose that your installer sets a registry key. It should save the key's original value in the . If the installation is rolled back, the original value can be restored. Second, suppose the installer replaces an existing file. Save the existing file in a temporary directory and the location of the new location of the file in the . If the installation is rolled back, the newer file is deleted and replaced by the original from the temporary location. + + The property contains information about the installation. For example, information about the location of the log file for the installation, the location of the file to save information required by the method, and the command line that was entered when the installation executable was run. + + + +## Examples + The following example demonstrates the use of the class. It creates a class which inherits from . When is about to complete, event occurs and a message is displayed. To use the class, you must reference the **System.Configuration.Install** assembly in your project. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer/CPP/installer.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Overview/installer.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer/VB/installer.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer/VB/installer.vb" id="Snippet1"::: + ]]> @@ -112,15 +112,15 @@ Occurs after the methods of all the installers in the property have run. - event. It is raised by the method. - + event. It is raised by the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_AfterInstall/CPP/installer_afterinstall.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/AfterInstall/installer_afterinstall.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_AfterInstall/VB/installer_afterinstall.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_AfterInstall/VB/installer_afterinstall.vb" id="Snippet1"::: + ]]> @@ -148,15 +148,15 @@ Occurs after the installations of all the installers in the property are rolled back. - event. It overrides the method and explicitly throws an so that the method is called. When the is completed, the event occurs and a message is displayed. - + event. It overrides the method and explicitly throws an so that the method is called. When the is completed, the event occurs and a message is displayed. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_AfterRollback/CPP/installer_afterrollback.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/AfterRollback/installer_afterrollback.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_AfterRollback/VB/installer_afterrollback.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_AfterRollback/VB/installer_afterrollback.vb" id="Snippet1"::: + ]]> @@ -184,15 +184,15 @@ Occurs after all the installers in the property perform their uninstallation operations. - event. It is raised by the method. - + event. It is raised by the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_AfterUninstall/CPP/installer_afteruninstall.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/AfterUninstall/installer_afteruninstall.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_AfterUninstall/VB/installer_afteruninstall.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_AfterUninstall/VB/installer_afteruninstall.vb" id="Snippet1"::: + ]]> @@ -220,15 +220,15 @@ Occurs before the method of each installer in the installer collection has run. - event. It is raised by the method. - + event. It is raised by the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_BeforeInstall/CPP/installer_beforeinstall.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/BeforeInstall/installer_beforeinstall.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_BeforeInstall/VB/installer_beforeinstall.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_BeforeInstall/VB/installer_beforeinstall.vb" id="Snippet1"::: + ]]> @@ -256,15 +256,15 @@ Occurs before the installers in the property are rolled back. - event. It overrides the method and explicitly throws an so that the method is called. When the is complete, the event occurs and a message is displayed. - + event. It overrides the method and explicitly throws an so that the method is called. When the is complete, the event occurs and a message is displayed. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_BeforeRollback/CPP/installer_beforerollback.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/BeforeRollback/installer_beforerollback.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_BeforeRollback/VB/installer_beforerollback.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_BeforeRollback/VB/installer_beforerollback.vb" id="Snippet1"::: + ]]> @@ -292,15 +292,15 @@ Occurs before the installers in the property perform their uninstall operations. - event. It is raised by the method. - + event. It is raised by the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_BeforeUninstall/CPP/installer_beforeuninstall.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/BeforeUninstall/installer_beforeuninstall.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_BeforeUninstall/VB/installer_beforeuninstall.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_BeforeUninstall/VB/installer_beforeuninstall.vb" id="Snippet1"::: + ]]> @@ -332,21 +332,21 @@ An that contains the state of the computer after all the installers in the collection have run. When overridden in a derived class, completes the install transaction. - method of the class. A class is derived from the base class and the method are overridden. - + method of the class. A class is derived from the base class and the method are overridden. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Install/CPP/installer_install.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Commit/installer_install.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Install/VB/installer_install.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Install/VB/installer_install.vb" id="Snippet2"::: + ]]> - The parameter is . - - -or- - + The parameter is . + + -or- + The saved-state might have been corrupted. An exception occurred during the phase of the installation. This exception is ignored and the installation continues. However, the application might not function correctly after the installation is complete. @@ -379,15 +379,15 @@ Occurs after all the installers in the property have committed their installations. - event. It is raised by the method. - + event. It is raised by the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Committed1/CPP/installer_committed.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Committed/installer_committed.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committed1/VB/installer_committed.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committed1/VB/installer_committed.vb" id="Snippet1"::: + ]]> @@ -415,15 +415,15 @@ Occurs before the installers in the property commit their installations. - event. It is raised by the method. - + event. It is raised by the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Committing/CPP/installer_committing.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Committing/installer_committing.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committing/VB/installer_committing.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committing/VB/installer_committing.vb" id="Snippet1"::: + ]]> @@ -462,24 +462,24 @@ Gets or sets information about the current installation. An that contains information about the current installation. - property contains installation information. For example, information about the location of the log file for the installation, the location of the file to save information required by the method, and the command line that was entered when the installation executable was run. - - The program that calls the , , , or methods sets the property with information that the methods need. - - If an installer belongs to an installer collection, the parent installer sets the property before calling any of these methods. The parent installer can be accessed through the property. - - - -## Examples - The following example demonstrates the property of the class. The contents of the property contain information about the location of the log file for the installation, the location of the file to save information required by the method, and the command line that was entered when the installation executable was run. These contents are then displayed on the console. - + property contains installation information. For example, information about the location of the log file for the installation, the location of the file to save information required by the method, and the command line that was entered when the installation executable was run. + + The program that calls the , , , or methods sets the property with information that the methods need. + + If an installer belongs to an installer collection, the parent installer sets the property before calling any of these methods. The parent installer can be accessed through the property. + + + +## Examples + The following example demonstrates the property of the class. The contents of the property contain information about the location of the log file for the installation, the location of the file to save information required by the method, and the command line that was entered when the installation executable was run. These contents are then displayed on the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Context/CPP/installer_context.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Context/installer_context.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Context/VB/installer_context.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Context/VB/installer_context.vb" id="Snippet1"::: + ]]> @@ -511,15 +511,15 @@ Gets the help text for all the installers in the installer collection. The help text for all the installers in the installer collection, including the description of what the installer does and the command line options for the installation executable, such as the InstallUtil.exe utility, that can be passed to and understood by this installer. - property. This property is defined in the class, which, when called, returns the description of the and the command line options for the installation executable, such as the Installutil.exe utility, that can be passed to and understood by the . - + property. This property is defined in the class, which, when called, returns the description of the and the command line options for the installation executable, such as the Installutil.exe utility, that can be passed to and understood by the . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_HelpText/CPP/installer_helptext.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/HelpText/installer_helptext.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_HelpText/VB/installer_helptext.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_HelpText/VB/installer_helptext.vb" id="Snippet1"::: + ]]> One of the installers in the installer collection specifies a null reference instead of help text. A likely cause for this exception is that a field to contain the help text is defined but not initialized. @@ -550,27 +550,27 @@ An used to save information needed to perform a commit, rollback, or uninstall operation. When overridden in a derived class, performs the installation. - method of the class. A class is derived from the base class and the method is overridden. - + method of the class. A class is derived from the base class and the method is overridden. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Install/CPP/installer_install.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Commit/installer_install.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Install/VB/installer_install.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Install/VB/installer_install.vb" id="Snippet1"::: + ]]> The parameter is . - An exception occurred in the event handler of one of the installers in the collection. - - -or- - + An exception occurred in the event handler of one of the installers in the collection. + + -or- + An exception occurred in the event handler of one of the installers in the collection. - - If you override the method in a derived class, be sure to call the base class's method first in your derived method. The method calls the method of each installer contained in the property of this instance. After the contained installers run, this method updates the object (specified through the parameter) to reflect the status of the installation. The should be empty when passed to the method. If all the methods succeed, the method is called. Otherwise, the method is called. - -- If you need to add installer instances to the collection in the method, be sure to perform the same additions to the collection in the method. However, you can avoid maintaining the collection in both methods if you add installer instances to the collection in the class constructor for your custom installer. + - If you override the method in a derived class, be sure to call the base class's method first in your derived method. The method calls the method of each installer contained in the property of this instance. After the contained installers run, this method updates the object (specified through the parameter) to reflect the status of the installation. The should be empty when passed to the method. If all the methods succeed, the method is called. Otherwise, the method is called. + +- If you need to add installer instances to the collection in the method, be sure to perform the same additions to the collection in the method. However, you can avoid maintaining the collection in both methods if you add installer instances to the collection in the class constructor for your custom installer. @@ -611,22 +611,22 @@ Gets the collection of installers that this installer contains. An containing the collection of installers associated with this installer. - property contains a collection of installers that install objects needed by this instance to correctly install the component. The , , , and methods of the class go through the collection of installers and invokes the corresponding method of each installer. - - If this instance of is contained in an installer collection, the property is the instance that contains the collection. For an example of the use of the collection, see the class. - - - -## Examples - The following example demonstrates the and properties. The property shows the associated with an . - + property contains a collection of installers that install objects needed by this instance to correctly install the component. The , , , and methods of the class go through the collection of installers and invokes the corresponding method of each installer. + + If this instance of is contained in an installer collection, the property is the instance that contains the collection. For an example of the use of the collection, see the class. + + + +## Examples + The following example demonstrates the and properties. The property shows the associated with an . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Installers/CPP/installer_installers.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Installers/installer_installers.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Installers/VB/installer_installers.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Installers/VB/installer_installers.vb" id="Snippet1"::: + ]]> @@ -664,24 +664,24 @@ An that contains the state of the computer after all the installers contained in the property have completed their installations. Raises the event. - methods of all the installers in this instance's run. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - - -## Examples - The following example demonstrates the method. This method is overridden in the derived class. Space is provided to add steps to be done after the installation in the method. - + methods of all the installers in this instance's run. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + + +## Examples + The following example demonstrates the method. This method is overridden in the derived class. Space is provided to add steps to be done after the installation in the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_OnInstall/CPP/installer_oninstall.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/OnAfterInstall/installer_oninstall.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_OnInstall/VB/installer_oninstall.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_OnInstall/VB/installer_oninstall.vb" id="Snippet2"::: + ]]> @@ -720,15 +720,15 @@ An that contains the state of the computer after the installers contained in the property are rolled back. Raises the event. - methods of all the installers in this instance's have run. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + methods of all the installers in this instance's have run. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -767,15 +767,15 @@ An that contains the state of the computer after all the installers contained in the property are uninstalled. Raises the event. - methods of all the installers in this instance's have run. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + methods of all the installers in this instance's have run. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -813,24 +813,24 @@ An that contains the state of the computer before the installers in the property are installed. This object should be empty at this point. Raises the event. - methods of the installers in this instance's are called. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - - -## Examples - The following example demonstrates the method. This method is overridden in the derived class. Space is provided to add steps to be done before the installation in the method. - + methods of the installers in this instance's are called. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + + +## Examples + The following example demonstrates the method. This method is overridden in the derived class. Space is provided to add steps to be done before the installation in the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_OnInstall/CPP/installer_oninstall.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/OnAfterInstall/installer_oninstall.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_OnInstall/VB/installer_oninstall.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_OnInstall/VB/installer_oninstall.vb" id="Snippet1"::: + ]]> @@ -869,15 +869,15 @@ An that contains the state of the computer before the installers in the property are rolled back. Raises the event. - methods of the installers in this instance's are called. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + methods of the installers in this instance's are called. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -916,15 +916,15 @@ An that contains the state of the computer before the installers in the property uninstall their installations. Raises the event. - methods of the installers in this instance's are uninstalled. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + methods of the installers in this instance's are uninstalled. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -963,24 +963,24 @@ An that contains the state of the computer after all the installers in the property run. Raises the event. - methods of all the installers contained in this instance's installer collection run. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - - -## Examples - The following example demonstrates the method of the class. The method is overridden in the derived class. Space is provided for the user to add the steps to be performed before committing and after committing. - + methods of all the installers contained in this instance's installer collection run. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + + +## Examples + The following example demonstrates the method of the class. The method is overridden in the derived class. Space is provided for the user to add the steps to be performed before committing and after committing. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Committed/CPP/installer_committed.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/OnCommitted/installer_committed.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committed/VB/installer_committed.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committed/VB/installer_committed.vb" id="Snippet2"::: + ]]> @@ -1019,24 +1019,24 @@ An that contains the state of the computer before the installers in the property are committed. Raises the event. - methods of the installers in this instance's run. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - - -## Examples - The following example demonstrates the method of the class. The method is overridden in the derived class. Space is provided for the user to add the steps to be performed before committing and after committing. - + methods of the installers in this instance's run. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + + +## Examples + The following example demonstrates the method of the class. The method is overridden in the derived class. Space is provided for the user to add the steps to be performed before committing and after committing. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Committed/CPP/installer_committed.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/OnCommitted/installer_committed.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committed/VB/installer_committed.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Committed/VB/installer_committed.vb" id="Snippet1"::: + ]]> @@ -1090,22 +1090,22 @@ Gets or sets the installer containing the collection that this installer belongs to. An containing the collection that this instance belongs to, or if this instance does not belong to a collection. - is part of an installer collection, the property is set to the instance that contains the collection. For an example of the use of the collection, see the class. - - The property contains a collection of installers. The , , , and methods of the class go through the collection of installers and invokes the corresponding method of each installer. - - - -## Examples - The following example demonstrates the property. The property gets the containing the collection that this belongs to. - + is part of an installer collection, the property is set to the instance that contains the collection. For an example of the use of the collection, see the class. + + The property contains a collection of installers. The , , , and methods of the class go through the collection of installers and invokes the corresponding method of each installer. + + + +## Examples + The following example demonstrates the property. The property gets the containing the collection that this belongs to. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Installers/CPP/installer_installers.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Installers/installer_installers.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Installers/VB/installer_installers.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Installers/VB/installer_installers.vb" id="Snippet2"::: + ]]> @@ -1140,21 +1140,21 @@ An that contains the pre-installation state of the computer. When overridden in a derived class, restores the pre-installation state of the computer. - method of . The method is overridden in the derived class of . An exception is generated to force an installation rollback. - + method of . The method is overridden in the derived class of . An exception is generated to force an installation rollback. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Rollback/CPP/installer_rollback.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Rollback/installer_rollback.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Rollback/VB/installer_rollback.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Rollback/VB/installer_rollback.vb" id="Snippet1"::: + ]]> - The parameter is . - - -or- - + The parameter is . + + -or- + The saved-state might have been corrupted. An exception occurred during the phase of the installation. This exception is ignored and the rollback continues. However, the computer might not be fully reverted to its initial state after the rollback completes. @@ -1191,23 +1191,23 @@ An that contains the state of the computer after the installation was complete. When overridden in a derived class, removes an installation. - method of . The method is overridden in the derived class of . - + method of . The method is overridden in the derived class of . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Installer_Uninstall/CPP/installer_uninstall.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/Installer/Uninstall/installer_uninstall.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Uninstall/VB/installer_uninstall.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Installer_Uninstall/VB/installer_uninstall.vb" id="Snippet1"::: + ]]> The saved-state might have been corrupted. An exception occurred while uninstalling. This exception is ignored and the uninstall continues. However, the application might not be fully uninstalled after the uninstallation completes. - - If you override the method in a derived class, be sure to call the base class's method first in your derived method. The method calls the method of each installer contained in the property of this instance. After the contained installers run, this method updates the object (specified through the parameter) to reflect the status of the installation. The should be empty when passed to the method. If all the methods succeed, the method is called. Otherwise, the method is called. - -- If you need to add installer instances to the collection in the method, be sure to perform the same additions to the collection in the method. However, you can avoid maintaining the collection in both methods if you add installer instances to the collection in the class constructor for your custom installer. + - If you override the method in a derived class, be sure to call the base class's method first in your derived method. The method calls the method of each installer contained in the property of this instance. After the contained installers run, this method updates the object (specified through the parameter) to reflect the status of the installation. The should be empty when passed to the method. If all the methods succeed, the method is called. Otherwise, the method is called. + +- If you need to add installer instances to the collection in the method, be sure to perform the same additions to the collection in the method. However, you can avoid maintaining the collection in both methods if you add installer instances to the collection in the class constructor for your custom installer. diff --git a/xml/System.Configuration.Install/InstallerCollection.xml b/xml/System.Configuration.Install/InstallerCollection.xml index 8b1b7ebf9b3..912e69a5b56 100644 --- a/xml/System.Configuration.Install/InstallerCollection.xml +++ b/xml/System.Configuration.Install/InstallerCollection.xml @@ -18,34 +18,34 @@ Contains a collection of installers to be run during an installation. - provides the methods and properties that your application needs to manage a collection of objects. - - Use any of the following three ways to add installers to the collection: - -- The method adds a single installer to the collection. - -- The methods add multiple installers to the collection. - -- The method and the property, which is the indexer, each add a single installer to the collection at the specified index. - - Remove installers through the method. Check whether an installer is in the collection by using the method. Find where an installer is located in the collection by using the method. - - The installers in a collection are run when the installer containing the collection, as specified by the property, calls their , , , or methods. - - For examples of the usage of an installer collection, see the and classes. - - - -## Examples - The following example demonstrates the method of the class. This example provides an implementation similar to that of [Installutil.exe (Installer Tool)](/dotnet/framework/tools/installutil-exe-installer-tool). It installs assemblies with the options preceding that particular assembly. If an option is not specified for an assembly, the previous assembly's options are taken if there is a previous assembly in the list. If the "/u" or "/uninstall" option is specified, the assemblies are uninstalled. If the "/?" or "/help" option is provided, the help information is displayed to the console. - + provides the methods and properties that your application needs to manage a collection of objects. + + Use any of the following three ways to add installers to the collection: + +- The method adds a single installer to the collection. + +- The methods add multiple installers to the collection. + +- The method and the property, which is the indexer, each add a single installer to the collection at the specified index. + + Remove installers through the method. Check whether an installer is in the collection by using the method. Find where an installer is located in the collection by using the method. + + The installers in a collection are run when the installer containing the collection, as specified by the property, calls their , , , or methods. + + For examples of the usage of an installer collection, see the and classes. + + + +## Examples + The following example demonstrates the method of the class. This example provides an implementation similar to that of [Installutil.exe (Installer Tool)](/dotnet/framework/tools/installutil-exe-installer-tool). It installs assemblies with the options preceding that particular assembly. If an option is not specified for an assembly, the previous assembly's options are taken if there is a previous assembly in the list. If the "/u" or "/uninstall" option is specified, the assemblies are uninstalled. If the "/?" or "/help" option is provided, the help information is displayed to the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Add/CPP/installercollection_add.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/Overview/installercollection_add.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Add/VB/installercollection_add.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Add/VB/installercollection_add.vb" id="Snippet1"::: + ]]> @@ -82,20 +82,20 @@ Adds the specified installer to this collection of installers. The zero-based index of the added installer. - property of the added is set to specify the containing this collection. - - - -## Examples - The following example is an excerpt of the example in the class. - + property of the added is set to specify the containing this collection. + + + +## Examples + The following example is an excerpt of the example in the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Add/CPP/installercollection_add.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/Overview/installercollection_add.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Add/VB/installercollection_add.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Add/VB/installercollection_add.vb" id="Snippet1"::: + ]]> @@ -136,20 +136,20 @@ An array of type that represents the installers to add to this collection. Adds the specified array of installers to this collection. - property of each added is set to the containing this collection. - - - -## Examples - The following example demonstrates the method of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. - + property of each added is set to the containing this collection. + + + +## Examples + The following example demonstrates the method of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_AddRange1/CPP/installercollection_addrange1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/AddRange/installercollection_addrange1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_AddRange1/VB/installercollection_addrange1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_AddRange1/VB/installercollection_addrange1.vb" id="Snippet1"::: + ]]> @@ -181,20 +181,20 @@ An that represents the installers to add to this collection. Adds the specified collection of installers to this collection. - property of each added is set to the containing this collection. - - - -## Examples - The following example demonstrates the method and the methods of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances of are added to a named `myTransactedInstaller1`. The installers in the `myTransactedInstaller1` are copied to another named `myTransactedInstaller2`. The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. - + property of each added is set to the containing this collection. + + + +## Examples + The following example demonstrates the method and the methods of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances of are added to a named `myTransactedInstaller1`. The installers in the `myTransactedInstaller1` are copied to another named `myTransactedInstaller2`. The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Insert/CPP/installercollection_insert.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/AddRange/installercollection_insert.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Insert/VB/installercollection_insert.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Insert/VB/installercollection_insert.vb" id="Snippet1"::: + ]]> @@ -228,15 +228,15 @@ if the specified installer is in this collection; otherwise, . - method, method, and method of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . `MyAssembly2.exe` is then removed from the of the . The installation process starts and installs only `MyAssembly1.exe`. - + method, method, and method of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . `MyAssembly2.exe` is then removed from the of the . The installation process starts and installs only `MyAssembly1.exe`. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Remove/CPP/installercollection_remove.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/Contains/installercollection_remove.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Remove/VB/installercollection_remove.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Remove/VB/installercollection_remove.vb" id="Snippet1"::: + ]]> @@ -271,15 +271,15 @@ The index of the array at which to paste the collection. Copies the items from the collection to an array, beginning at the specified index. - method of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . The names of the assemblies to be installed are displayed on the console. The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. - + method of the class. It creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . The names of the assemblies to be installed are displayed on the console. The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_CopyTo/CPP/installercollection_copyto.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/CopyTo/installercollection_copyto.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_CopyTo/VB/installercollection_copyto.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_CopyTo/VB/installercollection_copyto.vb" id="Snippet1"::: + ]]> @@ -309,15 +309,15 @@ Determines the index of a specified installer in the collection. The zero-based index of the installer in the collection. - method. For more information on this example, please see the Example section of the method. - + method. For more information on this example, please see the Example section of the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Remove/CPP/installercollection_remove.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/Contains/installercollection_remove.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Remove/VB/installercollection_remove.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Remove/VB/installercollection_remove.vb" id="Snippet1"::: + ]]> @@ -348,15 +348,15 @@ The to insert. Inserts the specified installer into the collection at the specified index. - method. For more information on this example, please see the Example section of the method. - + method. For more information on this example, please see the Example section of the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Insert/CPP/installercollection_insert.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/AddRange/installercollection_insert.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Insert/VB/installercollection_insert.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Insert/VB/installercollection_insert.vb" id="Snippet1"::: + ]]> @@ -386,20 +386,20 @@ Gets or sets an installer at the specified index. An that represents the installer at the specified index. - is placed in the , the property of the is set to the that contains the collection. - - - -## Examples - The following example creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . The names of all the assemblies that are to be installed are displayed to the console. The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. - + is placed in the , the property of the is set to the that contains the collection. + + + +## Examples + The following example creates instances for `MyAssembly1.exe` and `MyAssembly2.exe`. These instances are added to a . The names of all the assemblies that are to be installed are displayed to the console. The installation process installs both `MyAssembly1.exe` and `MyAssembly2.exe`. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Item/CPP/installercollection_item.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/Item/installercollection_item.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Item/VB/installercollection_item.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Item/VB/installercollection_item.vb" id="Snippet1"::: + ]]> @@ -515,20 +515,20 @@ An that represents the installer to remove. Removes the specified from the collection. - property of the removed is set to `null`. - - - -## Examples - The following example is the same as the example in the method. For more information on this example, please see the Example section of the method. - + property of the removed is set to `null`. + + + +## Examples + The following example is the same as the example in the method. For more information on this example, please see the Example section of the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/InstallerCollection_Remove/CPP/installercollection_remove.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Configuration.Install/InstallerCollection/Contains/installercollection_remove.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Remove/VB/installercollection_remove.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/InstallerCollection_Remove/VB/installercollection_remove.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Configuration/ApplicationSettingsBase.xml b/xml/System.Configuration/ApplicationSettingsBase.xml index f6e7023645c..1767ce068e3 100644 --- a/xml/System.Configuration/ApplicationSettingsBase.xml +++ b/xml/System.Configuration/ApplicationSettingsBase.xml @@ -41,25 +41,25 @@ ## Remarks adds the following functionality to the class, which is used by Web-based applications: -- The ability to detect attributes on a derived, settings wrapper class. supports the declarative model used for wrapper class properties, as described later. +- The ability to detect attributes on a derived, settings wrapper class. supports the declarative model used for wrapper class properties, as described later. -- Higher-level and methods. +- Higher-level and methods. -- Additional validation events that you can handle to ensure the correctness of individual settings. +- Additional validation events that you can handle to ensure the correctness of individual settings. In the application settings architecture, to access a group of settings properties you need to derive a concrete wrapper class from . The wrapper class customizes in the following ways: -- For every settings property to be accessed, a corresponding strongly typed public property is added to the wrapper class. This property has `get` and `set` accessors for read/write application settings, but only a `get` accessor for read-only settings. +- For every settings property to be accessed, a corresponding strongly typed public property is added to the wrapper class. This property has `get` and `set` accessors for read/write application settings, but only a `get` accessor for read-only settings. -- Appropriated attributes must be applied to the wrapper class's public properties to indicate characteristics of the settings property, such as the setting's scope (application or user), whether the setting should support roaming, the default value for the setting, the settings provider to be used, and so on. Each property is required to specify its scope, using either or . Application-scoped settings are read-only if the default is used. +- Appropriated attributes must be applied to the wrapper class's public properties to indicate characteristics of the settings property, such as the setting's scope (application or user), whether the setting should support roaming, the default value for the setting, the settings provider to be used, and so on. Each property is required to specify its scope, using either or . Application-scoped settings are read-only if the default is used. The class uses reflection to detect these attributes at run time. Most of this information gets passed to the settings provider layer, which is responsible for storage, persistence format, and so on. When an application has multiple settings wrapper classes, each class defines a *settings group*. Each group has the following characteristics: -- A group can contain any number or type of property settings. +- A group can contain any number or type of property settings. -- If the group name is not explicitly set by the decorating the wrapper class with a , then a name is automatically generated. +- If the group name is not explicitly set by the decorating the wrapper class with a , then a name is automatically generated. By default, all client-based applications use the to provide storage. If an alternate settings provider is desired, then the wrapper class or property must be decorated with a corresponding . @@ -72,13 +72,13 @@ The form contains four child controls that have the following names and functions: -- A button named `btnBackColor` used to display the **Color** common dialog box. +- A button named `btnBackColor` used to display the **Color** common dialog box. -- A button named `btnReload` used to the application settings. +- A button named `btnReload` used to the application settings. -- A button named `btnReset` used to the application settings. +- A button named `btnReset` used to the application settings. -- A textbox named `tbStatus` used to display status information about the program. +- A textbox named `tbStatus` used to display status information about the program. Notice that after every execution of the application, an additional period character is appended to the title text of the form. @@ -448,9 +448,9 @@ raises several events depending on the operation being performed: -- The first time a property is retrieved, the event is raised. +- The first time a property is retrieved, the event is raised. -- When a property is set, the event is raised. If the handler does not cancel the event, then the property value is set and the event is raised. +- When a property is set, the event is raised. If the handler does not cancel the event, then the property value is set and the event is raised. ]]> @@ -900,9 +900,9 @@ ## Remarks The method clears the currently cached property values, causing a reload of these values from persistent storage when they are subsequently accessed. This method performs the following actions: -- It clears the currently cached properties by clearing the collection represented by the property. +- It clears the currently cached properties by clearing the collection represented by the property. -- It raises the event for every member of the collection. +- It raises the event for every member of the collection. contrasts with in that the former will load the last set of saved application settings values, whereas the latter will load the saved default values. @@ -962,9 +962,9 @@ ## Remarks The method overwrites the user-scoped settings properties by restoring the currently persisted value of each application settings. This method performs the following actions: -- It calls the method on every settings provider that supports this optional method. +- It calls the method on every settings provider that supports this optional method. -- It calls the method to force a refresh of the settings property values. +- It calls the method to force a refresh of the settings property values. contrasts with in that the former will load the last set of saved application settings values, whereas the latter will load the saved default values. @@ -1153,9 +1153,9 @@ Unless the settings wrapper class is designed using the singleton pattern, there can be multiple instances of the same application settings class in a single application. The value of should be set according to how the property values are intended to be shared. -- If the settings properties of the wrapper are intended to be shared across all instances of the wrapper in the same application, then should have the same value in all of the instances. This is the default behavior of the class. +- If the settings properties of the wrapper are intended to be shared across all instances of the wrapper in the same application, then should have the same value in all of the instances. This is the default behavior of the class. -- If the settings properties of the wrapper are intended to be per instance, then should have a unique value for every instance. The version of the constructor enables you to initialize to a unique string. +- If the settings properties of the wrapper are intended to be per instance, then should have a unique value for every instance. The version of the constructor enables you to initialize to a unique string. In contrast, the property provides hints to the settings provider to enable it to persist values in an efficient and orderly manner. @@ -1297,15 +1297,15 @@ ## Remarks The method performs two actions to assure smooth transition to a new version of an application: -- It notifies all of the corresponding settings providers of the existence of the upgraded application through a call to their method, assuming they have implemented the interface. This action is not performed if the settings wrapper class is marked with . +- It notifies all of the corresponding settings providers of the existence of the upgraded application through a call to their method, assuming they have implemented the interface. This action is not performed if the settings wrapper class is marked with . -- It reloads the values for all of the application settings. +- It reloads the values for all of the application settings. You can override the default behavior of to implement custom upgrading or merging behavior. Use the method to retrieve individual values for a setting for the previous version of the application. Examples of custom upgrade behavior include: -- Using new policy defaults that override one or more of the previous user-specified values or previous defaults. +- Using new policy defaults that override one or more of the previous user-specified values or previous defaults. -- Special translation of old values to be compatible with newer ranges, a different settings property group, and so on. +- Special translation of old values to be compatible with newer ranges, a different settings property group, and so on. ]]> diff --git a/xml/System.Configuration/Configuration.xml b/xml/System.Configuration/Configuration.xml index eb6e8e397b5..0c8083c45df 100644 --- a/xml/System.Configuration/Configuration.xml +++ b/xml/System.Configuration/Configuration.xml @@ -41,17 +41,17 @@ You can get a object by using the following classes: -- The class, if your entity is a client application. +- The class, if your entity is a client application. -- The class, if your entity is a Web application. +- The class, if your entity is a Web application. The names of the methods that return a object begin with "Open". You can also generate a configuration file that represents the configuration settings in a object. To do this, use one of the following methods: -- Call the method to create a new configuration file. +- Call the method to create a new configuration file. -- Call the method to generate a new configuration file at another location. +- Call the method to generate a new configuration file at another location. The names of the methods that create configuration files begin with "Save". @@ -73,9 +73,9 @@ You use the method or the method to read configuration information. Note that the user or process that reads must have the following permissions: -- Read permission on the configuration file at the current configuration hierarchy level. +- Read permission on the configuration file at the current configuration hierarchy level. -- Read permissions on all the parent configuration files. +- Read permissions on all the parent configuration files. If your application needs read-only access to its own configuration, it is recommended that you use the method overloads for Web applications. For client application, use the method. @@ -85,9 +85,9 @@ Note: If you use a static method that takes a path You use one of the methods to write configuration information. Note that the user or process that writes must have the following permissions: -- Write permission on the configuration file and directory at the current configuration hierarchy level. +- Write permission on the configuration file and directory at the current configuration hierarchy level. -- Read permissions on all the configuration files. +- Read permissions on all the configuration files. diff --git a/xml/System.Configuration/ConfigurationCollectionAttribute.xml b/xml/System.Configuration/ConfigurationCollectionAttribute.xml index 326b54216b8..ed42f446277 100644 --- a/xml/System.Configuration/ConfigurationCollectionAttribute.xml +++ b/xml/System.Configuration/ConfigurationCollectionAttribute.xml @@ -38,60 +38,60 @@ Declaratively instructs .NET to create an instance of a configuration element collection. This class cannot be inherited. - attribute to decorate a element. This instructs .NET to create an instance of the collection and to initialize it using your custom values. - + attribute to decorate a element. This instructs .NET to create an instance of the collection and to initialize it using your custom values. + > [!NOTE] -> The simplest way to create a custom configuration element is to use the attributed (declarative) model. You declare the elements and decorate them with the attribute. For each element marked with this attribute, .NET uses reflection to read the decorating parameters and create a related instance. You can also use the programmatic model. In this case it is your responsibility to declare the custom public collection but also to override the member and return the properties collection. - - The .NET configuration system provides attribute types that you can use during the creation of custom configuration elements. There are two kinds of attributes: - -- The attributes that instruct .NET how to create instances of the custom configuration element properties. These types include: - - - - - - - -- The attributes that instruct .NET how to validate the custom configuration element properties. These types include: - - - - - - - - - - - - - +> The simplest way to create a custom configuration element is to use the attributed (declarative) model. You declare the elements and decorate them with the attribute. For each element marked with this attribute, .NET uses reflection to read the decorating parameters and create a related instance. You can also use the programmatic model. In this case it is your responsibility to declare the custom public collection but also to override the member and return the properties collection. + + The .NET configuration system provides attribute types that you can use during the creation of custom configuration elements. There are two kinds of attributes: + +- The attributes that instruct .NET how to create instances of the custom configuration element properties. These types include: + + - + + - + +- The attributes that instruct .NET how to validate the custom configuration element properties. These types include: + + - + + - + + - + + - + - - -## Examples - The following example shows how to use the . - - This example consists of three classes: `UrlsSection`, `UrlsCollection`, and `UrlConfigElement`. The `UrlsSection` class uses the to define a custom configuration section. This section contains a URL collection (defined by the `UrlsCollection` class) of URL elements (defined by the `UrlConfigElement` class). When you run the example, an instance of the `UrlsSection` class is created and the following configuration elements are generated in the application configuration file: - -```xml - - -
- - - - - - - -. + + This example consists of three classes: `UrlsSection`, `UrlsCollection`, and `UrlConfigElement`. The `UrlsSection` class uses the to define a custom configuration section. This section contains a URL collection (defined by the `UrlsCollection` class) of URL elements (defined by the `UrlConfigElement` class). When you run the example, an instance of the `UrlsSection` class is created and the following configuration elements are generated in the application configuration file: + +```xml + + +
+ + + + + + + + @@ -133,19 +133,19 @@ The type of the property collection to create. Initializes a new instance of the class. - . - + . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/CS/customcollectionsection.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: + ]]> @@ -183,19 +183,19 @@ Gets or sets the name of the configuration element. The name that substitutes the standard name "add" for the configuration item. - property allows you to assign a different name to the configuration element. For example, you could use `addUrl` instead of "add". - - - -## Examples - The following example shows how to use the property. - + property allows you to assign a different name to the configuration element. For example, you could use `addUrl` instead of "add". + + + +## Examples + The following example shows how to use the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/CS/customcollectionsection.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: + ]]> @@ -231,19 +231,19 @@ Gets or sets the name for the configuration element. The name that replaces the standard name "clear" for the configuration item. - property allows you to assign a different name to the `` configuration element. For example, you could use `clearUrls` instead of "clear". - - - -## Examples - The following example shows how to use the . - + property allows you to assign a different name to the `` configuration element. For example, you could use `clearUrls` instead of "clear". + + + +## Examples + The following example shows how to use the . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/CS/customcollectionsection.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: + ]]> @@ -312,11 +312,11 @@ Gets the type of the collection element. The type of the collection element. - property is used by reflection to get the configuration element type. - + property is used by reflection to get the configuration element type. + ]]> @@ -352,19 +352,19 @@ Gets or sets the name for the configuration element. The name that replaces the standard name "remove" for the configuration element. - property allows you to assign a different name to the `` configuration element. For example, you could use `removeUrl` instead of "remove". - - - -## Examples - The following example shows how to use the property. - + property allows you to assign a different name to the `` configuration element. For example, you could use `removeUrl` instead of "remove". + + + +## Examples + The following example shows how to use the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/CS/customcollectionsection.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Configuration.ConfigurationCollectionAttribute/VB/customcollectionsection.vb" id="Snippet20"::: + ]]> diff --git a/xml/System.Configuration/ConfigurationElement.xml b/xml/System.Configuration/ConfigurationElement.xml index cb7ae77c977..951adea6d92 100644 --- a/xml/System.Configuration/ConfigurationElement.xml +++ b/xml/System.Configuration/ConfigurationElement.xml @@ -48,15 +48,15 @@ ## Examples The following code example shows how to implement a custom both as an individual element in a custom section and as a collection of elements in a custom section. The example consists of the following files: -- An app.config file that contains a custom section that is named `MyUrls`. This section contains a simple element (it does not contain any other elements) and a collection of elements. The simple element is named `simple` and the collection is named `urls`. +- An app.config file that contains a custom section that is named `MyUrls`. This section contains a simple element (it does not contain any other elements) and a collection of elements. The simple element is named `simple` and the collection is named `urls`. -- A console application. The application reads the contents of the app.config file and writes the information to the console. It uses classes that derive from , , and . +- A console application. The application reads the contents of the app.config file and writes the information to the console. It uses classes that derive from , , and . -- A class named `UrlsSection` that derives from the class. This class is used to access the `MyUrls` section in the configuration file. +- A class named `UrlsSection` that derives from the class. This class is used to access the `MyUrls` section in the configuration file. -- A class named `UrlsCollection` that derives from the class. This class is used to access the `urls` collection in the configuration file. +- A class named `UrlsCollection` that derives from the class. This class is used to access the `urls` collection in the configuration file. -- A class named `UrlConfigElement` that derives from the class. This class is used to access the `simple` element and the members of the `urls` collection in the configuration file. +- A class named `UrlConfigElement` that derives from the class. This class is used to access the `simple` element and the members of the `urls` collection in the configuration file. To run the example, perform the following steps: @@ -91,9 +91,9 @@ You can use either a programmatic or a declarative (attributed) coding model to create a custom configuration element: -- The programmatic model requires that for each element attribute, you create a property to get or set its value and add it to the internal property bag of the underlying base class. For an example of how to use this model, see the class. +- The programmatic model requires that for each element attribute, you create a property to get or set its value and add it to the internal property bag of the underlying base class. For an example of how to use this model, see the class. -- The simpler declarative model, also called the attributed model, allows you to define an element attribute by using a property and then decorate it with attributes. These attributes instruct the ASP.NET configuration system about the property types and their default values. With this information, obtained through reflection, the ASP.NET configuration system creates the element property objects for you and performs the required initialization. The example shown later in this topic shows how to use this model. +- The simpler declarative model, also called the attributed model, allows you to define an element attribute by using a property and then decorate it with attributes. These attributes instruct the ASP.NET configuration system about the property types and their default values. With this information, obtained through reflection, the ASP.NET configuration system creates the element property objects for you and performs the required initialization. The example shown later in this topic shows how to use this model. diff --git a/xml/System.Configuration/ConfigurationElementCollection.xml b/xml/System.Configuration/ConfigurationElementCollection.xml index 5d2a61a7f10..6f18cf7a554 100644 --- a/xml/System.Configuration/ConfigurationElementCollection.xml +++ b/xml/System.Configuration/ConfigurationElementCollection.xml @@ -1143,9 +1143,9 @@ If you create a custom collection that contains heterogeneous types, you must perform these steps: -- Override the method. +- Override the method. -- Make sure that the method returns a string that identifies the type of the element you created by calling the method. +- Make sure that the method returns a string that identifies the type of the element you created by calling the method. diff --git a/xml/System.Configuration/ConfigurationManager.xml b/xml/System.Configuration/ConfigurationManager.xml index ed2570518cc..65e5be89aa8 100644 --- a/xml/System.Configuration/ConfigurationManager.xml +++ b/xml/System.Configuration/ConfigurationManager.xml @@ -47,11 +47,11 @@ The class includes members that enable you to perform the following tasks: -- Read a section from a configuration file. To access configuration information, call the method. For some sections such as `appSettings` and `connectionStrings`, use the and classes. These members perform read-only operations, use a single cached instance of the configuration, and are multithread aware. +- Read a section from a configuration file. To access configuration information, call the method. For some sections such as `appSettings` and `connectionStrings`, use the and classes. These members perform read-only operations, use a single cached instance of the configuration, and are multithread aware. -- Read and write configuration files as a whole. Your application can read and write configuration settings at any level, for itself or for other applications or computers, locally or remotely. Use one of the methods provided by the class to open a configuration file such as SampleApp.exe.config. These methods return a object that in turn exposes methods and properties you can use to work with the associated configuration files. The methods perform read or write operations and create the configuration data every time that a file is written. +- Read and write configuration files as a whole. Your application can read and write configuration settings at any level, for itself or for other applications or computers, locally or remotely. Use one of the methods provided by the class to open a configuration file such as SampleApp.exe.config. These methods return a object that in turn exposes methods and properties you can use to work with the associated configuration files. The methods perform read or write operations and create the configuration data every time that a file is written. -- Support configuration tasks. The following types are used to support various configuration tasks: +- Support configuration tasks. The following types are used to support various configuration tasks: - @@ -286,17 +286,17 @@ End Module To read the configuration files, use or . The user or process that reads must have the following permissions: -- Read permission on the configuration file at the current configuration hierarchy level. +- Read permission on the configuration file at the current configuration hierarchy level. -- Read permissions on all the parent configuration files. +- Read permissions on all the parent configuration files. If your application needs read-only access to its own configuration, we recommend that you use the method. This method provides access to the cached configuration values for the current application, which has better performance than the class. To write to the configuration files, use one of the methods. The user or process that writes must have the following permissions: -- Write permission on the configuration file and directory at the current configuration hierarchy level. +- Write permission on the configuration file and directory at the current configuration hierarchy level. -- Read permissions on all the configuration files. +- Read permissions on all the configuration files. @@ -714,11 +714,11 @@ End Module Specify which configuration to get by passing one of the following values for `userLevel`: -- To get the object that applies to all users, set `userLevel` to . +- To get the object that applies to all users, set `userLevel` to . -- To get the local object that applies to the current user, set `userLevel` to . +- To get the local object that applies to the current user, set `userLevel` to . -- To get the roaming object that applies to the current user, set `userLevel` to . +- To get the roaming object that applies to the current user, set `userLevel` to . > [!NOTE] > To get the object for a resource, your code must have read permissions on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write permissions for both the configuration file and the directory in which it exists. diff --git a/xml/System.Configuration/ConfigurationProperty.xml b/xml/System.Configuration/ConfigurationProperty.xml index b7b63665029..8dd6d282e33 100644 --- a/xml/System.Configuration/ConfigurationProperty.xml +++ b/xml/System.Configuration/ConfigurationProperty.xml @@ -80,9 +80,9 @@ You can use a programmatic or a declarative (attributed) coding model to create a custom configuration element. -- Programmatic Model. This model requires that you create a property for each element attribute to get and/or set its value and add it to the internal property bag of the underlying base class. +- Programmatic Model. This model requires that you create a property for each element attribute to get and/or set its value and add it to the internal property bag of the underlying base class. -- Declarative Model. This simpler model, also called attributed model, allows you to define an element attribute by using a property and decorate it with attributes. These attributes instruct the ASP.NET configuration system about the property types and their default values. With this information, obtained through reflection, the ASP.NET configuration system creates the element property objects for you and performs the required initialization. +- Declarative Model. This simpler model, also called attributed model, allows you to define an element attribute by using a property and decorate it with attributes. These attributes instruct the ASP.NET configuration system about the property types and their default values. With this information, obtained through reflection, the ASP.NET configuration system creates the element property objects for you and performs the required initialization. diff --git a/xml/System.Configuration/ConfigurationSection.xml b/xml/System.Configuration/ConfigurationSection.xml index d4fed14b566..67c3e01ce5d 100644 --- a/xml/System.Configuration/ConfigurationSection.xml +++ b/xml/System.Configuration/ConfigurationSection.xml @@ -69,13 +69,13 @@ You can use a programmatic or a declarative (attributed) coding model to create custom configuration sections: -- Programmatic model. This model requires that for each section attribute you create a property to get or set its value and add it to the internal property bag of the underlying base class. +- Programmatic model. This model requires that for each section attribute you create a property to get or set its value and add it to the internal property bag of the underlying base class. -- Declarative model. This simpler model, also called the attributed model, allows you to define a section attribute by using a property and decorating it with attributes. These attributes instruct the ASP.NET configuration system about the property types and their default values. With this information, obtained through reflection, the ASP.NET configuration system creates the section property objects and performs the required initialization. +- Declarative model. This simpler model, also called the attributed model, allows you to define a section attribute by using a property and decorating it with attributes. These attributes instruct the ASP.NET configuration system about the property types and their default values. With this information, obtained through reflection, the ASP.NET configuration system creates the section property objects and performs the required initialization. The class allows programmatic access for editing configuration files. You can access these files for reading or writing as follows: -- Reading. You use or to read configuration information. Note that the user or process that reads must have the following permissions: +- Reading. You use or to read configuration information. Note that the user or process that reads must have the following permissions: - Read permission on the configuration file at the current configuration hierarchy level. @@ -87,7 +87,7 @@ Note: If you use a static method that takes a parameter, the parameter must refer to the application in which the code is running; otherwise, the parameter is ignored and configuration information for the currently-running application is returned. -- Writing. You use one of the methods to write configuration information. Note that the user or process that writes must have the following permissions: +- Writing. You use one of the methods to write configuration information. Note that the user or process that writes must have the following permissions: - Write permission on the configuration file and directory at the current configuration hierarchy level. diff --git a/xml/System.Configuration/IApplicationSettingsProvider.xml b/xml/System.Configuration/IApplicationSettingsProvider.xml index 42ae92224bf..23b12cc927a 100644 --- a/xml/System.Configuration/IApplicationSettingsProvider.xml +++ b/xml/System.Configuration/IApplicationSettingsProvider.xml @@ -35,11 +35,11 @@ ## Remarks The application settings architecture enables you to provide a custom storage mechanism for application settings by creating a custom settings provider, which is a class derived from . Such a class contains the basic functionality for storing and retrieving properties. However, you can add additional standardized functionality by implementing the interface in the custom settings provider. This interface contains three methods that primarily enable the settings provider to more intelligently handle application version changes. Typically, the settings provider will store application settings for different versions of an application separately to anticipate the following circumstances: -- Side-by-side execution of different versions of an application. +- Side-by-side execution of different versions of an application. -- Retaining application settings when upgrading an application. +- Retaining application settings when upgrading an application. -- Resetting the application settings to their default values for the currently used version. +- Resetting the application settings to their default values for the currently used version. The class implements the interface. The same set of methods contained by is also found in the class, enabling the establishment of a predefined communication channel between an application settings wrapper and its settings provider. diff --git a/xml/System.Configuration/IPersistComponentSettings.xml b/xml/System.Configuration/IPersistComponentSettings.xml index abba951bd0b..9b589d26e66 100644 --- a/xml/System.Configuration/IPersistComponentSettings.xml +++ b/xml/System.Configuration/IPersistComponentSettings.xml @@ -77,9 +77,9 @@ ## Remarks In general, the method performs two essential operations: -- It causes each application settings instance contained by the control to refresh the values of its application settings properties, typically by calling their methods. +- It causes each application settings instance contained by the control to refresh the values of its application settings properties, typically by calling their methods. -- As required, it updates those general properties that depend on these reloaded settings properties. For example, if the settings class contained a `location` settings property, should ensure that the control's property is updated to reflect this reloaded setting. +- As required, it updates those general properties that depend on these reloaded settings properties. For example, if the settings class contained a `location` settings property, should ensure that the control's property is updated to reflect this reloaded setting. ]]> @@ -290,13 +290,13 @@ The following general rules apply to the use of : -- A control, like any class, may contain zero or more application settings classes, derived from . Each settings class contains its own property, which helps disambiguate multiple instances of that class. +- A control, like any class, may contain zero or more application settings classes, derived from . Each settings class contains its own property, which helps disambiguate multiple instances of that class. -- A control should separate its per-instance data and its shared data into different settings classes. +- A control should separate its per-instance data and its shared data into different settings classes. -- For a control with any per-instance configuration data, the `get` accessor of the property should default to the of the control. In most cases the name of the control will be unique within an application. If the control contains only shared configuration data, `get` should default to `null`. +- For a control with any per-instance configuration data, the `get` accessor of the property should default to the of the control. In most cases the name of the control will be unique within an application. If the control contains only shared configuration data, `get` should default to `null`. -- The `set` accessor for this property should be implemented to distinguish between settings classes containing per-instance and shared configuration data. For each settings class containing per-instance data, `set` should just pass-through to the property of the settings class. For settings classes containing shared data, `set` should perform no action for that settings class. +- The `set` accessor for this property should be implemented to distinguish between settings classes containing per-instance and shared configuration data. For each settings class containing per-instance data, `set` should just pass-through to the property of the settings class. For settings classes containing shared data, `set` should perform no action for that settings class. ]]> diff --git a/xml/System.Configuration/LocalFileSettingsProvider.xml b/xml/System.Configuration/LocalFileSettingsProvider.xml index 6027402b57d..1a303a084ff 100644 --- a/xml/System.Configuration/LocalFileSettingsProvider.xml +++ b/xml/System.Configuration/LocalFileSettingsProvider.xml @@ -335,9 +335,9 @@ ## Remarks The method restores the stored values of the specified application settings group. The action of depends on the scope of the application settings property: -- Application-scoped settings are not affected. +- Application-scoped settings are not affected. -- User-scoped settings are reset to the default values that are stored as read-only entries in the application configuration file, `application.exe.config`. If roaming profiles are being used, any application settings values in the roaming profile take precedence over duplicates found in the local profile. +- User-scoped settings are reset to the default values that are stored as read-only entries in the application configuration file, `application.exe.config`. If roaming profiles are being used, any application settings values in the roaming profile take precedence over duplicates found in the local profile. Notice that if roaming profiles are used, there can be two `user.config` files, one for the local settings and one for the roaming profile. @@ -468,9 +468,9 @@ This way this method is called depends on the type of application that is being upgraded: -- Each version of a ClickOnce application is stored in its own isolated installation directory. After a new version of a ClickOnce application is installed, and when the new version is first run, internal logic will automatically call to migrate all common application settings to the new version. For more information, see [ClickOnce and Application Settings](/visualstudio/deployment/clickonce-and-application-settings). +- Each version of a ClickOnce application is stored in its own isolated installation directory. After a new version of a ClickOnce application is installed, and when the new version is first run, internal logic will automatically call to migrate all common application settings to the new version. For more information, see [ClickOnce and Application Settings](/visualstudio/deployment/clickonce-and-application-settings). -- Standard Windows Forms and console applications must manually call , because there is not a general, automatic way to determine when such an application is first run. The two common ways to do this are either from the installation program or using from the application itself, using a persisted property, often named something like `IsFirstRun`. +- Standard Windows Forms and console applications must manually call , because there is not a general, automatic way to determine when such an application is first run. The two common ways to do this are either from the installation program or using from the application itself, using a persisted property, often named something like `IsFirstRun`. Note that for the newer version to migrate application settings, it must be able to also load and read the older version of the application settings. Therefore, it must contain wrapper classes compatible with both the new and previous versions of the application. diff --git a/xml/System.Configuration/SectionInformation.xml b/xml/System.Configuration/SectionInformation.xml index d9973b35125..01be2163855 100644 --- a/xml/System.Configuration/SectionInformation.xml +++ b/xml/System.Configuration/SectionInformation.xml @@ -330,11 +330,11 @@ A implementation can optionally specify a separate file in which the configuration settings for that section are defined. This can be useful in multiple ways: -- Using include files can result in a more logical and modular structure for configuration files. +- Using include files can result in a more logical and modular structure for configuration files. -- File-access security and permissions can be used to restrict access to sections of configuration settings. +- File-access security and permissions can be used to restrict access to sections of configuration settings. -- Settings in an include file that are not used during application initialization can be modified and reloaded without requiring an application restart. +- Settings in an include file that are not used during application initialization can be modified and reloaded without requiring an application restart. The following example shows how this attribute is used in a configuration file to specify that the `pages` section is defined in an external include file: diff --git a/xml/System.Configuration/SettingsDescriptionAttribute.xml b/xml/System.Configuration/SettingsDescriptionAttribute.xml index 1171616f83a..4685af77b5e 100644 --- a/xml/System.Configuration/SettingsDescriptionAttribute.xml +++ b/xml/System.Configuration/SettingsDescriptionAttribute.xml @@ -38,13 +38,13 @@ Provides a string that describes an individual configuration property. This class cannot be inherited. - is intended to assist both design time tools and administrative run time tools in identifying and describing the associated configuration property. - - This attribute is optional and can only be applied at the individual configuration property level. - + is intended to assist both design time tools and administrative run time tools in identifying and describing the associated configuration property. + + This attribute is optional and can only be applied at the individual configuration property level. + ]]> @@ -87,15 +87,15 @@ The used as descriptive text. Initializes an instance of the class. - class, whose length is represented by a , the following two practical considerations will limit the size of the `description` parameter: - -- Large text descriptions are difficult to display in a user interface (UI) and difficult for the user to read. - -- Settings providers may enforce overall usage quotas and are required to enforce user configuration quotas. - + class, whose length is represented by a , the following two practical considerations will limit the size of the `description` parameter: + +- Large text descriptions are difficult to display in a user interface (UI) and difficult for the user to read. + +- Settings providers may enforce overall usage quotas and are required to enforce user configuration quotas. + ]]> @@ -138,11 +138,11 @@ Gets the descriptive text for the associated configuration property. A containing the descriptive text for the associated configuration property. - property is set by the constructor. - + property is set by the constructor. + ]]> diff --git a/xml/System.Configuration/SettingsProperty.xml b/xml/System.Configuration/SettingsProperty.xml index e61e2e09db2..81fdaaa70cb 100644 --- a/xml/System.Configuration/SettingsProperty.xml +++ b/xml/System.Configuration/SettingsProperty.xml @@ -32,27 +32,27 @@ Used internally as the class that represents metadata about an individual configuration property. - is used to describe settings properties of a class derived from . The Settings API allows a collection of settings properties to be grouped into a common language runtime class. - - When persisting settings, the base class asks for a collection of objects, grouped in a collection of type . It does this by calling its own Properties member. Inherited classes should return a collection of properties to persist. - - Each object includes metadata about the property, including the following: - -- Name. - -- Default value. - -- Property type. - -- Serialization method. - -- Provider to use for persistence. - -- Other arbitrary attributes that are context and provider specific. - + is used to describe settings properties of a class derived from . The Settings API allows a collection of settings properties to be grouped into a common language runtime class. + + When persisting settings, the base class asks for a collection of objects, grouped in a collection of type . It does this by calling its own Properties member. Inherited classes should return a collection of properties to persist. + + Each object includes metadata about the property, including the following: + +- Name. + +- Default value. + +- Property type. + +- Serialization method. + +- Provider to use for persistence. + +- Other arbitrary attributes that are context and provider specific. + ]]> @@ -227,11 +227,11 @@ Gets a object containing the attributes of the object. A object. - object. - + object. + ]]> @@ -321,11 +321,11 @@ if the is read-only; otherwise, . - @@ -371,11 +371,11 @@ Gets or sets the name of the . The name of the . - cannot be an empty string or `null`. If the does not exist in the data provider, nothing can be returned. - + cannot be an empty string or `null`. If the does not exist in the data provider, nothing can be returned. + ]]> @@ -507,11 +507,11 @@ Gets or sets a object for the . A object. - object is an enumeration used as the serialization scheme to store application settings. - + object is an enumeration used as the serialization scheme to store application settings. + ]]> diff --git a/xml/System.Configuration/SettingsProvider.xml b/xml/System.Configuration/SettingsProvider.xml index ad2b73f58eb..9da04fb4409 100644 --- a/xml/System.Configuration/SettingsProvider.xml +++ b/xml/System.Configuration/SettingsProvider.xml @@ -245,9 +245,9 @@ The method should be implemented with security in mind: -- Only fully trusted code should be allowed to update application settings. Partially trusted code should be allowed to update only user application settings. Untrusted code is not typically allowed to update application settings. +- Only fully trusted code should be allowed to update application settings. Partially trusted code should be allowed to update only user application settings. Untrusted code is not typically allowed to update application settings. -- Usage quotas should be considered to guard against resource attacks by partially trusted applications. +- Usage quotas should be considered to guard against resource attacks by partially trusted applications. ]]> diff --git a/xml/System.Configuration/SettingsSerializeAsAttribute.xml b/xml/System.Configuration/SettingsSerializeAsAttribute.xml index ff71a33ce4b..ca9613dfbcc 100644 --- a/xml/System.Configuration/SettingsSerializeAsAttribute.xml +++ b/xml/System.Configuration/SettingsSerializeAsAttribute.xml @@ -38,15 +38,15 @@ Specifies the serialization mechanism that the settings provider should use. This class cannot be inherited. - enumeration, and include plain text, XML, and binary serialization. In addition, a provider may optionally support a custom serialization scheme. - - With the , you can specify which serialization mechanism should be used for a given application settings class or property. This attribute is considered a request to the settings provider. It may be ignored or cause an error if the provider or the individual property type does not support the specified serialization scheme. If this attribute is not present, the provider will usually provide a default serialization mechanism, most commonly plain text. - - Although the settings provider may provide a way to dynamically change the serialization mechanism during run time, this is not a typical capability. - + enumeration, and include plain text, XML, and binary serialization. In addition, a provider may optionally support a custom serialization scheme. + + With the , you can specify which serialization mechanism should be used for a given application settings class or property. This attribute is considered a request to the settings provider. It may be ignored or cause an error if the provider or the individual property type does not support the specified serialization scheme. If this attribute is not present, the provider will usually provide a default serialization mechanism, most commonly plain text. + + Although the settings provider may provide a way to dynamically change the serialization mechanism during run time, this is not a typical capability. + ]]> @@ -93,17 +93,17 @@ A enumerated value that specifies the serialization scheme. Initializes an instance of the class. - @@ -146,11 +146,11 @@ Gets the enumeration value that specifies the serialization scheme. A enumerated value that specifies the serialization scheme. - constructor. - + constructor. + ]]> diff --git a/xml/System.Data.Common/DBDataPermission.xml b/xml/System.Data.Common/DBDataPermission.xml index e23cb59fd16..95293a7eec6 100644 --- a/xml/System.Data.Common/DBDataPermission.xml +++ b/xml/System.Data.Common/DBDataPermission.xml @@ -263,11 +263,11 @@ to indicate that a blank password is allowed; otherwise, . Initializes a new instance of the class with the specified value, and a value indicating whether a blank password is allowed. - enumeration takes precedence over the property. Therefore, if you set to `false`, you must also set to `None` to prevent a user from making a connection using a blank password. - + enumeration takes precedence over the property. Therefore, if you set to `false`, you must also set to `None` to prevent a user from making a connection using a blank password. + ]]> ADO.NET Overview @@ -313,19 +313,19 @@ One of the properties. Adds access for the specified connection string to the existing state of the . - ADO.NET Overview @@ -365,11 +365,11 @@ if a blank password is allowed, otherwise, . - enumeration takes precedence over the property. Therefore, if you set to `false`, you must also set to `None` to prevent a user from making a connection using a blank password. - + enumeration takes precedence over the property. Therefore, if you set to `false`, you must also set to `None` to prevent a user from making a connection using a blank password. + ]]> ADO.NET Overview @@ -445,11 +445,11 @@ Creates and returns an identical copy of the current permission object. A copy of the current permission object. - ADO.NET Overview @@ -528,11 +528,11 @@ The XML encoding to use to reconstruct the security object. Reconstructs a security object with a specified state from an XML encoding. - ADO.NET Overview @@ -575,11 +575,11 @@ Returns a new permission object representing the intersection of the current permission object and the specified permission object. A new permission object that represents the intersection of the current permission object and the specified permission object. This new permission object is a null reference ( in Visual Basic) if the intersection is empty. - The parameter is not a null reference ( in Visual Basic) and is not an instance of the same class as the current permission object. @@ -624,11 +624,11 @@ if the current permission object is a subset of the specified permission object, otherwise . - The parameter is an object that is not of the same type as the current permission object. @@ -710,11 +710,11 @@ Creates an XML encoding of the security object and its current state. An XML encoding of the security object, including any state information. - and methods to make the objects security encodable. - + and methods to make the objects security encodable. + ]]> ADO.NET Overview @@ -757,11 +757,11 @@ Returns a new permission object that is the union of the current and specified permission objects. A new permission object that represents the union of the current permission object and the specified permission object. - is a permission that represents all the operations permitted by both the current permission object and the specified permission object. Any demand that passes either permission passes their union. - + is a permission that represents all the operations permitted by both the current permission object and the specified permission object. Any demand that passes either permission passes their union. + ]]> The object is not the same type as the current permission object. diff --git a/xml/System.Data.Common/DataAdapter.xml b/xml/System.Data.Common/DataAdapter.xml index ec71b7e3884..41725f42548 100644 --- a/xml/System.Data.Common/DataAdapter.xml +++ b/xml/System.Data.Common/DataAdapter.xml @@ -870,9 +870,9 @@ ## Remarks The **FillError** event allows a user to determine whether or not the fill operation should continue after the error occurs. Examples of when the **FillError** event might occur are: -- The data being added to a `DataSet` cannot be converted to a common language runtime type without losing precision. +- The data being added to a `DataSet` cannot be converted to a common language runtime type without losing precision. -- The row being added contains data that violates a Constraint that must be enforced on a `DataColumn` in the `DataSet`. +- The row being added contains data that violates a Constraint that must be enforced on a `DataColumn` in the `DataSet`. ]]> @@ -1019,11 +1019,11 @@ also configures the and properties according to the following rules: -- If one or more primary key columns are returned by the , they are used as the primary key columns for the . +- If one or more primary key columns are returned by the , they are used as the primary key columns for the . -- If no primary key columns are returned but unique columns are, the unique columns are used as the primary key if, and only if, all the unique columns are nonnullable. If any of the columns are nullable, a is added to the , but the property is not set. +- If no primary key columns are returned but unique columns are, the unique columns are used as the primary key if, and only if, all the unique columns are nonnullable. If any of the columns are nullable, a is added to the , but the property is not set. -- If both primary key columns and unique columns are returned, the primary key columns are used as the primary key columns for the . +- If both primary key columns and unique columns are returned, the primary key columns are used as the primary key columns for the . > [!NOTE] > The underlying data store may allow column attributes that are not supported in a , which causes some column attributes to not translate correctly. For example, SQL Server allows an identity column with a data type of tinyint whereas a only allows Int16, Int32, and Int64 to have the property set. `FillSchema` silently ignores cases where the cannot accurately mirror the data source and throws no exception. diff --git a/xml/System.Data.Common/DbCommandBuilder.xml b/xml/System.Data.Common/DbCommandBuilder.xml index be94a8a1a7f..d68a3c95708 100644 --- a/xml/System.Data.Common/DbCommandBuilder.xml +++ b/xml/System.Data.Common/DbCommandBuilder.xml @@ -573,11 +573,11 @@ When the `disposing` parameter is `true`, this method releases all resources hel The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: -- The has been specified and its length is equal to or greater than the generated parameter name. +- The has been specified and its length is equal to or greater than the generated parameter name. -- The generated parameter name meets the criteria specified in the regular expression. +- The generated parameter name meets the criteria specified in the regular expression. -- A is specified. +- A is specified. ]]> @@ -718,11 +718,11 @@ When the `disposing` parameter is `true`, this method releases all resources hel The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. Generation of the parameters based on column names succeeds only if the following conditions are met: -- The has been specified and its length is equal to or greater than the generated parameter name. +- The has been specified and its length is equal to or greater than the generated parameter name. -- The generated parameter name meets the criteria specified in the regular expression. +- The generated parameter name meets the criteria specified in the regular expression. -- A is specified. +- A is specified. ]]> @@ -1079,11 +1079,11 @@ When the `disposing` parameter is `true`, this method releases all resources hel The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. Generation of the parameters based on column names succeeds only if the following conditions are met: -- The has been specified and its length is equal to or greater than the generated parameter name. +- The has been specified and its length is equal to or greater than the generated parameter name. -- The generated parameter name meets the criteria specified in the regular expression. +- The generated parameter name meets the criteria specified in the regular expression. -- A is specified. +- A is specified. ]]> diff --git a/xml/System.Data.Common/DbConnectionStringBuilder.xml b/xml/System.Data.Common/DbConnectionStringBuilder.xml index 68043db134c..be612474810 100644 --- a/xml/System.Data.Common/DbConnectionStringBuilder.xml +++ b/xml/System.Data.Common/DbConnectionStringBuilder.xml @@ -689,13 +689,13 @@ initial catalog="AdventureWorks;NewValue=Bad" ## Examples The following example demonstrates possible behaviors of the property. The example: -- Creates a connection string by adding key/value pairs, one at a time, to an empty . +- Creates a connection string by adding key/value pairs, one at a time, to an empty . -- Assigns a complete connection string to the property of the instance, and modifies a single key/value pair within the string. +- Assigns a complete connection string to the property of the instance, and modifies a single key/value pair within the string. -- Assigns an arbitrary set of key/value pairs to the property (that is, a string that is not anything remotely like a connection string), and modifies one of the values. +- Assigns an arbitrary set of key/value pairs to the property (that is, a string that is not anything remotely like a connection string), and modifies one of the values. -- Assigns an invalid connection string to the property, demonstrating the exception that is thrown. +- Assigns an invalid connection string to the property, demonstrating the exception that is thrown. > [!NOTE] > This example includes a password to demonstrate how works with connection strings. In your applications, we recommend that you use Windows Authentication. If you must use a password, do not include a hard-coded password in your application. diff --git a/xml/System.Data.Common/RowUpdatedEventArgs.xml b/xml/System.Data.Common/RowUpdatedEventArgs.xml index 135518e89ad..f8d252cedc2 100644 --- a/xml/System.Data.Common/RowUpdatedEventArgs.xml +++ b/xml/System.Data.Common/RowUpdatedEventArgs.xml @@ -54,11 +54,11 @@ Provides data for the event of a .NET data provider. - to a row is completed. - + to a row is completed. + ]]> Manipulating Data in a DataTable @@ -184,11 +184,11 @@ Lets you access the rows processed during a batch update operation. - Manipulating Data in a DataTable @@ -236,13 +236,13 @@ The array of to copy into. Copies references to the modified rows into the provided array. - in length. - - Throws an for a null instance of . - + in length. + + Throws an for a null instance of . + ]]> Manipulating Data in a DataTable @@ -292,13 +292,13 @@ The index in the array to start copying into. Copies references to the modified rows into the provided array. - + `arrayIndex` in length. - - Throws an for a null instance of . - + + `arrayIndex` in length. + + Throws an for a null instance of . + ]]> Manipulating Data in a DataTable @@ -437,11 +437,11 @@ Gets the sent through an . The sent through an . - Manipulating Data in a DataTable @@ -530,19 +530,19 @@ Gets the type of SQL statement executed. The type of SQL statement executed. - can be one of the following values: - -- Select - -- Insert - -- Update - -- Delete - + can be one of the following values: + +- Select + +- Insert + +- Update + +- Delete + ]]> Manipulating Data in a DataTable diff --git a/xml/System.Data.Common/RowUpdatingEventArgs.xml b/xml/System.Data.Common/RowUpdatingEventArgs.xml index 9dcf2da6247..ecba5c609f4 100644 --- a/xml/System.Data.Common/RowUpdatingEventArgs.xml +++ b/xml/System.Data.Common/RowUpdatingEventArgs.xml @@ -54,11 +54,11 @@ Provides the data for the **RowUpdating** event of a .NET data provider. - to a row begins. - + to a row begins. + ]]> @@ -165,11 +165,11 @@ Gets or sets the object for an instance of this class. The to execute during the . - object assignment. Only valid objects, for example a object, should be permitted. - + object assignment. Only valid objects, for example a object, should be permitted. + ]]> ADO.NET Overview @@ -348,19 +348,19 @@ Gets the type of SQL statement to execute. The type of SQL statement to execute. - can be one of the following values: - -- Select - -- Insert - -- Update - -- Delete - + can be one of the following values: + +- Select + +- Insert + +- Update + +- Delete + ]]> ADO.NET Overview diff --git a/xml/System.Data.Linq.Mapping/ColumnAttribute.xml b/xml/System.Data.Linq.Mapping/ColumnAttribute.xml index efa5d46b775..7c24450ffe7 100644 --- a/xml/System.Data.Linq.Mapping/ColumnAttribute.xml +++ b/xml/System.Data.Linq.Mapping/ColumnAttribute.xml @@ -23,69 +23,69 @@ Associates a class with a column in a database table. - _ -Public Class Employees - Private _LastName As String - ' … - _ - Public Property LastName() As String - Get - Return Me._LastName - End Get - Set - If ((Me._LastName = value) _ - = false) Then - Me.OnPropertyChanging("LastName") - Me._LastName = value - Me.OnPropertyChanged("LastName") - End If - End Set - End Property -End Class -``` - -```csharp -[Table(Name="Employees")] -public class Employees -{ - private string _LastName; - // … - [Column(Storage="_LastName", DbType="NVarChar(20) NOT NULL", - CanBeNull=false)] - public string LastName - { - get - { - return this._LastName; - } - set - { - if ((this._LastName != value)) - { - this.OnPropertyChanging("LastName"); - this._LastName = value; - this.OnPropertyChanged("LastName"); - } - } - } -} -``` - + _ +Public Class Employees + Private _LastName As String + ' … + _ + Public Property LastName() As String + Get + Return Me._LastName + End Get + Set + If ((Me._LastName = value) _ + = false) Then + Me.OnPropertyChanging("LastName") + Me._LastName = value + Me.OnPropertyChanged("LastName") + End If + End Set + End Property +End Class +``` + +```csharp +[Table(Name="Employees")] +public class Employees +{ + private string _LastName; + // … + [Column(Storage="_LastName", DbType="NVarChar(20) NOT NULL", + CanBeNull=false)] + public string LastName + { + get + { + return this._LastName; + } + set + { + if ((this._LastName != value)) + { + this.OnPropertyChanging("LastName"); + this._LastName = value; + this.OnPropertyChanged("LastName"); + } + } + } +} +``` + ]]> @@ -138,12 +138,12 @@ public class Employees Gets or sets the enumeration. The value. - @@ -174,20 +174,20 @@ public class Employees Gets or sets whether a column can contain null values. Default = . - [!NOTE] -> This property is duplicated from the property for convenience. The method uses only the property. For this reason, you must specify whether a column can contain null values in the property also. - - - -## Examples +> This property is duplicated from the property for convenience. The method uses only the property. For this reason, you must specify whether a column can contain null values in the property also. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/ColumnAttribute/AutoSync/northwind.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet2"::: + ]]> @@ -222,19 +222,19 @@ public class Employees Gets or sets the type of the database column. String value that specifies the exact text that defines the column in a Transact-SQL table declaration. - property only if you plan to use to create an instance of the database. - - The default value of is inferred from the member type. For more information, see [SQL-CLR Type Mapping](/dotnet/framework/data/adonet/sql/linq/sql-clr-type-mapping). - - - -## Examples + property only if you plan to use to create an instance of the database. + + The default value of is inferred from the member type. For more information, see [SQL-CLR Type Mapping](/dotnet/framework/data/adonet/sql/linq/sql-clr-type-mapping). + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/ColumnAttribute/AutoSync/northwind.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet4"::: + ]]> @@ -269,22 +269,22 @@ public class Employees Gets or sets whether a column is a computed column in a database. Default = empty. - to define a column as containing computed values. - - For example, if you want to create a column defined in SQL as `InventoryVal AS UnitPrice * UnitsInStock`, use the following *expression* string: `"UnitPrice * UnitsInStock"`. - + to define a column as containing computed values. + + For example, if you want to create a column defined in SQL as `InventoryVal AS UnitPrice * UnitsInStock`, use the following *expression* string: `"UnitPrice * UnitsInStock"`. + > [!NOTE] -> LINQ to SQL does not support computed columns as primary keys. - - - -## Examples +> LINQ to SQL does not support computed columns as primary keys. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/ColumnAttribute/AutoSync/northwind.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet5"::: + ]]> @@ -319,20 +319,20 @@ public class Employees Gets or sets whether a column contains values that the database auto-generates. Default = . - members are synchronized immediately after the row of data is inserted, and the members are available after is completed. - + members are synchronized immediately after the row of data is inserted, and the members are available after is completed. + > [!NOTE] -> If the column holds primary key values and you designate as `true`, you should also add the property by using the `IDENTITY` modifier. - - - -## Examples +> If the column holds primary key values and you designate as `true`, you should also add the property by using the `IDENTITY` modifier. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/ColumnAttribute/AutoSync/northwind.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet6"::: + ]]> @@ -367,19 +367,19 @@ public class Employees Gets or sets whether a column contains a discriminator value for a LINQ to SQL inheritance hierarchy. Default = . - @@ -414,22 +414,22 @@ public class Employees Gets or sets whether this class member represents a column that is part or all of the primary key of the table. Default = . - [!NOTE] -> LINQ to SQL does not support computed columns as primary keys. - - - -## Examples +> LINQ to SQL does not support computed columns as primary keys. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/ColumnAttribute/AutoSync/northwind.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet8"::: + ]]> @@ -464,23 +464,23 @@ public class Employees Gets or sets whether the column type of the member is a database timestamp or version number. Default value = . - to specify the correct modifiers to designate a version number or timestamp column. If you do not specify , LINQ to SQL infers the correct modifiers. - - Version numbers are incremented and timestamp columns are updated every time that the associated row is updated. Members with `IsVersion=true` are synchronized immediately after the data row is updated. The new values are visible after finishes. - - - -## Examples + to specify the correct modifiers to designate a version number or timestamp column. If you do not specify , LINQ to SQL infers the correct modifiers. + + Version numbers are incremented and timestamp columns are updated every time that the associated row is updated. Members with `IsVersion=true` are synchronized immediately after the data row is updated. The new values are visible after finishes. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/ColumnAttribute/AutoSync/northwind.cs" id="Snippet9"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet9"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.ColumnAttribute/vb/northwind.vb" id="Snippet9"::: + ]]> @@ -513,31 +513,31 @@ public class Employees Gets or sets how LINQ to SQL approaches the detection of optimistic concurrency conflicts. - Default = , unless is for a member. - + Default = , unless is for a member. + Other values are and . - diff --git a/xml/System.Data.Linq.Mapping/InheritanceMappingAttribute.xml b/xml/System.Data.Linq.Mapping/InheritanceMappingAttribute.xml index ce920e8e4b9..026aa26988a 100644 --- a/xml/System.Data.Linq.Mapping/InheritanceMappingAttribute.xml +++ b/xml/System.Data.Linq.Mapping/InheritanceMappingAttribute.xml @@ -23,36 +23,36 @@ Maps an inheritance hierarchy in a LINQ to SQL application. - is specified per mapped class. - - Note the following when you map inheritance hierarchies: - -- All classes in a hierarchy must be mapped to a single table. - -- The table for an inheritance hierarchy must be declared on the mapped type that is at the top of the hierarchy. You cannot specify the table or mapping attributes in a class that is derived from the top class. - -- You can use an interface in a hierarchy, but LINQ does not map it. - -- You can skip a class in the hierarchy when you map classes, but you can query against mapped classes only. - - For correct materialization, discriminator code values must be unique and match the values in the database. A row with a discriminator code value that does not exactly match (even by casing) instantiates the class by using set to `true`. - - - -## Examples - This example shows inheritance mapping for a hierarchy where the top, mapped class (`Shape`) is abstract. - + is specified per mapped class. + + Note the following when you map inheritance hierarchies: + +- All classes in a hierarchy must be mapped to a single table. + +- The table for an inheritance hierarchy must be declared on the mapped type that is at the top of the hierarchy. You cannot specify the table or mapping attributes in a class that is derived from the top class. + +- You can use an interface in a hierarchy, but LINQ does not map it. + +- You can skip a class in the hierarchy when you map classes, but you can query against mapped classes only. + + For correct materialization, discriminator code values must be unique and match the values in the database. A row with a discriminator code value that does not exactly match (even by casing) instantiates the class by using set to `true`. + + + +## Examples + This example shows inheritance mapping for a hierarchy where the top, mapped class (`Shape`) is abstract. + :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/InheritanceMappingAttribute/Overview/Program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.InheritanceMappingAttribute/vb/Module1.vb" id="Snippet1"::: - - The following example shows the inclusion of unmapped classes. You can put unmapped classes anywhere in the hierarchy. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.InheritanceMappingAttribute/vb/Module1.vb" id="Snippet1"::: + + The following example shows the inclusion of unmapped classes. You can put unmapped classes anywhere in the hierarchy. + :::code language="csharp" source="~/snippets/csharp/System.Data.Linq.Mapping/InheritanceMappingAttribute/Overview/Program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.InheritanceMappingAttribute/vb/Module1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.Mapping.InheritanceMappingAttribute/vb/Module1.vb" id="Snippet2"::: + ]]> @@ -143,11 +143,11 @@ Gets or sets whether an object of this type in instantiated when the discriminator value does not match a specified value. Default = . - attributes must be declared with as `true`. - + attributes must be declared with as `true`. + ]]> @@ -182,11 +182,11 @@ Gets or sets the type of the class in the hierarchy. Must be user-specified. There is no default value. - diff --git a/xml/System.Data.Linq/DataContext.xml b/xml/System.Data.Linq/DataContext.xml index a38c0a4315f..993d4488130 100644 --- a/xml/System.Data.Linq/DataContext.xml +++ b/xml/System.Data.Linq/DataContext.xml @@ -21,13 +21,13 @@ Represents the main entry point for the LINQ to SQL framework. - is the source of all entities mapped over a database connection. It tracks changes that you made to all retrieved entities and maintains an "identity cache" that guarantees that entities retrieved more than one time are represented by using the same object instance. - - In general, a instance is designed to last for one "unit of work" however your application defines that term. A is lightweight and is not expensive to create. A typical LINQ to SQL application creates instances at method scope or as a member of short-lived classes that represent a logical set of related database operations. - + is the source of all entities mapped over a database connection. It tracks changes that you made to all retrieved entities and maintains an "identity cache" that guarantees that entities retrieved more than one time are represented by using the same object instance. + + In general, a instance is designed to last for one "unit of work" however your application defines that term. A is lightweight and is not expensive to create. A typical LINQ to SQL application creates instances at method scope or as a member of short-lived classes that represent a logical set of related database operations. + ]]> @@ -61,11 +61,11 @@ The connection used by the .NET Framework. Initializes a new instance of the class by referencing the connection used by the .NET Framework. - opens and closes a database connection as needed if you provide a closed connection or a connection string. In general, you should never have to call `Dispose` on a . If you provide an open connection, the will not close it. Therefore, do not instantiate a with an open connection unless you have a good reason to do this. In a transaction, a will not open or close a connection to avoid promotion. - + opens and closes a database connection as needed if you provide a closed connection or a connection string. In general, you should never have to call `Dispose` on a . If you provide an open connection, the will not close it. Therefore, do not instantiate a with an open connection unless you have a good reason to do this. In a transaction, a will not open or close a connection to avoid promotion. + ]]> @@ -90,8 +90,8 @@ This argument can be any one of the following: The name of a file where a SQL Server Express database resides. - The name of a server where a database is present. In this case the provider uses the default database for a user. - + The name of a server where a database is present. In this case the provider uses the default database for a user. + A complete connection string. LINQ to SQL just passes the string to the provider without modification. Initializes a new instance of the class by referencing a file source. To be added. @@ -139,12 +139,12 @@ - This argument can be any one of the following: - - The name of a file where a SQL Server Express database resides. - - The name of a server where a database is present. In this case the provider uses the default database for a user. - + This argument can be any one of the following: + + The name of a file where a SQL Server Express database resides. + + The name of a server where a database is present. In this case the provider uses the default database for a user. + A complete connection string. LINQ to SQL just passes the string to the provider without modification. A source for mapping. Initializes a new instance of the class by referencing a file source and a mapping source. @@ -171,17 +171,17 @@ Gets a collection of objects that caused concurrency conflicts when was called. A collection of objects that caused concurrency conflicts. - @@ -206,13 +206,13 @@ Gets or sets a value that increases the time-out period (in seconds) for queries that would otherwise time out during the default time-out period. An integer value that increases the time-out period (in seconds) for queries that would otherwise time out during the default time-out period. - . - - When this property is not set, the default value of is used for query command execution. This default value is set by the storage provider. Note that some providers may throw exceptions if this value is set to a non-zero value. - + . + + When this property is not set, the default value of is used for query command execution. This default value is set by the storage provider. Note that some providers may throw exceptions if this value is set to a non-zero value. + ]]> @@ -237,13 +237,13 @@ Gets the connection used by the framework. The connection used by the framework. - @@ -268,24 +268,24 @@ Creates a database on the server. - attribute is present, its property is used as the name of the database. -1. If there is no database tag in the connection string and a strongly typed is used, a database that has the same name as the inheriting class is created. -1. If a weakly typed is used, an exception is thrown. -1. If the has been created by using a file name, the database corresponding to that file name is created. - - -## Examples - The following code shows how to set up a temporary database and then remove it. - + attribute is present, its property is used as the name of the database. +1. If there is no database tag in the connection string and a strongly typed is used, a database that has the same name as the inheriting class is created. +1. If a weakly typed is used, an exception is thrown. +1. If the has been created by using a file name, the database corresponding to that file name is created. + + +## Examples + The following code shows how to set up a temporary database and then remove it. + :::code language="csharp" source="~/snippets/csharp/System.Data.Linq/DataContext/CreateDatabase/Program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.DataContext/vb/Module1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.DataContext/vb/Module1.vb" id="Snippet1"::: + ]]> How to: Dynamically Create a Database (LINQ to SQL) @@ -331,11 +331,11 @@ Executes the table-valued database function associated with the specified .NET method. A collection of resultant values returned by the database query. - method is used in automatically generated code and acts as a proxy to database functions. - + method is used in automatically generated code and acts as a proxy to database functions. + ]]> @@ -362,19 +362,19 @@ if the specified database can be opened; otherwise, . - property to attempt to open the associated database. - - - -## Examples - The following example uses this method to determine whether a database already exists. - + property to attempt to open the associated database. + + + +## Examples + The following example uses this method to determine whether a database already exists. + :::code language="csharp" source="~/snippets/csharp/System.Data.Linq/DataContext/CreateDatabase/Program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.DataContext/vb/Module1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.DataContext/vb/Module1.vb" id="Snippet1"::: + ]]> @@ -400,27 +400,27 @@ if deferred loading is enabled; otherwise, . - property. - - The main scenario for this property is to enable you to extract a piece of the object model and send it out (for example, to a Web service). - + property. + + The main scenario for this property is to enable you to extract a piece of the object model and send it out (for example, to a Web service). + > [!NOTE] -> If this property is set to `false` after a query has been executed, an exception is thrown. See the **Valid Modes** section below for more information. - -## Valid modes - Deferred loading requires object tracking. Only the following three modes are valid: - -- = `false`. is ignored and inferred to be `false`. This behavior corresponds to a read-only . - -- = `true`. = `false`. This situation corresponds to a that allows users to load an object graph by using directives, but it does not enable deferred loading. - -- Both are set to `true`. This is the default. - - The flags may not be changed after a query has been executed. Any change after the execution of the first query that uses that throws an exception. - +> If this property is set to `false` after a query has been executed, an exception is thrown. See the **Valid Modes** section below for more information. + +## Valid modes + Deferred loading requires object tracking. Only the following three modes are valid: + +- = `false`. is ignored and inferred to be `false`. This behavior corresponds to a read-only . + +- = `true`. = `false`. This situation corresponds to a that allows users to load an object graph by using directives, but it does not enable deferred loading. + +- Both are set to `true`. This is the default. + + The flags may not be changed after a query has been executed. Any change after the execution of the first query that uses that throws an exception. + ]]> @@ -445,19 +445,19 @@ Deletes the associated database. - property to identify the database to be deleted. - - - -## Examples - The following example shows how to delete a database that has been temporarily created. - + property to identify the database to be deleted. + + + +## Examples + The following example shows how to delete a database that has been temporarily created. + :::code language="csharp" source="~/snippets/csharp/System.Data.Linq/DataContext/CreateDatabase/Program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.DataContext/vb/Module1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Data.Linq.DataContext/vb/Module1.vb" id="Snippet1"::: + ]]> @@ -552,25 +552,25 @@ The SQL command to be executed. - The array of parameters to be passed to the command. Note the following behavior: - - If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown. - - If the array contains objects that are not referenced in the command string, no exception is thrown. - + The array of parameters to be passed to the command. Note the following behavior: + + If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown. + + If the array contains objects that are not referenced in the command string, no exception is thrown. + If any one of the parameters is null, it is converted to . Executes SQL commands directly on the database. The number of rows modified by the executed command. - : - + : + ```csharp db.ExecuteQuery("SELECT * FROM dbo.Customers WHERE City = {0}", "London"); ``` @@ -578,9 +578,9 @@ db.ExecuteQuery("SELECT * FROM dbo.Customers WHERE City = {0}", "Londo ```vb db.ExecuteQuery(Of Customer)("SELECT * FROM dbo.Customers WHERE City = {0}", "London") ``` - - And, another example: - + + And, another example: + ```csharp db.ExecuteCommand("UPDATE Products SET QuantityPerUnit = {0} WHERE ProductID = {1}", "24 boxes", 5); ``` @@ -594,8 +594,8 @@ db.ExecuteCommand("UPDATE Products SET QuantityPerUnit = {0} WHERE ProductID = { The following example opens a connection and passes a SQL `UPDATE` command to the SQL engine. :::code language="csharp" source="~/snippets/csharp/System.Data.Linq/DataContext/ExecuteCommand/Program.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/DLinqCommunicatingWithDatabase/vb/Module1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/DLinqCommunicatingWithDatabase/vb/Module1.vb" id="Snippet3"::: + ]]> @@ -623,11 +623,11 @@ The following example opens a connection and passes a SQL `UPDATE` command to th The entity to be deleted. Executes, inside delete override methods, to redelegate to LINQ to SQL the task of generating and executing dynamic SQL for delete operations. - . - + . + ]]> @@ -655,19 +655,19 @@ The following example opens a connection and passes a SQL `UPDATE` command to th The entity to be inserted. Executes, inside insert override methods, to redelegate to LINQ to SQL the task of generating and executing dynamic SQL for insert operations. - . - -- An exception is thrown if this operation is not called inside a operation. It is not intended to be called as a stand-alone operation outside the scope of a operation. itself calls override methods if they are implemented and the previous methods are intended to be called inside the override methods. - -- It is the responsibility of the developer to pass in the correct entity. The implementation verifies that the passed-in entity is tracked. However, it is the responsibility of the developer to maintain the order or pass in the same entity two times. - -- It is the responsibility of the developer to invoke the correct dynamic API. For example, in the `Update` override method, only the method can be called. LINQ to SQL does not detect or verify whether the invoked dynamic method matches the applicable operation. The results are undefined if an inapplicable method is called (for example, calling for an object to be updated). - + . + +- An exception is thrown if this operation is not called inside a operation. It is not intended to be called as a stand-alone operation outside the scope of a operation. itself calls override methods if they are implemented and the previous methods are intended to be called inside the override methods. + +- It is the responsibility of the developer to pass in the correct entity. The implementation verifies that the passed-in entity is tracked. However, it is the responsibility of the developer to maintain the order or pass in the same entity two times. + +- It is the responsibility of the developer to invoke the correct dynamic API. For example, in the `Update` override method, only the method can be called. LINQ to SQL does not detect or verify whether the invoked dynamic method matches the applicable operation. The results are undefined if an inapplicable method is called (for example, calling for an object to be updated). + ]]> @@ -695,11 +695,11 @@ The following example opens a connection and passes a SQL `UPDATE` command to th The entity to be updated. Executes, inside update override methods, to redelegate to LINQ to SQL the task of generating and executing dynamic SQL for update operations. - . - + . + ]]> @@ -739,11 +739,11 @@ The following example opens a connection and passes a SQL `UPDATE` command to th Executes the stored database procedure or scalar function associated with the specified .NET method. The result (the return value and output parameters) of executing the specified method. - method is used in automatically generated code and acts as a proxy to database functions. - + method is used in automatically generated code and acts as a proxy to database functions. + ]]> @@ -777,32 +777,32 @@ The following example opens a connection and passes a SQL `UPDATE` command to th - The type of the to be returned. - - The algorithm for matching columns in the result of the query to fields or properties in the object works as follows: - - If a field or property is mapped to a particular column name, that column name is expected in the resultset. - - If a field or property is not mapped, a column with the same name as the field or property is expected in the resultset. - - The comparison is performed by looking for a case-sensitive match first. If this match is not found, a subsequent search occurs for a case-insensitive match. - - The query must return all the tracked fields and properties of the object (except those that are loaded on a deferred basis) when all the following conditions are true: - - T is an entity explicitly tracked by the . - - is . - - The entity has a primary key. - + The type of the to be returned. + + The algorithm for matching columns in the result of the query to fields or properties in the object works as follows: + + If a field or property is mapped to a particular column name, that column name is expected in the resultset. + + If a field or property is not mapped, a column with the same name as the field or property is expected in the resultset. + + The comparison is performed by looking for a case-sensitive match first. If this match is not found, a subsequent search occurs for a case-insensitive match. + + The query must return all the tracked fields and properties of the object (except those that are loaded on a deferred basis) when all the following conditions are true: + + T is an entity explicitly tracked by the . + + is . + + The entity has a primary key. + Otherwise an exception is thrown. The SQL query to be executed. - The array of parameters to be passed to the command. Note the following behavior: - - If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown. - - If the array contains objects that are not referenced in the command string, no exception is thrown. - + The array of parameters to be passed to the command. Note the following behavior: + + If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown. + + If the array contains objects that are not referenced in the command string, no exception is thrown. + If a parameter is , it is converted to . Executes SQL queries directly on the database. An collection of objects returned by the query. @@ -842,57 +842,57 @@ The following example opens a connection and passes a SQL `UPDATE` command to th The type of the elements in the returned collection. The SQL query to be executed. - The array of parameters to be passed to the command. Note the following behavior: - - If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown. - - If the array contains objects that are not referenced in the command string, no exception is thrown. - + The array of parameters to be passed to the command. Note the following behavior: + + If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown. + + If the array contains objects that are not referenced in the command string, no exception is thrown. + If a parameter is null, it is converted to . Executes SQL queries directly on the database and returns objects. A collection of objects returned by the query. - ` is an entity explicitly tracked by the . - - - ObjectTrackingEnabled is true. - - - The entity has a primary key. - - Otherwise an exception is thrown. - -- In all other cases, the query can retrieve just a subset of the tracked fields and properties for the object. - -## Examples - - The following example shows one use for this method: - + ` is an entity explicitly tracked by the . + + - ObjectTrackingEnabled is true. + + - The entity has a primary key. + + Otherwise an exception is thrown. + +- In all other cases, the query can retrieve just a subset of the tracked fields and properties for the object. + +## Examples + + The following example shows one use for this method: + ```csharp var customers = db.ExecuteQuery(@"SELECT CustomerID, CompanyName, ContactName, ContactTitle, - Address, City, Region, PostalCode, Country, Phone, Fax + Address, City, Region, PostalCode, Country, Phone, Fax FROM   dbo.Customers WHERE  City = {0}", "London"); - + foreach (Customer c in customers) Console.WriteLine(c.ContactName); -``` - +``` + ```vb -Dim customers = db.ExecuteQuery(Of Customer)("SELECT CustomerID, _ +Dim customers = db.ExecuteQuery(Of Customer)("SELECT CustomerID, _ CompanyName, ContactName, ContactTitle, _ Address, City, Region, PostalCode, Country, Phone, Fax _ FROM dbo.Customers _ @@ -901,8 +901,8 @@ WHERE City = {0}", "London") For Each c As Customer In customers Console.WriteLine(c.ContactName) Next -``` - +``` + ]]> @@ -928,33 +928,33 @@ Next Gets the modified objects tracked by . The set of objects is returned as three read-only collections. - might have side effects, such as inference of insert and delete operations that are usually performed at the time of . For example, objects that are used in the following operations can create corresponding inferred operations in the following list: - - - to . - - - assignment to null (possibly because of to . - -- The set may not be ordered according to foreign key constraints. - -- Database-generated values (for example, primary and foreign key values, timestamps, and so forth) are not available. Such information requires database command execution and perhaps the propagation of retrieved information (for example, foreign key from primary key). - -- The set of changed objects is computed at the time of the call. Subsequent calls to can produce a different set if additional changes are made. - - Output when no changes have been made appears as follows: - - `{Added: 0, Removed: 0, Modified: 0}` - - - -## Examples + might have side effects, such as inference of insert and delete operations that are usually performed at the time of . For example, objects that are used in the following operations can create corresponding inferred operations in the following list: + + - to . + + - assignment to null (possibly because of to . + +- The set may not be ordered according to foreign key constraints. + +- Database-generated values (for example, primary and foreign key values, timestamps, and so forth) are not available. Such information requires database command execution and perhaps the propagation of retrieved information (for example, foreign key from primary key). + +- The set of changed objects is computed at the time of the call. Subsequent calls to can produce a different set if additional changes are made. + + Output when no changes have been made appears as follows: + + `{Added: 0, Removed: 0, Modified: 0}` + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq/DataContext/GetChangeSet/Program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/DLinqDebuggingSupport/vb/Module1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/DLinqDebuggingSupport/vb/Module1.vb" id="Snippet2"::: + ]]> @@ -983,27 +983,27 @@ Next Gets the information about SQL commands generated by LINQ to SQL. The requested command information object. - state. - - Note the following considerations: - -- The argument must be non-null. Otherwise, a null argument exception is thrown. - -- Normal query translation exceptions thrown during LINQ to SQL query execution apply for a query that cannot be translated. - -- Only the first query command is returned. Specifically, additional commands that are used for eager loading () are not included. - -- does not track what the user does with the command. For example, results from the execution of the returned command are not tracked and do not affect state. - - - -## Examples + state. + + Note the following considerations: + +- The argument must be non-null. Otherwise, a null argument exception is thrown. + +- Normal query translation exceptions thrown during LINQ to SQL query execution apply for a query that cannot be translated. + +- Only the first query command is returned. Specifically, additional commands that are used for eager loading () are not included. + +- does not track what the user does with the command. For example, results from the execution of the returned command are not tracked and do not affect state. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq/DataContext/GetChangeSet/Program.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/DLinqDebuggingSupport/vb/Module1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/DLinqDebuggingSupport/vb/Module1.vb" id="Snippet3"::: + ]]> @@ -1032,13 +1032,13 @@ Next Returns a collection of objects of a particular type, where the type is defined by the parameter. A collection of objects defined by the parameter. - . It is important to have a weakly typed version because it is a relatively common practice to construct queries dynamically. It would be inconvenient to force the application to use reflection to call the correct generic method. - - If there is no collection for a particular type, an exception is thrown. - + . It is important to have a weakly typed version because it is a relatively common practice to construct queries dynamically. It would be inconvenient to force the application to use reflection to call the correct generic method. + + If there is no collection for a particular type, an exception is thrown. + ]]> @@ -1072,13 +1072,13 @@ Next Returns a collection of objects of a particular type, where the type is defined by the parameter. A collection of objects defined by the parameter. - is created, new generated properties encapsulate calls to this method. For example, a `Customers` property is generated that returns `GetTable`. - - If there is no collection for a particular type, an exception is thrown. - + is created, new generated properties encapsulate calls to this method. For example, a `Customers` property is generated that returns `GetTable`. + + If there is no collection for a particular type, an exception is thrown. + ]]> @@ -1103,11 +1103,11 @@ Next Gets or sets the associated with this . The prefetch load options for related data. - @@ -1132,19 +1132,19 @@ Next Gets or sets the destination to write the SQL query or command. The writer to use for writing the command. - @@ -1192,23 +1192,23 @@ Next if the object tracking is enabled; otherwise, . The default is . - . - -- If the property is set to `false` and is called. - - If is `false`, is ignored and treated as `false`. In this case, the is read-only. - - If is `true`, is `false`. In this case, allows you to load an object graph by using directives, but does not enable deferred loading. - + . + +- If the property is set to `false` and is called. + + If is `false`, is ignored and treated as `false`. In this case, the is read-only. + + If is `true`, is `false`. In this case, allows you to load an object graph by using directives, but does not enable deferred loading. + ]]> @@ -1221,14 +1221,14 @@ Next Refreshes object state by using data in the database. - [!NOTE] -> If an object is on the *many* side of a one-to-many relationship, the foreign key on the object will be set and the object pointer for the other side of the relationship will be set to the new value. - +> If an object is on the *many* side of a one-to-many relationship, the foreign key on the object will be set and the object pointer for the other side of the relationship will be set to the new value. + ]]> @@ -1329,13 +1329,13 @@ Next Computes the set of modified objects to be inserted, updated, or deleted, and executes the appropriate commands to implement the changes to the database. - executes these methods instead of the default LINQ to SQL commands. - - starts a transaction and will roll back if an exception occurs while is executing. However, this does not roll back the changes in memory or tracked by the ; those changes will need to be rolled back manually. You can start with a new instance of the if the changes in memory are to be discarded. - + executes these methods instead of the default LINQ to SQL commands. + + starts a transaction and will roll back if an exception occurs while is executing. However, this does not roll back the changes in memory or tracked by the ; those changes will need to be rolled back manually. You can start with a new instance of the if the changes in memory are to be discarded. + ]]> @@ -1360,11 +1360,11 @@ Next Computes the set of modified objects to be inserted, updated, or deleted, and executes the appropriate commands to implement the changes to the database. - executes these methods instead of the default LINQ to SQL commands. - + executes these methods instead of the default LINQ to SQL commands. + ]]> @@ -1389,22 +1389,22 @@ Next - The action to be taken if the submission fails. Valid arguments are as follows: - + The action to be taken if the submission fails. Valid arguments are as follows: + . Sends changes that were made to retrieved objects to the underlying database, and specifies the action to be taken if the submission fails. - . - - - -## Examples + . + + + +## Examples :::code language="csharp" source="~/snippets/csharp/System.Data.Linq/ConflictMode/Overview/program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/system.data.linq.conflictmodeenumeration/vb/module1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Data/system.data.linq.conflictmodeenumeration/vb/module1.vb" id="Snippet1"::: + ]]> @@ -1429,19 +1429,19 @@ Next Gets or sets a local transaction for the .NET Framework to use to access the database. The transaction object used by the when executing queries and commands. - context, setting this property throws an exception. - -- If this property is set and a new is opened, an exception is thrown when a query or update is executed. - + context, setting this property throws an exception. + +- If this property is set and a new is opened, an exception is thrown when a query or update is executed. + ]]> @@ -1454,31 +1454,31 @@ Next Converts an existing to objects. - is converted to an object in the . - + is converted to an object in the . + ```csharp -public IEnumerable Translate(IDataReader reader) {} -``` - - Description: This method is used to convert an existing to objects. Each row in the is converted to an object in the . - - **Generic parameters:** - - `T`: See . - - **Parameters:** - - `Query`: See the description for command under . - - `Parameters`: See the description for parameters under . - - **Return type:** - - : collection of objects returned by the conversion. - +public IEnumerable Translate(IDataReader reader) {} +``` + + Description: This method is used to convert an existing to objects. Each row in the is converted to an object in the . + + **Generic parameters:** + + `T`: See . + + **Parameters:** + + `Query`: See the description for command under . + + `Parameters`: See the description for parameters under . + + **Return type:** + + : collection of objects returned by the conversion. + ]]> @@ -1530,24 +1530,24 @@ public IEnumerable Translate(IDataReader reader) {} - The type of the to be returned. - - The algorithm for matching columns in the result to fields and properties in the object works as follows: - - If a field or property is mapped to a particular column name, that column name is expected in the resultset. - - If a field or property is not mapped, a column with the same name as the field or property is expected in the resultset. - - The comparison is performed by looking for a case-sensitive match first. If this match is not found, a subsequent search is occurs for a case-insensitive match. - - The query must return all the tracked fields and properties of the object (except those that are loaded on a deferred basis) when all the following conditions are true: - - T is an entity explicitly tracked by the . - - is . - - The entity has a primary key. - + The type of the to be returned. + + The algorithm for matching columns in the result to fields and properties in the object works as follows: + + If a field or property is mapped to a particular column name, that column name is expected in the resultset. + + If a field or property is not mapped, a column with the same name as the field or property is expected in the resultset. + + The comparison is performed by looking for a case-sensitive match first. If this match is not found, a subsequent search is occurs for a case-insensitive match. + + The query must return all the tracked fields and properties of the object (except those that are loaded on a deferred basis) when all the following conditions are true: + + T is an entity explicitly tracked by the . + + is . + + The entity has a primary key. + Otherwise an exception is thrown. The to be converted. Converts an existing to objects. diff --git a/xml/System.Data.Linq/ITable.xml b/xml/System.Data.Linq/ITable.xml index 492da603f1c..013365456c5 100644 --- a/xml/System.Data.Linq/ITable.xml +++ b/xml/System.Data.Linq/ITable.xml @@ -21,11 +21,11 @@ Used for weakly typed query scenarios. - . - + . + ]]> @@ -38,13 +38,13 @@ Allows deserialized entities to be associated with a new instance of a so that they can be updated or deleted from the database. - is thrown during . - + is thrown during . + ]]> @@ -72,11 +72,11 @@ The entity to be attached. Attaches an entity to the in an unmodified state. - @@ -107,11 +107,11 @@ to attach the entities as modified. Attaches all entities of a collection to the in either a modified or unmodified state. - @@ -141,11 +141,11 @@ An instance of the same entity type with data members that contain the original values. Attaches an entity to the in either a modified or unmodified state by specifying both the entity and its original state. - @@ -182,11 +182,11 @@ The collection of entities. Attaches all entities of a collection to the in either a modified or unmodified state. - @@ -217,11 +217,11 @@ to attach the entities as modified. Attaches all entities of a collection to the in either a modified or unmodified state. - @@ -271,11 +271,11 @@ The collection from which all items are removed. Puts all entities from the collection into a state. - to perform the actual deletion in the database. - + to perform the actual deletion in the database. + ]]> @@ -303,11 +303,11 @@ The entity to be removed. Puts an entity from this table into a state. - to perform the actual deletion in the database. - + to perform the actual deletion in the database. + ]]> @@ -362,15 +362,15 @@ Retrieves original values. A copy of the original entity. The value is null if the entity passed in is not tracked. Disconnected entities sent back by a client must be attached before the can begin to track their state. The "original state" of a newly attached entity is established based on values supplied by the client. The data context does not track the state of disconnected entities. - @@ -398,11 +398,11 @@ The entities to add. Adds all entities of a collection to the in a state. - to perform the actual insertion into the database. - + to perform the actual insertion into the database. + ]]> @@ -430,11 +430,11 @@ The entity to be added. Adds an entity in a state to this table. - to perform the actual insertion into the database. - + to perform the actual insertion into the database. + ]]> diff --git a/xml/System.Data.Objects.DataClasses/EdmFunctionAttribute.xml b/xml/System.Data.Objects.DataClasses/EdmFunctionAttribute.xml index 44281bb8167..6d2a107ccda 100644 --- a/xml/System.Data.Objects.DataClasses/EdmFunctionAttribute.xml +++ b/xml/System.Data.Objects.DataClasses/EdmFunctionAttribute.xml @@ -22,19 +22,19 @@ An attribute that, when applied to a method, indicates that the method is a proxy for a function in the conceptual model or storage model. - links a common language runtime (CLR) method to another function. For example, the attribute can be used to map a CLR method to a function that is exposed by the storage provider, to a user-defined function in the database, or to a user-defined function in the conceptual model. Methods that have this attribute can be called from LINQ to Entities queries. - - To use an to map a CLR method to a function, the following must be true: - -- The return type of the CLR method must be compatible with the return type of the mapped-to function. - -- The argument types of the CLR method must be compatible with the argument types of the mapped-to function. - + links a common language runtime (CLR) method to another function. For example, the attribute can be used to map a CLR method to a function that is exposed by the storage provider, to a user-defined function in the database, or to a user-defined function in the conceptual model. Methods that have this attribute can be called from LINQ to Entities queries. + + To use an to map a CLR method to a function, the following must be true: + +- The return type of the CLR method must be compatible with the return type of the mapped-to function. + +- The argument types of the CLR method must be compatible with the argument types of the mapped-to function. + For information about compatible types, see [Conceptual Model Types (CSDL)](/ef/ef6/modeling/designer/advanced/edmx/csdl-spec#conceptual-model-types-csdl). - + ]]> How to: Call Custom Database Functions @@ -68,19 +68,19 @@ The name of the mapped-to function. Initializes a new instance of the class. - links a common language runtime (CLR) method to another function. For example, the attribute can be used to map a CLR method to a function that is exposed by the storage provider, to a user-defined function in the database, or to a user-defined function in the conceptual model. Methods that have this attribute can be called from LINQ to Entities queries. - - To use an to map a CLR method to a function, the following must be true: - -- The return type of the CLR method must be compatible with the return type of the mapped-to function. - -- The argument types of the CLR method must be compatible with the argument types of the mapped-to function. - + links a common language runtime (CLR) method to another function. For example, the attribute can be used to map a CLR method to a function that is exposed by the storage provider, to a user-defined function in the database, or to a user-defined function in the conceptual model. Methods that have this attribute can be called from LINQ to Entities queries. + + To use an to map a CLR method to a function, the following must be true: + +- The return type of the CLR method must be compatible with the return type of the mapped-to function. + +- The argument types of the CLR method must be compatible with the argument types of the mapped-to function. + For information about compatible types, see [Conceptual Model Types (CSDL)](/ef/ef6/modeling/designer/advanced/edmx/csdl-spec#conceptual-model-types-csdl). - + ]]> How to: Call Custom Database Functions diff --git a/xml/System.Data.Objects.DataClasses/EdmRelationshipNavigationPropertyAttribute.xml b/xml/System.Data.Objects.DataClasses/EdmRelationshipNavigationPropertyAttribute.xml index 0e4f0d72bff..d0605bff1f4 100644 --- a/xml/System.Data.Objects.DataClasses/EdmRelationshipNavigationPropertyAttribute.xml +++ b/xml/System.Data.Objects.DataClasses/EdmRelationshipNavigationPropertyAttribute.xml @@ -30,9 +30,9 @@ This attribute is applied to the following types of navigation properties: -- Properties that return an of related objects. +- Properties that return an of related objects. -- Properties that return the value of the of a related object, as in the following example from the `SalesOrderDetail` type. +- Properties that return the value of the of a related object, as in the following example from the `SalesOrderDetail` type. diff --git a/xml/System.Data.Objects.DataClasses/EntityCollection`1.xml b/xml/System.Data.Objects.DataClasses/EntityCollection`1.xml index d73fdb78cb0..1ae9ef31b82 100644 --- a/xml/System.Data.Objects.DataClasses/EntityCollection`1.xml +++ b/xml/System.Data.Objects.DataClasses/EntityCollection`1.xml @@ -303,13 +303,13 @@ ## Remarks does the following: -- Sets the flag to `false`. +- Sets the flag to `false`. -- Removes all entities from the collection. +- Removes all entities from the collection. -- Detaches relationships between removed entities and the owner of the from the . +- Detaches relationships between removed entities and the owner of the from the . -- Removes the owner of the from the related entities. +- Removes the owner of the from the related entities. ]]> diff --git a/xml/System.Data.Objects/ObjectContext.xml b/xml/System.Data.Objects/ObjectContext.xml index e4669637798..a7b7d4e48c8 100644 --- a/xml/System.Data.Objects/ObjectContext.xml +++ b/xml/System.Data.Objects/ObjectContext.xml @@ -30,11 +30,11 @@ The class is the primary class for interacting with data as objects that are instances of entity types that are defined in a conceptual model. An instance of the class encapsulates the following: -- A connection to the database, in the form of an object. +- A connection to the database, in the form of an object. -- Metadata that describes the model, in the form of a object. +- Metadata that describes the model, in the form of a object. -- An object that manages objects persisted in the cache. +- An object that manages objects persisted in the cache. When the object layer that represents a conceptual model is generated by the Entity Data Model tools, the class that represents the for the model is derived from the . @@ -259,9 +259,9 @@ When you create a new object that is related to another object in the object context, add the object by using one of the following methods: -- Call the method on the and specify the related object. Do this for a one-to-many or many-to-many relationship. +- Call the method on the and specify the related object. Do this for a one-to-many or many-to-many relationship. -- Set the property of the to the related object. Do this for a one-to-one or many-to-one relationship. +- Set the property of the to the related object. Do this for a one-to-one or many-to-one relationship. For more information, see [Creating, Adding, Modifying, and Deleting Objects](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/bb738695(v=vs.100)). @@ -269,9 +269,9 @@ The rules for the `entitySetName` format are as follows: -- If the property is `null`, then the `entitySetName` has to be fully qualified as in *\*.*\*. +- If the property is `null`, then the `entitySetName` has to be fully qualified as in *\*.*\*. -- If is not `null`, then the `entitySetName` can be either *\*.*\* or *\*. +- If is not `null`, then the `entitySetName` can be either *\*.*\* or *\*. If the `object` has an and `entitySetName` has a value, then the of the entity key must match the that was found based on the `entitySetName` and entity container name. @@ -528,11 +528,11 @@ The following considerations apply when attaching objects: -- If the object being attached has related objects, those objects will also be attached to the object context. +- If the object being attached has related objects, those objects will also be attached to the object context. -- Objects are added to the object context in an unchanged state. +- Objects are added to the object context in an unchanged state. -- The object that is passed to the method must have a valid value. If the object does not have a valid value, use the method to specify the name of the entity set. +- The object that is passed to the method must have a valid value. If the object does not have a valid value, use the method to specify the name of the entity set. ## Examples In this example, two objects are attached and then the relationship is defined. @@ -580,9 +580,9 @@ The rules for the `entitySetName` format are as follows: -- If the property is `null`, then the `entitySetName` has to be fully qualified as in *\*.*\*. +- If the property is `null`, then the `entitySetName` has to be fully qualified as in *\*.*\*. -- If the is not `null`, then the `entitySetName` can be either *\*.*\* or *\*. +- If the is not `null`, then the `entitySetName` can be either *\*.*\* or *\*. The object being attached is not required to have an associated with it. If the object does not have an entity key, then `entitySetName` cannot be an empty string. @@ -1240,9 +1240,9 @@ This example constructs an with a specific ProductI - only affects the specific object that is passed to the method. If the object being detached has related objects in the object context, those objects are not detached. -- Detaching objects does not affect data in the data source. +- Detaching objects does not affect data in the data source. -- Cascade delete directives and referential constraints are not enforced during a detach operation. +- Cascade delete directives and referential constraints are not enforced during a detach operation. For more information, see [Attaching and Detaching Objects](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/bb738470(v=vs.100)). diff --git a/xml/System.Data.Objects/ObjectQuery`1.xml b/xml/System.Data.Objects/ObjectQuery`1.xml index 2defddae484..1f81b9792e2 100644 --- a/xml/System.Data.Objects/ObjectQuery`1.xml +++ b/xml/System.Data.Objects/ObjectQuery`1.xml @@ -49,11 +49,11 @@ ## Remarks The generic class represents a query that returns a collection of zero or more objects of a specific type. The must be defined before an object query can be executed. This context provides the connection and metadata information that is required to compose and execute the query. An object query is executed in the following scenarios: -- When it is acted upon, such as during a `foreach` (C#) or `For Each` (Visual Basic) enumeration. +- When it is acted upon, such as during a `foreach` (C#) or `For Each` (Visual Basic) enumeration. -- When it is assigned to fill a collection. +- When it is assigned to fill a collection. -- When the method is explicitly called. +- When the method is explicitly called. The query itself can be created by using an Entity SQL statement or a LINQ query, or it can be incrementally built by using the query builder methods included in the class. In every case, the result is a new instance that, when explicitly executed or enumerated over, will send the query to the data source for execution and return the results. diff --git a/xml/System.Data.Odbc/OdbcCommand.xml b/xml/System.Data.Odbc/OdbcCommand.xml index b1263588226..aa26cb7abda 100644 --- a/xml/System.Data.Odbc/OdbcCommand.xml +++ b/xml/System.Data.Odbc/OdbcCommand.xml @@ -75,29 +75,29 @@ Represents an SQL statement or stored procedure to execute against a data source. This class cannot be inherited. - class provides the following methods for executing commands against a data source: - -|Item|Description| -|----------|-----------------| -||Executes commands that return rows.| -||Executes commands such as SQL INSERT, DELETE, UPDATE, and SET statements.| -||Retrieves a single value, for example, an aggregate value, from a database.| - - You can reset the property and reuse the object. However, you must close the before you can execute a new or previous command. - - If execution of the command causes a fatal such as a SQL Server severity level of 20 or more, may close. However, the user can reopen the connection and continue. - - - -## Examples - The following example uses . - + class provides the following methods for executing commands against a data source: + +|Item|Description| +|----------|-----------------| +||Executes commands that return rows.| +||Executes commands such as SQL INSERT, DELETE, UPDATE, and SET statements.| +||Retrieves a single value, for example, an aggregate value, from a database.| + + You can reset the property and reuse the object. However, you must close the before you can execute a new or previous command. + + If execution of the command causes a fatal such as a SQL Server severity level of 20 or more, may close. However, the user can reopen the connection and continue. + + + +## Examples + The following example uses . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OdbcCommand/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OdbcCommand/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OdbcCommand/VB/source.vb" id="Snippet1"::: + ]]> @@ -136,18 +136,18 @@ Initializes a new instance of the class. - . - -|Properties|Initial Value| -|----------------|-------------------| -||empty string ("")| -||30| -||`Text`| -||null| - + . + +|Properties|Initial Value| +|----------------|-------------------| +||empty string ("")| +||30| +||`Text`| +||null| + ]]> @@ -245,20 +245,20 @@ The transaction in which the executes. Initializes a new instance of the class with the text of the query, an object, and the . - . - -|Properties|Initial Value| -|----------------|-------------------| -||`cmdText`| -||30| -||`Text`| -||A new that is the value for the `connection` parameter.| - - You can change the value for any one of these parameters by setting the related property. - + . + +|Properties|Initial Value| +|----------------|-------------------| +||`cmdText`| +||30| +||`Text`| +||A new that is the value for the `connection` parameter.| + + You can change the value for any one of these parameters by setting the related property. + ]]> Executing a Command @@ -297,13 +297,13 @@ Tries to cancel the execution of an . - must be called from another thread. Because you cannot execute commands asynchronously with , to cancel a command from another thread, one thread must be running synchronously. This means that the object must be accessible from both threads. - + must be called from another thread. Because you cannot execute commands asynchronously with , to cancel a command from another thread, one thread must be running synchronously. This means that the object must be accessible from both threads. + ]]> Executing a Command @@ -366,78 +366,78 @@ Gets or sets the SQL statement or stored procedure to execute against the data source. The SQL statement or stored procedure to execute. The default value is an empty string (""). - property is set to `StoredProcedure`, the property should be set using standard ODBC stored procedure escape sequences. Setting the to the name of the stored procedure does not function as it does for other .NET Framework data providers. - - Many language features, such as outer joins and scalar function calls, are generally implemented by data sources. Even the syntax for these features is generally data source-specific. Therefore, ODBC defines escape sequences that contain standard syntax for the following language features: - -- Date, time, timestamp, and datetime interval literals - -- Scalar functions such as numeric, string, and data type conversion functions - -- LIKE predicate escape character - -- Outer joins - -- Procedure calls - - The escape sequence used by ODBC is as follows: - -``` -{extension} -``` - - This escape sequence is recognized and parsed by ODBC drivers. They then replace any escape sequences with data source-specific grammar. - - A procedure is an executable object stored at the data source. Generally, it is one or more SQL statements that have been precompiled. The escape sequence for calling a procedure is - -``` -{[?=]call procedure-name[([parameter][,[parameter]]...)]} -``` - - where `procedure-name` specifies the name of a procedure and `parameter` specifies a procedure parameter. - - The command executes this stored procedure when you call one of the Execute methods (for example, or ). - - You cannot set the , and properties if the current connection is performing an execute or fetch operation. - - The ODBC.NET Provider does not support named parameters for passing parameters to an SQL statement or a stored procedure called by an when is set to `Text`. In this case, the question mark (?) placeholder must be used. For example: - -``` -SELECT * FROM Customers WHERE CustomerID = ? -``` - - Therefore, the order in which objects are added to the must directly correspond to the position of the question mark placeholder for the parameter. - - If a parameter contains a null value, the .NET Framework Data Provider for ODBC still binds that parameter, but uses a default parameter, if one has been defined by using SQL_DEFAULT_PARAM, instead of the null value. For example, the : - -``` -{1, null, 2} -``` - - passed into the property: - -``` -{call sp(?, ?, ?)} -``` - - causes the .NET Framework Data Provider for ODBC binding the first parameter to the value 1, the third parameter to the value 2, and the second parameter as SQL_DEFAULT_PARAM. However, this behavior is driver-dependent. If the driver does not support this functionality, just do not pass in a value for the parameter. For example, use the : - -``` -{1, 2} -``` - - and set the property to the following: - -``` -{call sp(?, null, ?)} -``` - + property is set to `StoredProcedure`, the property should be set using standard ODBC stored procedure escape sequences. Setting the to the name of the stored procedure does not function as it does for other .NET Framework data providers. + + Many language features, such as outer joins and scalar function calls, are generally implemented by data sources. Even the syntax for these features is generally data source-specific. Therefore, ODBC defines escape sequences that contain standard syntax for the following language features: + +- Date, time, timestamp, and datetime interval literals + +- Scalar functions such as numeric, string, and data type conversion functions + +- LIKE predicate escape character + +- Outer joins + +- Procedure calls + + The escape sequence used by ODBC is as follows: + +``` +{extension} +``` + + This escape sequence is recognized and parsed by ODBC drivers. They then replace any escape sequences with data source-specific grammar. + + A procedure is an executable object stored at the data source. Generally, it is one or more SQL statements that have been precompiled. The escape sequence for calling a procedure is + +``` +{[?=]call procedure-name[([parameter][,[parameter]]...)]} +``` + + where `procedure-name` specifies the name of a procedure and `parameter` specifies a procedure parameter. + + The command executes this stored procedure when you call one of the Execute methods (for example, or ). + + You cannot set the , and properties if the current connection is performing an execute or fetch operation. + + The ODBC.NET Provider does not support named parameters for passing parameters to an SQL statement or a stored procedure called by an when is set to `Text`. In this case, the question mark (?) placeholder must be used. For example: + +``` +SELECT * FROM Customers WHERE CustomerID = ? +``` + + Therefore, the order in which objects are added to the must directly correspond to the position of the question mark placeholder for the parameter. + + If a parameter contains a null value, the .NET Framework Data Provider for ODBC still binds that parameter, but uses a default parameter, if one has been defined by using SQL_DEFAULT_PARAM, instead of the null value. For example, the : + +``` +{1, null, 2} +``` + + passed into the property: + +``` +{call sp(?, ?, ?)} +``` + + causes the .NET Framework Data Provider for ODBC binding the first parameter to the value 1, the third parameter to the value 2, and the second parameter as SQL_DEFAULT_PARAM. However, this behavior is driver-dependent. If the driver does not support this functionality, just do not pass in a value for the parameter. For example, use the : + +``` +{1, 2} +``` + + and set the property to the following: + +``` +{call sp(?, null, ?)} +``` + > [!NOTE] -> If a parameter is omitted, the comma delimiting it from other parameters must still appear. If an input or input/output parameter is omitted, the procedure uses the default value of the parameter. Another way to specify the default value of an input or input/output parameter is to set the value of the length/indicator buffer bound to the parameter to SQL_DEFAULT_PARAM. - +> If a parameter is omitted, the comma delimiting it from other parameters must still appear. If an input or input/output parameter is omitted, the procedure uses the default value of the parameter. Another way to specify the default value of an input or input/output parameter is to set the value of the length/indicator buffer bound to the parameter to SQL_DEFAULT_PARAM. + ]]> @@ -483,11 +483,11 @@ SELECT * FROM Customers WHERE CustomerID = ? Gets or sets the wait time (in seconds) before terminating an attempt to execute a command and generating an error. The time in seconds to wait for the command to execute. The default is 30 seconds. - Executing a Command @@ -534,24 +534,24 @@ SELECT * FROM Customers WHERE CustomerID = ? Gets or sets a value that indicates how the property is interpreted. One of the values. The default is . - property is set to `StoredProcedure`, you should set the property to the full ODBC call syntax. The command then executes this stored procedure when you call one of the Execute methods (for example, or ). - - The , and properties cannot be set if the current connection is performing an execute or fetch operation. - - The .NET Framework Data Provider for ODBC does not support passing named parameters to an SQL statement or to a stored procedure called by an . In either of these cases, use the question mark (?) placeholder. For example: - -``` -SELECT * FROM Customers WHERE CustomerID = ? -``` - - The order in which objects are added to the must directly correspond to the position of the question mark placeholder for the parameter. - + property is set to `StoredProcedure`, you should set the property to the full ODBC call syntax. The command then executes this stored procedure when you call one of the Execute methods (for example, or ). + + The , and properties cannot be set if the current connection is performing an execute or fetch operation. + + The .NET Framework Data Provider for ODBC does not support passing named parameters to an SQL statement or to a stored procedure called by an . In either of these cases, use the question mark (?) placeholder. For example: + +``` +SELECT * FROM Customers WHERE CustomerID = ? +``` + + The order in which objects are added to the must directly correspond to the position of the question mark placeholder for the parameter. + > [!NOTE] -> The .NET Framework Data Provider for ODBC does not support the setting of `TableDirect`. - +> The .NET Framework Data Provider for ODBC does not support the setting of `TableDirect`. + ]]> The value was not a valid . @@ -604,13 +604,13 @@ SELECT * FROM Customers WHERE CustomerID = ? Gets or sets the used by this instance of the . The connection to a data source. The default is a null value. - , , and properties if the current connection is performing an execute or fetch operation. - - If you set while a transaction is in progress and the property is not null, an is generated. If you set after the transaction has been committed or rolled back, and the property is not null, the property is then set to a null value. - + , , and properties if the current connection is performing an execute or fetch operation. + + If you set while a transaction is in progress and the property is not null, an is generated. If you set after the transaction has been committed or rolled back, and the property is not null, the property is then set to a null value. + ]]> The property was changed while a transaction was in progress. @@ -674,11 +674,11 @@ SELECT * FROM Customers WHERE CustomerID = ? Creates a new instance of an object. An object. - method is a strongly-typed version of . - + method is a strongly-typed version of . + ]]> Executing a Command @@ -914,25 +914,25 @@ SELECT * FROM Customers WHERE CustomerID = ? Executes an SQL statement against the and returns the number of rows affected. For UPDATE, INSERT, and DELETE statements, the return value is the number of rows affected by the command. For all other types of statements, the return value is -1. - to perform catalog operations (for example, querying the structure of a database or creating database objects such as tables); or to change the data in a database, without using a , by executing UPDATE, INSERT, or DELETE statements. - - You can also use to execute multiple SQL statements if the underlying ODBC driver supports this functionality. In this case, the return value is the number of rows affected by all statements in the command. - - Although returns no rows, any output parameters or return values mapped to parameters are populated with data. - - For UPDATE, INSERT, and DELETE statements, the return value is the number of rows affected by the command. For all other types of statements, the return value is -1. If a rollback occurs, the return value is also -1. - - When a trigger exists on a table and data is being added or changed in the table, the return value includes the number of rows affected by both the insert or update operation and the number of rows affected by the trigger or triggers. - + to perform catalog operations (for example, querying the structure of a database or creating database objects such as tables); or to change the data in a database, without using a , by executing UPDATE, INSERT, or DELETE statements. + + You can also use to execute multiple SQL statements if the underlying ODBC driver supports this functionality. In this case, the return value is the number of rows affected by all statements in the command. + + Although returns no rows, any output parameters or return values mapped to parameters are populated with data. + + For UPDATE, INSERT, and DELETE statements, the return value is the number of rows affected by the command. For all other types of statements, the return value is -1. If a rollback occurs, the return value is also -1. + + When a trigger exists on a table and data is being added or changed in the table, the return value includes the number of rows affected by both the insert or update operation and the number of rows affected by the trigger or triggers. + ]]> - The connection does not exist. - - -or- - + The connection does not exist. + + -or- + The connection is not open. Executing a Command @@ -974,13 +974,13 @@ SELECT * FROM Customers WHERE CustomerID = ? Sends the to the and builds an . An object. - property to the full ODBC call syntax for stored procedures. The command executes this stored procedure when you call . - - While the is used, the associated is busy serving the . While in this state, no other operations can be performed on the other than closing it. This is the case until the method of the is called. - + property to the full ODBC call syntax for stored procedures. The command executes this stored procedure when you call . + + While the is used, the associated is busy serving the . While in this state, no other operations can be performed on the other than closing it. This is the case until the method of the is called. + ]]> Executing a Command @@ -1016,20 +1016,20 @@ SELECT * FROM Customers WHERE CustomerID = ? Sends the to the , and builds an using one of the values. An object. - value may improve application performance. - - You should set the property to the full ODBC call syntax for stored procedures. The command executes this stored procedure when you call . - - The supports a special mode that enables large binary values to be read efficiently. For more information, see the `SequentialAccess` setting for . - + value may improve application performance. + + You should set the property to the full ODBC call syntax for stored procedures. The command executes this stored procedure when you call . + + The supports a special mode that enables large binary values to be read efficiently. For more information, see the `SequentialAccess` setting for . + > [!NOTE] -> The `SequentialAccess` value of is not a limiting setting; it just means that you will have at least sequential access to the . For example, when you use the SQL Server ODBC Driver in `SequentialAccess` mode, you can still move to the first column of an row after having read through all the other columns sequentially. - - While the is used, the associated is busy serving the . While in this state, no other operations can be performed on the other than closing it. This is the case until you call the method. If the is created with set to `CloseConnection`, closing the closes the connection automatically. - +> The `SequentialAccess` value of is not a limiting setting; it just means that you will have at least sequential access to the . For example, when you use the SQL Server ODBC Driver in `SequentialAccess` mode, you can still move to the first column of an row after having read through all the other columns sequentially. + + While the is used, the associated is busy serving the . While in this state, no other operations can be performed on the other than closing it. This is the case until you call the method. If the is created with set to `CloseConnection`, closing the closes the connection automatically. + ]]> Executing a Command @@ -1070,11 +1070,11 @@ SELECT * FROM Customers WHERE CustomerID = ? Executes the query, and returns the first column of the first row in the result set returned by the query. Additional columns or rows are ignored. The first column of the first row in the result set, or a null reference if the result set is empty. - method to retrieve a single value (for example, an aggregate value) from a data source. This requires less code than using the method, and then performing the operations required to generate the single value from the data returned by an . - + method to retrieve a single value (for example, an aggregate value) from a data source. This requires less code than using the method, and then performing the operations required to generate the single value from the data returned by an . + ]]> Executing a Command @@ -1115,20 +1115,20 @@ SELECT * FROM Customers WHERE CustomerID = ? Gets the . The parameters of the SQL statement or stored procedure. The default is an empty collection. - is set to `Text`, the .NET Framework Data Provider for ODBC does not support passing named parameters to an SQL statement or to a stored procedure called by an . In either of these cases, use the question mark (?) placeholder. For example: - -``` -SELECT * FROM Customers WHERE CustomerID = ? -``` - - The order in which objects are added to the must directly correspond to the position of the question mark placeholder for the parameter in the command text. - + is set to `Text`, the .NET Framework Data Provider for ODBC does not support passing named parameters to an SQL statement or to a stored procedure called by an . In either of these cases, use the question mark (?) placeholder. For example: + +``` +SELECT * FROM Customers WHERE CustomerID = ? +``` + + The order in which objects are added to the must directly correspond to the position of the question mark placeholder for the parameter in the command text. + > [!NOTE] -> If the parameters in the collection do not match the requirements of the query to be executed, an error may result. - +> If the parameters in the collection do not match the requirements of the query to be executed, an error may result. + ]]> @@ -1168,21 +1168,21 @@ SELECT * FROM Customers WHERE CustomerID = ? Creates a prepared or compiled version of the command at the data source. - method calls the ODBC `SQLPrepare` function. Depending on the capabilities of the underlying ODBC driver and data source, parameter information such as data types may be checked when the statement is prepared, if all parameters have been bound, or when it is executed if not all parameters have been bound. For maximum interoperability, an application should unbind all parameters that applied to a previous SQL statement before preparing a new SQL statement on the same . This prevents errors that are caused by previous parameter information being applied to the new SQL statement. - - If you call an Execute method after you call , any parameter value that is larger than the value specified by the property is automatically truncated to the original specified size of the parameter, and no truncation errors are returned. - - Output parameters (whether prepared or not) must have a user-specified data type. If you specify a variable length data type, you must also specify the maximum . - + method calls the ODBC `SQLPrepare` function. Depending on the capabilities of the underlying ODBC driver and data source, parameter information such as data types may be checked when the statement is prepared, if all parameters have been bound, or when it is executed if not all parameters have been bound. For maximum interoperability, an application should unbind all parameters that applied to a previous SQL statement before preparing a new SQL statement on the same . This prevents errors that are caused by previous parameter information being applied to the new SQL statement. + + If you call an Execute method after you call , any parameter value that is larger than the value specified by the property is automatically truncated to the original specified size of the parameter, and no truncation errors are returned. + + Output parameters (whether prepared or not) must have a user-specified data type. If you specify a variable length data type, you must also specify the maximum . + ]]> - The is not set. - - -or- - + The is not set. + + -or- + The is not . Executing a Command @@ -1212,11 +1212,11 @@ SELECT * FROM Customers WHERE CustomerID = ? Resets the property to the default value. - is 30 seconds. - + is 30 seconds. + ]]> Executing a Command @@ -1349,11 +1349,11 @@ This member is an explicit interface member implementation. It can be used only For a description of this member, see . A new that is a copy of this instance. - instance is cast to an interface. - + instance is cast to an interface. + ]]> Executing a Command @@ -1395,11 +1395,11 @@ This member is an explicit interface member implementation. It can be used only Gets or sets the within which the executes. An . The default is a null value. - property if it is already set to a specific value, and the command is in the process of executing. If you set the transaction property to an object that is not connected to the same as the object, an exception will be thrown the next time that you try to execute a statement. - + property if it is already set to a specific value, and the command is in the process of executing. If you set the transaction property to an object that is not connected to the same as the object, an exception will be thrown the next time that you try to execute a statement. + ]]> @@ -1441,13 +1441,13 @@ This member is an explicit interface member implementation. It can be used only Gets or sets a value that specifies how the **Update** method should apply command results to the **DataRow**. One of the values. - value is **Both** unless the command is automatically generated, as with the , in which case the default is **None**. - - For more information about how to use the property, see [DataAdapter Parameters](/dotnet/framework/data/adonet/dataadapter-parameters). - + value is **Both** unless the command is automatically generated, as with the , in which case the default is **None**. + + For more information about how to use the property, see [DataAdapter Parameters](/dotnet/framework/data/adonet/dataadapter-parameters). + ]]> Executing a Command diff --git a/xml/System.Data.Odbc/OdbcCommandBuilder.xml b/xml/System.Data.Odbc/OdbcCommandBuilder.xml index 9747b69637d..3447dd6bb11 100644 --- a/xml/System.Data.Odbc/OdbcCommandBuilder.xml +++ b/xml/System.Data.Odbc/OdbcCommandBuilder.xml @@ -39,30 +39,30 @@ Automatically generates single-table commands that are used to reconcile changes made to a with the associated data source. This class cannot be inherited. - does not automatically generate the SQL statements required to reconcile changes made to a associated with the data source. However, you can create an object that generates SQL statements for single-table updates by setting the property of the . The then generates any additional SQL statements that you do not set. - - The relationship between an and its corresponding is always one-to-one. To create this correspondence, you set the property of the object. This causes the to register itself as a listener, which produces the output of events that affect the . - - To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata. If you change the value of after the metadata has been retrieved, such as after the first update, you should then call the method to update the metadata. - + does not automatically generate the SQL statements required to reconcile changes made to a associated with the data source. However, you can create an object that generates SQL statements for single-table updates by setting the property of the . The then generates any additional SQL statements that you do not set. + + The relationship between an and its corresponding is always one-to-one. To create this correspondence, you set the property of the object. This causes the to register itself as a listener, which produces the output of events that affect the . + + To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata. If you change the value of after the metadata has been retrieved, such as after the first update, you should then call the method to update the metadata. + > [!NOTE] -> If the SELECT statement assigned to the property uses aliased column names, the resulting INSERT, UPDATE, and DELETE statements may be inaccurate or fail. If the underlying ODBC driver cannot provide the appropriate base column name for the alias column name (using the SQL_DESC_BASE_COLUMN_NAME value of `SQLColAttribute`), the alias name could be used in the generated INSERT, UPDATE, and DELETE statements. For example, the Microsoft ODBC Driver for Oracle returns the alias name as the base column name. Therefore, the generated INSERT, UPDATE, and DELETE statements would cause errors. - - The also uses the , , and properties referenced by the . The user should call if one or more of these properties are modified, or if the value of the property itself is changed. Otherwise the , , and properties retain their previous values. - - If you call , the is disassociated from the , and the generated commands are no longer used. - - - -## Examples - The following example uses , together with and , to select rows from a data source. The example is passed an initialized , a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the data source table. The example then creates an . - +> If the SELECT statement assigned to the property uses aliased column names, the resulting INSERT, UPDATE, and DELETE statements may be inaccurate or fail. If the underlying ODBC driver cannot provide the appropriate base column name for the alias column name (using the SQL_DESC_BASE_COLUMN_NAME value of `SQLColAttribute`), the alias name could be used in the generated INSERT, UPDATE, and DELETE statements. For example, the Microsoft ODBC Driver for Oracle returns the alias name as the base column name. Therefore, the generated INSERT, UPDATE, and DELETE statements would cause errors. + + The also uses the , , and properties referenced by the . The user should call if one or more of these properties are modified, or if the value of the property itself is changed. Otherwise the , , and properties retain their previous values. + + If you call , the is disassociated from the , and the generated commands are no longer used. + + + +## Examples + The following example uses , together with and , to select rows from a data source. The example is passed an initialized , a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the data source table. The example then creates an . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OdbcCommandBuilder/CS/mysample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OdbcCommandBuilder/VB/mysample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OdbcCommandBuilder/VB/mysample.vb" id="Snippet1"::: + ]]> Generating Commands with CommandBuilders @@ -99,11 +99,11 @@ Initializes a new instance of the class. - Generating Commands with CommandBuilders @@ -135,13 +135,13 @@ An object to associate with this . Initializes a new instance of the class with the associated object. - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance of , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance of , any existing associated with this is released. + ]]> Generating Commands with CommandBuilders @@ -218,13 +218,13 @@ Gets or sets an object for which this object will generate SQL statements. An object that is associated with this . - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance of , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance of , any existing associated with this is released. + ]]> Generating Commands with CommandBuilders @@ -258,15 +258,15 @@ The referencing the stored procedure from which the parameter information is to be derived. The derived parameters are added to the collection of the . Retrieves parameter information from the stored procedure specified in the and populates the collection of the specified object. - overwrites any existing parameter information for the . - - requires an additional call to the data source to obtain the information. If the parameter information is known in advance, it is more efficient to populate the parameters collection by setting the information explicitly. - - You can only use with stored procedures. You cannot use to populate the with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. - + overwrites any existing parameter information for the . + + requires an additional call to the data source to obtain the information. If the parameter information is known in advance, it is more efficient to populate the parameters collection by setting the information explicitly. + + You can only use with stored procedures. You cannot use to populate the with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. + ]]> The underlying ODBC driver does not support returning stored procedure parameter information, or the command text is not a valid stored procedure name, or the specified was not . @@ -308,15 +308,15 @@ Gets the automatically generated object required to perform deletions at the data source. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -349,15 +349,15 @@ Gets the automatically generated object required to perform deletions at the data source. The automatically generated object required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -391,23 +391,23 @@ Gets the automatically generated object required to perform deletions at the data source. The automatically generated object required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified, and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified, and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + ]]> Generating Commands with CommandBuilders @@ -421,15 +421,15 @@ Gets the automatically generated object required to perform insertions at the data source. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -462,15 +462,15 @@ Gets the automatically generated object required to perform insertions at the data source. The automatically generated object required to perform insertions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -504,23 +504,23 @@ Gets the automatically generated object required to perform insertions at the data source. The automatically generated object required to perform insertions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified, and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified, and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + ]]> Generating Commands with CommandBuilders @@ -624,15 +624,15 @@ Gets the automatically generated object required to perform updates at the data source. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -665,15 +665,15 @@ Gets the automatically generated object required to perform updates at the data source. The automatically generated object required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -707,23 +707,23 @@ Gets the automatically generated object required to perform updates at the data source. The automatically generated object required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified, and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, you must explicitly call if it changes the statement in any way. Otherwise, the still will be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified, and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + ]]> Generating Commands with CommandBuilders diff --git a/xml/System.Data.Odbc/OdbcConnection.xml b/xml/System.Data.Odbc/OdbcConnection.xml index 0c992ba4372..cd37867e2ab 100644 --- a/xml/System.Data.Odbc/OdbcConnection.xml +++ b/xml/System.Data.Odbc/OdbcConnection.xml @@ -1306,9 +1306,9 @@ driver-defined-attribute-keyword ::= identifier ## Remarks The following are allowed state changes: -- From `Closed` to `Open`, using the method. +- From `Closed` to `Open`, using the method. -- From `Open` to `Closed`, using either the or **Dispose** method. +- From `Open` to `Closed`, using either the or **Dispose** method. > [!NOTE] > Calling the property on an open connection increases application overhead because each such call causes a SQL_ATTR_CONNECTION_DEAD call to the underlying ODBC driver to determine whether the connection is still valid. diff --git a/xml/System.Data.Odbc/OdbcPermission.xml b/xml/System.Data.Odbc/OdbcPermission.xml index 166bcd26ca3..f93a7988cdb 100644 --- a/xml/System.Data.Odbc/OdbcPermission.xml +++ b/xml/System.Data.Odbc/OdbcPermission.xml @@ -44,14 +44,14 @@ Enables the .NET Framework Data Provider for ODBC to help make sure that a user has a security level sufficient to access an ODBC data source. This class cannot be inherited. - @@ -103,11 +103,11 @@ Initializes a new instance of the class. - @@ -190,11 +190,11 @@ Indicates whether a blank password is allowed. Initializes a new instance of the class. - enumeration takes precedence over the property. Therefore, if you set to `false`, you must also set to `None` to prevent a user from making a connection using a blank password. - + enumeration takes precedence over the property. Therefore, if you set to `false`, you must also set to `None` to prevent a user from making a connection using a blank password. + ]]> @@ -238,17 +238,17 @@ One of the values. Adds access for the specified connection string to the existing state of the permission. - diff --git a/xml/System.Data.OleDb/OleDbCommandBuilder.xml b/xml/System.Data.OleDb/OleDbCommandBuilder.xml index 3a9e79ac6bd..30128d0f5c4 100644 --- a/xml/System.Data.OleDb/OleDbCommandBuilder.xml +++ b/xml/System.Data.OleDb/OleDbCommandBuilder.xml @@ -44,27 +44,27 @@ Automatically generates single-table commands that are used to reconcile changes made to a with the associated database. This class cannot be inherited. - does not automatically generate the SQL statements required to reconcile changes made to a with the associated data source. However, you can create an object to automatically generate SQL statements for single-table updates if you set the property of the . Then, any additional SQL statements that you do not set are generated by the . - - The registers itself as a listener for events whenever you set the property. You can only associate one or object with each other at one time. - - To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata automatically. If you change the after the metadata is retrieved, such as after the first update, you should call the method to update the metadata. - - The also uses the , , and properties referenced by the . The user should call if one or more of these properties are modified, or if the itself is replaced. Otherwise the , , and properties retain their previous values. - - If you call , the is disassociated from the , and the generated commands are no longer used. - - - -## Examples - The following example uses the , along and , to select rows from a data source. The example is passed an initialized , a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the data source table. The example then creates an . - + does not automatically generate the SQL statements required to reconcile changes made to a with the associated data source. However, you can create an object to automatically generate SQL statements for single-table updates if you set the property of the . Then, any additional SQL statements that you do not set are generated by the . + + The registers itself as a listener for events whenever you set the property. You can only associate one or object with each other at one time. + + To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata automatically. If you change the after the metadata is retrieved, such as after the first update, you should call the method to update the metadata. + + The also uses the , , and properties referenced by the . The user should call if one or more of these properties are modified, or if the itself is replaced. Otherwise the , , and properties retain their previous values. + + If you call , the is disassociated from the , and the generated commands are no longer used. + + + +## Examples + The following example uses the , along and , to select rows from a data source. The example is passed an initialized , a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the data source table. The example then creates an . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OleDbCommandBuilder/CS/mysample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OleDbCommandBuilder/VB/mysample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OleDbCommandBuilder/VB/mysample.vb" id="Snippet1"::: + ]]> Generating Commands with CommandBuilders @@ -130,13 +130,13 @@ An . Initializes a new instance of the class with the associated object. - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance , any existing associated with this is released. + ]]> Generating Commands with CommandBuilders @@ -217,13 +217,13 @@ Gets or sets an object for which SQL statements are automatically generated. An object. - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance , any existing associated with this is released. + ]]> Generating Commands with CommandBuilders @@ -257,17 +257,17 @@ The referencing the stored procedure from which the parameter information is to be derived. The derived parameters are added to the collection of the . Retrieves parameter information from the stored procedure specified in the and populates the collection of the specified object. - overwrites any existing parameter information for the . - - requires an additional call to the data source to obtain the information. If the parameter information is known in advance, it is more efficient to populate the parameters collection by setting the information explicitly. - - You can only use with stored procedures. You cannot use to populate the with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. - - For more information, see [Configuring Parameters and Parameter Data Types](/dotnet/framework/data/adonet/configuring-parameters-and-parameter-data-types). - + overwrites any existing parameter information for the . + + requires an additional call to the data source to obtain the information. If the parameter information is known in advance, it is more efficient to populate the parameters collection by setting the information explicitly. + + You can only use with stored procedures. You cannot use to populate the with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. + + For more information, see [Configuring Parameters and Parameter Data Types](/dotnet/framework/data/adonet/configuring-parameters-and-parameter-data-types). + ]]> The underlying OLE DB provider does not support returning stored procedure parameter information, the command text is not a valid stored procedure name, or the specified was not . @@ -309,15 +309,15 @@ Gets the automatically generated object required to perform deletions at the data source. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -350,15 +350,15 @@ Gets the automatically generated object required to perform deletions at the data source. The automatically generated object required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -392,23 +392,23 @@ Gets the automatically generated object required to perform deletions at the data source. The automatically generated object required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + ]]> Generating Commands with CommandBuilders @@ -422,15 +422,15 @@ Gets the automatically generated object required to perform insertions at the data source. - method for informational or troubleshooting purposes because it returns the text of the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the text of the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -463,15 +463,15 @@ Gets the automatically generated object required to perform insertions at the data source. The automatically generated object required to perform insertions. - method for informational or troubleshooting purposes because it returns the text of the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the text of the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -505,23 +505,23 @@ Gets the automatically generated object required to perform insertions at the data source. The automatically generated object required to perform insertions. - method for informational or troubleshooting purposes because it returns the text of the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - + method for informational or troubleshooting purposes because it returns the text of the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + ]]> Generating Commands with CommandBuilders @@ -625,15 +625,15 @@ Gets the automatically generated object required to perform updates at the data source. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -666,15 +666,15 @@ Gets the automatically generated object required to perform updates at the data source. The automatically generated object required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + ]]> Generating Commands with CommandBuilders @@ -708,23 +708,23 @@ Gets the automatically generated object required to perform updates at the data source, optionally using columns for parameter names. The automatically generated object required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + ]]> Generating Commands with CommandBuilders diff --git a/xml/System.Data.OleDb/OleDbConnection.xml b/xml/System.Data.OleDb/OleDbConnection.xml index 7e9b19988a6..110e37c18c5 100644 --- a/xml/System.Data.OleDb/OleDbConnection.xml +++ b/xml/System.Data.OleDb/OleDbConnection.xml @@ -522,9 +522,9 @@ ## Remarks The is designed to match OLE DB connection string format as closely as possible with the following exceptions: -- The "Provider = `value` " clause is required. However, you cannot use "Provider = MSDASQL" because the .NET Framework Data Provider for OLE DB does not support the OLE DB Provider for ODBC (MSDASQL). To access ODBC data sources, use the object that is in the namespace. +- The "Provider = `value` " clause is required. However, you cannot use "Provider = MSDASQL" because the .NET Framework Data Provider for OLE DB does not support the OLE DB Provider for ODBC (MSDASQL). To access ODBC data sources, use the object that is in the namespace. -- Unlike ODBC or ADO, the connection string that is returned is the same as the user-set , minus security information if `Persist Security Info` is set to `false` (default). The .NET Framework Data Provider for OLE DB does not persist or return the password in a connection string unless you set the `Persist Security Info` keyword to `true` (not recommended). To maintain a high level of security, it is strongly recommended that you use the `Integrated Security` keyword with `Persist Security Info` set to `false`. +- Unlike ODBC or ADO, the connection string that is returned is the same as the user-set , minus security information if `Persist Security Info` is set to `false` (default). The .NET Framework Data Provider for OLE DB does not persist or return the password in a connection string unless you set the `Persist Security Info` keyword to `true` (not recommended). To maintain a high level of security, it is strongly recommended that you use the `Integrated Security` keyword with `Persist Security Info` set to `false`. You can use the property to connect to a variety of data sources. The following example illustrates several possible connection strings. @@ -1480,9 +1480,9 @@ ## Remarks The following are allowed state changes: -- From `Closed` to `Open`, using the method of the object. +- From `Closed` to `Open`, using the method of the object. -- From `Open` to `Closed`, using either the method or the **Dispose** method of the object. +- From `Open` to `Closed`, using either the method or the **Dispose** method of the object. > [!NOTE] > In previous version of the .NET Framework, calling the property increased application overhead because each call caused a call to the OLE DB DBPROP_CONNECTIONSTATUS property for an open connection. With the release of the .NET Framework 2.0, this is no longer an issue. diff --git a/xml/System.Data.OracleClient/OracleBFile.xml b/xml/System.Data.OracleClient/OracleBFile.xml index 9471f7a0dde..83b5a28d413 100644 --- a/xml/System.Data.OracleClient/OracleBFile.xml +++ b/xml/System.Data.OracleClient/OracleBFile.xml @@ -29,44 +29,44 @@ Represents a managed object designed to work with the Oracle data type. This class cannot be inherited. - class are not supported. - - Other characteristics of a `BFILE` data type that distinguish it from a `LOB` data type are that it: - -- Contains unstructured data. - -- Supports server-side chunking. - -- Uses reference copy semantics. For example, if you perform a copy operation on a `BFILE`, only the `BFILE` locator (which is a reference to the file) is copied. The data in the file is not copied. - - The `BFILE` data type should be used for referencing `LOB`s that are large in size, and therefore, not practical to store in the database. There is client, server, and communication overhead for using a `BFILE` data type compared to the `LOB` data type. It is more efficient to access a `BFILE` if you only need to obtain a small amount of data. It is more efficient to access database-resident `LOB`s if you need to obtain the entire object. - - Each non-NULL object is associated with two entities that define the location of the underlying physical file: - -- An Oracle DIRECTORY object, which is a database alias for a directory in the file system, and - -- The file name of the underlying physical file, which is located in the directory associated with the DIRECTORY object. - - After a `BFILE` is created, you can retrieve its locator in the form of an object using the or methods. - - To obtain an object, call the method. - - The physical file that an object is associated with does not need to exist until you attempt to access it. An application can bind an to a nonexistent file, create the physical file in the expected location, and then call . - - Any attempt to access a closed using the or methods reopens an stream automatically. - - The following C# example demonstrates how you can create a `BFILE` in an Oracle table, and then retrieve it in the form of an object. The example demonstrates the use of the object and the and methods. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks OracleClient.BFile/CS/source.cs" id="Snippet1"::: - - For more information about creating and using an Oracle `BFILE`, see the appropriate topic in your Oracle documentation. - + class are not supported. + + Other characteristics of a `BFILE` data type that distinguish it from a `LOB` data type are that it: + +- Contains unstructured data. + +- Supports server-side chunking. + +- Uses reference copy semantics. For example, if you perform a copy operation on a `BFILE`, only the `BFILE` locator (which is a reference to the file) is copied. The data in the file is not copied. + + The `BFILE` data type should be used for referencing `LOB`s that are large in size, and therefore, not practical to store in the database. There is client, server, and communication overhead for using a `BFILE` data type compared to the `LOB` data type. It is more efficient to access a `BFILE` if you only need to obtain a small amount of data. It is more efficient to access database-resident `LOB`s if you need to obtain the entire object. + + Each non-NULL object is associated with two entities that define the location of the underlying physical file: + +- An Oracle DIRECTORY object, which is a database alias for a directory in the file system, and + +- The file name of the underlying physical file, which is located in the directory associated with the DIRECTORY object. + + After a `BFILE` is created, you can retrieve its locator in the form of an object using the or methods. + + To obtain an object, call the method. + + The physical file that an object is associated with does not need to exist until you attempt to access it. An application can bind an to a nonexistent file, create the physical file in the expected location, and then call . + + Any attempt to access a closed using the or methods reopens an stream automatically. + + The following C# example demonstrates how you can create a `BFILE` in an Oracle table, and then retrieve it in the form of an object. The example demonstrates the use of the object and the and methods. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks OracleClient.BFile/CS/source.cs" id="Snippet1"::: + + For more information about creating and using an Oracle `BFILE`, see the appropriate topic in your Oracle documentation. + > [!NOTE] -> The `BeginWrite`, `EndWrite`, and `WriteByte` methods, which are inherited from the `System.IO.Stream` class, are not supported because the `BFILE` data type is read-only. - +> The `BeginWrite`, `EndWrite`, and `WriteByte` methods, which are inherited from the `System.IO.Stream` class, are not supported because the `BFILE` data type is read-only. + ]]> @@ -167,11 +167,11 @@ Creates a copy of this object associated with the same physical file as the original. A new object associated with the same physical file as the original object. - object initially have the same values as those of the original object. However, after the is complete, each object is independent from the other. For example, changing the value of the property on the original does not change the value of on the copy. - + object initially have the same values as those of the original object. However, after the is complete, each object is independent from the other. For example, changing the value of the property on the original does not change the value of on the copy. + ]]> @@ -234,20 +234,20 @@ Copies the entire contents of this to the beginning of a destination . The number of bytes copied. - and the destination must be compatible. For example, you cannot copy binary data to a destination that has a character data type. - - You must have write access to the destination for the operation to execute correctly. - + and the destination must be compatible. For example, you cannot copy binary data to a destination that has a character data type. + + You must have write access to the destination for the operation to execute correctly. + ]]> The destination is a null object reference. - The destination is a null . - - -or- - + The destination is a null . + + -or- + The connection with which this is associated is closed. The object is closed or disposed. @@ -280,20 +280,20 @@ Copies the entire contents of this to a destination at the specified offset. The number of bytes copied. - and the destination must be compatible. For example, you cannot copy binary data to a destination that has a character data type. - - You must have write access to the destination for the operation to execute correctly. - + and the destination must be compatible. For example, you cannot copy binary data to a destination that has a character data type. + + You must have write access to the destination for the operation to execute correctly. + ]]> The destination is a null object reference. - The destination is a null . - - -or- - + The destination is a null . + + -or- + The connection with which this is associated is closed. The object is closed or disposed. @@ -330,21 +330,21 @@ Copies from this to a destination with the specified amount of data, the source offset, and the destination offset. The number of bytes copied. - and the destination must be compatible. For example, you cannot copy binary data to a destination that has a character data type. - - You must have write access to the destination for the operation to execute correctly. - + and the destination must be compatible. For example, you cannot copy binary data to a destination that has a character data type. + + You must have write access to the destination for the operation to execute correctly. + ]]> The value of the amount parameter is less than zero or greater than 4 gigabytes. The destination is a null object reference. - The destination is a null . - - -or- - + The destination is a null . + + -or- + The connection with which this is associated is closed. The object is closed or disposed. @@ -370,19 +370,19 @@ Gets the name of the DIRECTORY object, with which an object is associated. The name of the DIRECTORY object. - object is associated with two entities that define the location of underlying physical file: - -- An Oracle DIRECTORY object, which is a database alias for a directory in the file system, and - -- The file name of the underlying physical file, which is located in the directory associated with the DIRECTORY object. - - The property returns the name of the DIRECTORY object from the Oracle database. - - For more information about creating and using an Oracle `BFILE`, see the appropriate topic in your Oracle documentation. - + object is associated with two entities that define the location of underlying physical file: + +- An Oracle DIRECTORY object, which is a database alias for a directory in the file system, and + +- The file name of the underlying physical file, which is located in the directory associated with the DIRECTORY object. + + The property returns the name of the DIRECTORY object from the Oracle database. + + For more information about creating and using an Oracle `BFILE`, see the appropriate topic in your Oracle documentation. + ]]> Attempted to call on a closed or disposed object. @@ -484,11 +484,11 @@ Gets the name of the without the path. The name of the BFILE. - , an empty string is returned. - + , an empty string is returned. + ]]> The object is closed or disposed. @@ -588,13 +588,13 @@ Represents a null object that is not bound to a physical file. - can be useful when you want to perform a comparison operation on an to determine nullability. - - Any attempt to perform a read operation on a object succeeds, but does not return any data. Any attempt to perform a write operation on a object generates an exception. Selecting a `BFILE` column that contains a null value returns . - + can be useful when you want to perform a comparison operation on an to determine nullability. + + Any attempt to perform a read operation on a object succeeds, but does not return any data. Any attempt to perform a write operation on a object generates an exception. Selecting a `BFILE` column that contains a null value returns . + ]]> @@ -620,11 +620,11 @@ Gets the current read position in the stream. The current position within the stream. - Attempted to set a position with a negative value or greater than the length of the stream. @@ -660,35 +660,35 @@ Reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read. The total number of bytes read into the buffer. This may be less than the number of bytes requested if that many bytes are not currently available, or zero if the end of the file has been reached. - method read a maximum of `count` bytes from the current stream and store them in `buffer` beginning at `offset`. The current position within the stream is advanced by the number of bytes read; however, if an exception occurs, the current position within the stream remains unchanged. returns the number of bytes read. The return value is zero only if the position is currently at the end of the stream. will block until at least one byte of data can be read, in the event that no data is available. returns 0 only when the end of the file has been reached. is free to return fewer bytes than requested even if the end of the stream has not been reached. - - Any attempt to access a closed using the or methods reopens an stream automatically. - - The following C# example assumes this schema in an Oracle table: - -``` -(col1 number, col2 BFILE) -``` - - The example demonstrates using the and methods to access an object. - -```csharp -byte[] buffer = new byte[100]; -OracleDataReader dataReader = command.ExecuteReader(); -using (dataReader) { - if (dataReader.Read()) { - OracleBFile BFile = dataReader.GetOracleBFile(1); - using (BFile) { - BFile.Seek(0, SeekOrigin.Begin); - BFile.Read(buffer, 0, 100); - } - } -} -``` - + method read a maximum of `count` bytes from the current stream and store them in `buffer` beginning at `offset`. The current position within the stream is advanced by the number of bytes read; however, if an exception occurs, the current position within the stream remains unchanged. returns the number of bytes read. The return value is zero only if the position is currently at the end of the stream. will block until at least one byte of data can be read, in the event that no data is available. returns 0 only when the end of the file has been reached. is free to return fewer bytes than requested even if the end of the stream has not been reached. + + Any attempt to access a closed using the or methods reopens an stream automatically. + + The following C# example assumes this schema in an Oracle table: + +``` +(col1 number, col2 BFILE) +``` + + The example demonstrates using the and methods to access an object. + +```csharp +byte[] buffer = new byte[100]; +OracleDataReader dataReader = command.ExecuteReader(); +using (dataReader) { + if (dataReader.Read()) { + OracleBFile BFile = dataReader.GetOracleBFile(1); + using (BFile) { + BFile.Seek(0, SeekOrigin.Begin); + BFile.Read(buffer, 0, 100); + } + } +} +``` + ]]> The sum of and is larger than the buffer length. @@ -728,37 +728,37 @@ using (dataReader) { Sets the position on the current stream. The new position within the current stream. - using the or methods reopens an stream automatically. - - The following C# example assumes this schema in an Oracle table: - -``` -(col1 number, col2 BFILE) -``` - - The example demonstrates using the and methods to access an object. - -```csharp -byte[] buffer = new byte[100]; -OracleDataReader dataReader = command.ExecuteReader(); -using (dataReader) { - if (dataReader.Read()) { - OracleBFile BFile = dataReader.GetOracleBFile(1); - using (BFile) { - BFile.Seek(0, SeekOrigin.Begin); - BFile.Read(buffer, 0, 100); - } - } -} -``` - + using the or methods reopens an stream automatically. + + The following C# example assumes this schema in an Oracle table: + +``` +(col1 number, col2 BFILE) +``` + + The example demonstrates using the and methods to access an object. + +```csharp +byte[] buffer = new byte[100]; +OracleDataReader dataReader = command.ExecuteReader(); +using (dataReader) { + if (dataReader.Read()) { + OracleBFile BFile = dataReader.GetOracleBFile(1); + using (BFile) { + BFile.Seek(0, SeekOrigin.Begin); + BFile.Read(buffer, 0, 100); + } + } +} +``` + ]]> Attempted to set a position with a negative value or greater than the length of the stream. @@ -791,40 +791,40 @@ using (dataReader) { The name of the file in the operating system. Binds the object to a different file in the operating system. - operation must be within a transaction to succeed. Simply calling on a `BFILE` associates the object with a different file, but does not update the Oracle table. To update the Oracle table after calling , you must call the `Update` method of the and then commit the transaction. - - Once you retrieve the or property, they are cached in the object and are unaffected by any cloned objects' calls to , or by any changes to the `BFILE` in the database. In other words, they might not represent the actual values of the `BFILE` object in the server. - - Furthermore, retrieving either property ( or ) causes both property values to be retrieved from the server and cached in the object. - - The following C# example assumes this schema in an Oracle table: - -``` -(col1 number, col2 BFILE) -``` - - The example demonstrates using the , and methods to access an object. - -```csharp -byte[] buffer = new byte[100]; -OracleDataReader dataReader = command.ExecuteReader(); -using (dataReader) { - if (dataReader.Read()) { - OracleBFile BFile = dataReader.GetOracleBFile(1); - using (BFile) { - BFile.Seek(0, SeekOrigin.Begin); - BFile.Read(buffer, 0, 100); - command.Transaction = connection.BeginTransaction(); - BFile.SetFileName("TESTDIR", "File1.jpg"); - BFile.Read(buffer, 0, 100); - } - } -} -``` - + operation must be within a transaction to succeed. Simply calling on a `BFILE` associates the object with a different file, but does not update the Oracle table. To update the Oracle table after calling , you must call the `Update` method of the and then commit the transaction. + + Once you retrieve the or property, they are cached in the object and are unaffected by any cloned objects' calls to , or by any changes to the `BFILE` in the database. In other words, they might not represent the actual values of the `BFILE` object in the server. + + Furthermore, retrieving either property ( or ) causes both property values to be retrieved from the server and cached in the object. + + The following C# example assumes this schema in an Oracle table: + +``` +(col1 number, col2 BFILE) +``` + + The example demonstrates using the , and methods to access an object. + +```csharp +byte[] buffer = new byte[100]; +OracleDataReader dataReader = command.ExecuteReader(); +using (dataReader) { + if (dataReader.Read()) { + OracleBFile BFile = dataReader.GetOracleBFile(1); + using (BFile) { + BFile.Seek(0, SeekOrigin.Begin); + BFile.Read(buffer, 0, 100); + command.Transaction = connection.BeginTransaction(); + BFile.SetFileName("TESTDIR", "File1.jpg"); + BFile.Read(buffer, 0, 100); + } + } +} +``` + ]]> The operation must be within a transaction. @@ -878,14 +878,14 @@ using (dataReader) { Gets an of type that contains the data. An of type that contains the data. - property reads the entire `BFILE` at one time. - + property reads the entire `BFILE` at one time. + > [!NOTE] -> A benefit of using `BFILE`s is the ability to retrieve large amounts of data in chunks at the client. However, when you use , you obtain all the data for the BFILE column as one contiguous chunk, which can significantly increase application overhead. - +> A benefit of using `BFILE`s is the ability to retrieve large amounts of data in chunks at the client. However, when you use , you obtain all the data for the BFILE column as one contiguous chunk, which can significantly increase application overhead. + ]]> diff --git a/xml/System.Data.OracleClient/OracleCommandBuilder.xml b/xml/System.Data.OracleClient/OracleCommandBuilder.xml index 3a18a16e8d7..ca1cdb4b05e 100644 --- a/xml/System.Data.OracleClient/OracleCommandBuilder.xml +++ b/xml/System.Data.OracleClient/OracleCommandBuilder.xml @@ -30,67 +30,67 @@ Automatically generates single-table commands used to reconcile changes made to a with the associated database. This class cannot be inherited. - does not automatically generate the SQL statements required to reconcile changes made to a associated with the database. However, you can create an object that generates SQL statements for single-table updates by setting the property of the . Then, the generates any additional SQL statements that you do not set. - - The relationship between an and its corresponding is always one-to-one. To create this correspondence, you set the property of the object. This causes the to register itself as a listener, which produces the output of events that affect the . - - To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata. - - The also uses the , and properties referenced by the . - - If you call , the is disassociated from the , and the generated commands are no longer used. - - - -## Examples - The following example uses , along with and , to select rows from a database. The example is passed an initialized , a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the database table. The example then creates an . - -```vb -Private Function SelectOracleRows(connection As String, queryString As String, tableName As String) As DataSet - - Dim connection As New OracleConnection(connection) - Dim dataAdapter As New OracleDataAdapter() - Dim dataSet As DataSet = New DataSet - - dataAdapter.SelectCommand = New OracleCommand(queryString, connection) - - Dim cmdBuilder As OracleCommandBuilder = New OracleCommandBuilder(dataAdapter) - - connection.Open() - dataAdapter.Fill(dataSet, tableName) - ' Code to modify data in DataSet here - ' Without the OracleCommandBuilder this line would fail. - dataAdapter.Update(dataSet, tableName) - connection.Close() -End Function -``` - -```csharp -public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQuery, string myTableName) -{ - OracleConnection myConn = new OracleConnection(myConnection); - OracleDataAdapter myDataAdapter = new OracleDataAdapter(); - myDataAdapter.SelectCommand = new OracleCommand(mySelectQuery, myConn); - OracleCommandBuilder cb = new OracleCommandBuilder(myDataAdapter); - - myConn.Open(); - DataSet ds = new DataSet(); - myDataAdapter.Fill(ds, myTableName); - - //Code to modify data in DataSet goes here... - - //Without the OracleCommandBuilder this line would fail. - myDataAdapter.Update(ds, myTableName); - myConn.Close(); - return ds; -} -``` - + does not automatically generate the SQL statements required to reconcile changes made to a associated with the database. However, you can create an object that generates SQL statements for single-table updates by setting the property of the . Then, the generates any additional SQL statements that you do not set. + + The relationship between an and its corresponding is always one-to-one. To create this correspondence, you set the property of the object. This causes the to register itself as a listener, which produces the output of events that affect the . + + To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata. + + The also uses the , and properties referenced by the . + + If you call , the is disassociated from the , and the generated commands are no longer used. + + + +## Examples + The following example uses , along with and , to select rows from a database. The example is passed an initialized , a connection string, a query string that is an SQL SELECT statement, and a string that is the name of the database table. The example then creates an . + +```vb +Private Function SelectOracleRows(connection As String, queryString As String, tableName As String) As DataSet + + Dim connection As New OracleConnection(connection) + Dim dataAdapter As New OracleDataAdapter() + Dim dataSet As DataSet = New DataSet + + dataAdapter.SelectCommand = New OracleCommand(queryString, connection) + + Dim cmdBuilder As OracleCommandBuilder = New OracleCommandBuilder(dataAdapter) + + connection.Open() + dataAdapter.Fill(dataSet, tableName) + ' Code to modify data in DataSet here + ' Without the OracleCommandBuilder this line would fail. + dataAdapter.Update(dataSet, tableName) + connection.Close() +End Function +``` + +```csharp +public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQuery, string myTableName) +{ + OracleConnection myConn = new OracleConnection(myConnection); + OracleDataAdapter myDataAdapter = new OracleDataAdapter(); + myDataAdapter.SelectCommand = new OracleCommand(mySelectQuery, myConn); + OracleCommandBuilder cb = new OracleCommandBuilder(myDataAdapter); + + myConn.Open(); + DataSet ds = new DataSet(); + myDataAdapter.Fill(ds, myTableName); + + //Code to modify data in DataSet goes here... + + //Without the OracleCommandBuilder this line would fail. + myDataAdapter.Update(ds, myTableName); + myConn.Close(); + return ds; +} +``` + ]]> Generating Commands with CommandBuilders @@ -122,13 +122,13 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Initializes a new instance of the . - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance of , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance of , any existing associated with this is released. + ]]> @@ -154,13 +154,13 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu An object to associate with this . Initializes a new instance of the class with the associated object. - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance of , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance of , any existing associated with this is released. + ]]> @@ -295,13 +295,13 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets or sets an object for which this object will generate SQL statements. An object that is associated with this . - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance of , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance of , any existing associated with this is released. + ]]> @@ -330,17 +330,17 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu The referencing the stored procedure from which the parameter information is to be derived. The derived parameters are added to the collection of the . Retrieves parameter information from the stored procedure specified in the and populates the collection of the specified object. - overwrites any existing parameter information for the . - - requires an extra call to the database to obtain the information. If the parameter information is known in advance, it is more efficient to populate the parameters collection by setting the information explicitly. - - You can only use with stored procedures. You cannot use to populate the with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. - - For more information, see [Configuring Parameters and Parameter Data Types](/dotnet/framework/data/adonet/configuring-parameters-and-parameter-data-types). - + overwrites any existing parameter information for the . + + requires an extra call to the database to obtain the information. If the parameter information is known in advance, it is more efficient to populate the parameters collection by setting the information explicitly. + + You can only use with stored procedures. You cannot use to populate the with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. + + For more information, see [Configuring Parameters and Parameter Data Types](/dotnet/framework/data/adonet/configuring-parameters-and-parameter-data-types). + ]]> The command text is not a valid stored procedure name, or the specified was not . @@ -378,17 +378,17 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform deletions on the database. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -416,17 +416,17 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform deletions on the database. The automatically generated object required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -456,25 +456,25 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform deletions on the database. The automatically generated object required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on, for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on, for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -487,17 +487,17 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform insertions on the database. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -525,17 +525,17 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform insertions on the database. The automatically generated object required to perform insertions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -565,25 +565,25 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform insertions on the database. The automatically generated object required to perform insertions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on, for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on, for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -674,17 +674,17 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform updates on the database. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -712,17 +712,17 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform updates on the database. The automatically generated object required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -752,25 +752,25 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets the automatically generated object required to perform updates on the database. The automatically generated object required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on, for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the regular expression. - -- A is specified. - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on, for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter allows you to force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the regular expression. + +- A is specified. + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -918,11 +918,11 @@ public static DataSet SelectOracleSrvRows(string myConnection, string mySelectQu Gets or sets the character to be used for the separator between the schema identifier and any other identifiers. The character to be used as the schema separator. - diff --git a/xml/System.Data.OracleClient/OracleConnection.xml b/xml/System.Data.OracleClient/OracleConnection.xml index 298aa04b1b1..fc055b52324 100644 --- a/xml/System.Data.OracleClient/OracleConnection.xml +++ b/xml/System.Data.OracleClient/OracleConnection.xml @@ -44,31 +44,31 @@ Represents an open connection to a database. This class cannot be inherited. - object represents a unique connection to an Oracle database. In the case of a client/server database system, it is equivalent to a network connection to the server. - - An application that creates an instance of the object can set declarative or imperative security demands that require all direct and indirect callers to have adequate permission to the code. creates security demands by using the object. Users can verify that their code has adequate permissions by using the object. Users and administrators can also use the Code Access Security Policy Tool (Caspol.exe) to modify security policy at the machine, user, and enterprise levels. For more information, see [Security](/dotnet/standard/security/). - + object represents a unique connection to an Oracle database. In the case of a client/server database system, it is equivalent to a network connection to the server. + + An application that creates an instance of the object can set declarative or imperative security demands that require all direct and indirect callers to have adequate permission to the code. creates security demands by using the object. Users can verify that their code has adequate permissions by using the object. Users and administrators can also use the Code Access Security Policy Tool (Caspol.exe) to modify security policy at the machine, user, and enterprise levels. For more information, see [Security](/dotnet/standard/security/). + > [!NOTE] -> Unlike the **Connection** object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either as a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. - - If the object goes out of scope, it remains open. Therefore, you should always close objects by calling or **Dispose**, or by using the object within a `Using` statement. Otherwise, the garbage collection might not free them immediately. Such delays can cause errors if the maximum number of connections is reached while a number of connections are waiting to be deleted by the garbage collector. By contrast, closing the connections by calling uses native resources more efficiently, enhancing scalability and improving overall application performance. To ensure that connections are always closed, open the connection inside of a `Using` block. - +> Unlike the **Connection** object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either as a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. + + If the object goes out of scope, it remains open. Therefore, you should always close objects by calling or **Dispose**, or by using the object within a `Using` statement. Otherwise, the garbage collection might not free them immediately. Such delays can cause errors if the maximum number of connections is reached while a number of connections are waiting to be deleted by the garbage collector. By contrast, closing the connections by calling uses native resources more efficiently, enhancing scalability and improving overall application performance. To ensure that connections are always closed, open the connection inside of a `Using` block. + > [!NOTE] -> To deploy high-performance applications, you often need to use connection pooling. However, when you use the .NET Framework Data Provider for Oracle, you do not need to enable connection pooling because the provider manages this automatically. - - - -## Examples - The following example creates an and an . The is opened and set as the property. The example then calls , and closes the connection. To accomplish this, the is passed a connection string and a query string that is an SQL INSERT statement. - +> To deploy high-performance applications, you often need to use connection pooling. However, when you use the .NET Framework Data Provider for Oracle, you do not need to enable connection pooling because the provider manages this automatically. + + + +## Examples + The following example creates an and an . The is opened and set as the property. The example then calls , and closes the connection. To accomplish this, the is passed a connection string and a query string that is an SQL INSERT statement. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection/VB/source.vb" id="Snippet1"::: + ]]> @@ -101,14 +101,14 @@ Initializes a new instance of the . - . - + . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.OracleConnection1/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.OracleConnection1/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.OracleConnection1/VB/source.vb" id="Snippet1"::: + ]]> @@ -134,14 +134,14 @@ The connection used to open the database. Initializes a new instance of the class with the specified connection string. - . - + . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.OracleConnection1/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.OracleConnection1/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.OracleConnection1/VB/source.vb" id="Snippet1"::: + ]]> @@ -204,24 +204,24 @@ Begins a transaction at the database. An object representing the new transaction. - or methods. - - To ensure that the .NET Framework Data Provider for Oracle transaction management model performs correctly, avoid using other transaction management models, such as those provided by the database. - + or methods. + + To ensure that the .NET Framework Data Provider for Oracle transaction management model performs correctly, avoid using other transaction management models, such as those provided by the database. + > [!NOTE] -> If you do not specify an isolation level, the default isolation level is used. To specify an isolation level with the method, use the overload. - - - -## Examples - The following example creates an and an . It also demonstrates how to use the , , and methods. - +> If you do not specify an isolation level, the default isolation level is used. To specify an isolation level with the method, use the overload. + + + +## Examples + The following example creates an and an . It also demonstrates how to use the , , and methods. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.BeginTransaction/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.BeginTransaction/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.BeginTransaction/VB/source.vb" id="Snippet1"::: + ]]> Parallel transactions are not supported. @@ -255,21 +255,21 @@ Begins a transaction at the database with the specified value. An object representing the new transaction. - or methods. - - To ensure that the .NET Framework Data Provider for Oracle transaction management model performs correctly, avoid using other transaction management models, such as those provided by the database. - - - -## Examples - The following example creates an and an . It also demonstrates how to use the , , and methods. - + or methods. + + To ensure that the .NET Framework Data Provider for Oracle transaction management model performs correctly, avoid using other transaction management models, such as those provided by the database. + + + +## Examples + The following example creates an and an . It also demonstrates how to use the , , and methods. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.BeginTransaction/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.BeginTransaction/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.BeginTransaction/VB/source.vb" id="Snippet1"::: + ]]> Parallel transactions are not supported. @@ -300,14 +300,14 @@ The name of the database to use instead of the current database. Changes the current database for an open . - [!NOTE] -> Unlike the **Connection** object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either as a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. - +> Unlike the **Connection** object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either as a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. + ]]> The database name is not valid. @@ -335,11 +335,11 @@ Empties the connection pool. - resets (or empties) the connection pool. If connections are in use at the time of the call, they are marked appropriately and are discarded when is called on them. - + resets (or empties) the connection pool. If connections are in use at the time of the call, they are marked appropriately and are discarded when is called on them. + ]]> @@ -367,11 +367,11 @@ The to be cleared from the pool. Empties the connection pool associated with the specified connection. - method clears the connection pool that is associated with `connection`. If additional connections associated with `connection` are in use at the time of the call, they are marked appropriately and are discarded when is called on them. - + method clears the connection pool that is associated with `connection`. If additional connections associated with `connection` are in use at the time of the call, they are marked appropriately and are discarded when is called on them. + ]]> @@ -405,19 +405,19 @@ Closes the connection to the database. - method rolls back any pending transactions. It then releases the connection to the connection pool, or closes the connection if connection pooling is disabled. - - An application can call more than once without generating an exception. - + method rolls back any pending transactions. It then releases the connection to the connection pool, or closes the connection if connection pooling is disabled. + + An application can call more than once without generating an exception. + > [!NOTE] -> When you use the .NET Framework Data Provider for Oracle, you do not need to enable connection pooling because the provider manages this automatically. - +> When you use the .NET Framework Data Provider for Oracle, you do not need to enable connection pooling because the provider manages this automatically. + > [!CAUTION] -> Do not call on a , a , or any other managed object in the `Finalize` method of your class. In a finalizer, you should only release unmanaged resources that your class owns directly. If your class does not own any unmanaged resources, do not include a `Finalize` method in your class definition. For more information, see [Garbage Collection](/dotnet/standard/garbage-collection/). - +> Do not call on a , a , or any other managed object in the `Finalize` method of your class. In a finalizer, you should only release unmanaged resources that your class owns directly. If your class does not own any unmanaged resources, do not include a `Finalize` method in your class definition. For more information, see [Garbage Collection](/dotnet/standard/garbage-collection/). + ]]> @@ -479,70 +479,70 @@ Gets or sets the string used to open an Oracle database. The Oracle connection string that includes settings, such as the server name, needed to establish the initial connection. The default value is an empty string (""). - can be set only when the connection is closed. - - You can use the property to connect to a database. The following example illustrates a typical connection string. - -``` -"Data Source=Oracle8i;Integrated Security=yes" -``` - - Many of the settings specified in the string have corresponding read-only properties (for example, `Data Source=MyServer`, which corresponds to the property). When the connection string is set, all of these properties are updated, unless an error is detected, in which case none of the properties are updated. properties return only default settings or those settings specified in the . - - Resetting the on a closed connection resets all connection string values (and related properties), including the password. - - The connection string is parsed immediately after being set. If parsing reveals errors in syntax, a run-time exception, such as , is generated. Other errors can be found only when an attempt is made to open the connection. - - The basic format of a connection string is a series of keyword/value pairs separated by semicolons. The equal sign (=) connects each keyword and its value. To include values that contain a semicolon, single-quote character, or double-quote character, the value must be enclosed in double quotes. If the value contains both a semicolon and a double-quote character, the value can be enclosed in single quotes. The single quote is also useful if the value begins with a double-quote character. Conversely, the double quote can be used if the value begins with a single quote. If the value contains both single-quote and double-quote characters, the quote character used to enclose the value must be doubled each time it occurs within the value. - - To include preceding or trailing spaces in the string value, the value must be enclosed in either single quotes or double quotes. Any leading or trailing spaces around integer, Boolean, or enumerated values are ignored, even if enclosed in quotes. However, spaces within a string literal keyword or value are preserved. Single or double quotes may be used within a connection string without using delimiters unless a quote character is the first or last character in the value, for example, `Data Source= my'Server` or `Data Source= my"Server`. - - To include an equal sign (=) in a keyword or value, it must be preceded by another equal sign. For example, in the hypothetical connection string - -``` -"key==word=value" -``` - - the keyword is "key=word" and the value is "value". - - If a specific keyword in a keyword/value pair occurs more than once in a connection string, the last occurrence is used in the value set. - - Keywords are case insensitive. - - The following table lists the valid names for values within the . - -|Name|Default|Description| -|----------|-------------|-----------------| -|Data Source

-or-

Server||The name or network address of the instance of Oracle to which to connect.| -|Integrated Security|'false'|Whether the connection is to be a secure connection or not.

Recognized values are `true` (strongly recommended), `false`, `yes`, and `no`.| -|Password||The password for the Oracle account logging on. To maintain a high level of security, we strongly recommend that you use the Integrated Security keyword instead.| -|Persist Security Info|'false'|When set to `false` or `no` (strongly recommended), security-sensitive information such as the password is not returned as part of the connection if the connection is open or has ever been in an open . Resetting the connection string resets all connection string values, including the password.

Recognized values are `true`, `false`, `yes`, and `no`.| -|Unicode|'false'|Specifies whether the .NET Framework Data Provider for Oracle uses UTF16 mode API calls. This keyword is ignored except when using Oracle9i client software.| -|User ID||The Oracle login account. To maintain a high level of security, we strongly recommend that you use the Integrated Security keyword instead.| - - The following table lists the valid names for connection pooling values within the . - -|Name|Default|Description| -|----------|-------------|-----------------| -|Connection Lifetime|0|When a connection is returned to the pool, its creation time is compared with the current time, and the connection is destroyed if that time span (in seconds) exceeds the value specified by `Connection Lifetime`. This is useful in clustered configurations to force load balancing between a running server and a server just brought online.

A value of zero causes pooled connections to have the maximum connection time-out.| -|Enlist|'true'|When `true` or `yes`, the pooler automatically enlists the connection in the creation thread's current transaction context.

Recognized values are `true`, `false`, `yes`, and `no`.| -|Max Pool Size|100|The maximum number of connections allowed in the pool. Setting the `Max Pool Size` value of the can affect performance. If you plan to create and actively use more than 100 connections, you should increase `Max Pool Size` to a value that approximates the steady-state connection usage for the application.| -|Min Pool Size|0|The minimum number of connections allowed in the pool.| -|Pooling|'true'|When `true` or `yes`, the object is drawn from the appropriate pool, or if necessary, is created and added to the appropriate pool.

Recognized values are `true`, `false`, `yes`, and `no`.| - - When setting keyword or connection pooling values that require a Boolean value, you can use 'yes' instead of 'true', and 'no' instead of 'false'. Integer values are represented as strings. - - - -## Examples - The following example creates an and sets some of its properties in the connection string. - + can be set only when the connection is closed. + + You can use the property to connect to a database. The following example illustrates a typical connection string. + +``` +"Data Source=Oracle8i;Integrated Security=yes" +``` + + Many of the settings specified in the string have corresponding read-only properties (for example, `Data Source=MyServer`, which corresponds to the property). When the connection string is set, all of these properties are updated, unless an error is detected, in which case none of the properties are updated. properties return only default settings or those settings specified in the . + + Resetting the on a closed connection resets all connection string values (and related properties), including the password. + + The connection string is parsed immediately after being set. If parsing reveals errors in syntax, a run-time exception, such as , is generated. Other errors can be found only when an attempt is made to open the connection. + + The basic format of a connection string is a series of keyword/value pairs separated by semicolons. The equal sign (=) connects each keyword and its value. To include values that contain a semicolon, single-quote character, or double-quote character, the value must be enclosed in double quotes. If the value contains both a semicolon and a double-quote character, the value can be enclosed in single quotes. The single quote is also useful if the value begins with a double-quote character. Conversely, the double quote can be used if the value begins with a single quote. If the value contains both single-quote and double-quote characters, the quote character used to enclose the value must be doubled each time it occurs within the value. + + To include preceding or trailing spaces in the string value, the value must be enclosed in either single quotes or double quotes. Any leading or trailing spaces around integer, Boolean, or enumerated values are ignored, even if enclosed in quotes. However, spaces within a string literal keyword or value are preserved. Single or double quotes may be used within a connection string without using delimiters unless a quote character is the first or last character in the value, for example, `Data Source= my'Server` or `Data Source= my"Server`. + + To include an equal sign (=) in a keyword or value, it must be preceded by another equal sign. For example, in the hypothetical connection string + +``` +"key==word=value" +``` + + the keyword is "key=word" and the value is "value". + + If a specific keyword in a keyword/value pair occurs more than once in a connection string, the last occurrence is used in the value set. + + Keywords are case insensitive. + + The following table lists the valid names for values within the . + +|Name|Default|Description| +|----------|-------------|-----------------| +|Data Source

-or-

Server||The name or network address of the instance of Oracle to which to connect.| +|Integrated Security|'false'|Whether the connection is to be a secure connection or not.

Recognized values are `true` (strongly recommended), `false`, `yes`, and `no`.| +|Password||The password for the Oracle account logging on. To maintain a high level of security, we strongly recommend that you use the Integrated Security keyword instead.| +|Persist Security Info|'false'|When set to `false` or `no` (strongly recommended), security-sensitive information such as the password is not returned as part of the connection if the connection is open or has ever been in an open . Resetting the connection string resets all connection string values, including the password.

Recognized values are `true`, `false`, `yes`, and `no`.| +|Unicode|'false'|Specifies whether the .NET Framework Data Provider for Oracle uses UTF16 mode API calls. This keyword is ignored except when using Oracle9i client software.| +|User ID||The Oracle login account. To maintain a high level of security, we strongly recommend that you use the Integrated Security keyword instead.| + + The following table lists the valid names for connection pooling values within the . + +|Name|Default|Description| +|----------|-------------|-----------------| +|Connection Lifetime|0|When a connection is returned to the pool, its creation time is compared with the current time, and the connection is destroyed if that time span (in seconds) exceeds the value specified by `Connection Lifetime`. This is useful in clustered configurations to force load balancing between a running server and a server just brought online.

A value of zero causes pooled connections to have the maximum connection time-out.| +|Enlist|'true'|When `true` or `yes`, the pooler automatically enlists the connection in the creation thread's current transaction context.

Recognized values are `true`, `false`, `yes`, and `no`.| +|Max Pool Size|100|The maximum number of connections allowed in the pool. Setting the `Max Pool Size` value of the can affect performance. If you plan to create and actively use more than 100 connections, you should increase `Max Pool Size` to a value that approximates the steady-state connection usage for the application.| +|Min Pool Size|0|The minimum number of connections allowed in the pool.| +|Pooling|'true'|When `true` or `yes`, the object is drawn from the appropriate pool, or if necessary, is created and added to the appropriate pool.

Recognized values are `true`, `false`, `yes`, and `no`.| + + When setting keyword or connection pooling values that require a Boolean value, you can use 'yes' instead of 'true', and 'no' instead of 'false'. Integer values are represented as strings. + + + +## Examples + The following example creates an and sets some of its properties in the connection string. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.DataSource/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.DataSource/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.DataSource/VB/source.vb" id="Snippet1"::: + ]]>
@@ -577,14 +577,14 @@ Gets the time to wait to establish a connection before terminating the attempt and generating an error. The time (in seconds) to wait for a connection to open. The default value is 15 seconds. - because an attempt to connect waits indefinitely. - + because an attempt to connect waits indefinitely. + > [!NOTE] -> Unlike the `Connection` object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either with a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. - +> Unlike the `Connection` object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either with a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. + ]]> The value specified is less than 0. @@ -668,14 +668,14 @@ Gets the name of the current database or the database to be used after a connection is opened. The name of the current database or the name of the database to be used after a connection is opened. The default value is an empty string. - property updates dynamically. If you change the current database using a SQL statement or the method, an informational message is sent and the property is updated automatically. - + property updates dynamically. If you change the current database using a SQL statement or the method, an informational message is sent and the property is updated automatically. + > [!NOTE] -> Unlike the `Connection` object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either with a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. - +> Unlike the `Connection` object in the other .NET Framework data providers (SQL Server, OLE DB, and ODBC), does not support a property. Setting a connection time-out either with a property or in the connection string has no effect, and the value returned is always zero. also does not support a property or a method. + ]]> @@ -715,14 +715,14 @@ Gets the name of the Oracle server to which to connect. The name of the Oracle server to which to connect. The default value is an empty string (""). - and displays some of its read-only properties. - + and displays some of its read-only properties. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.DataSource/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.DataSource/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.DataSource/VB/source.vb" id="Snippet1"::: + ]]> @@ -778,17 +778,17 @@ A reference to an existing in which to enlist. Enlists in the specified transaction as a distributed transaction. - method to enlist in a distributed transaction. Because it enlists a connection in a instance, **EnlistTransaction** takes advantage of functionality available in the namespace for managing distributed transactions, making it preferable to **EnlistDistributedTransaction** for this purpose. For more information, see [Distributed Transactions](/dotnet/framework/data/adonet/distributed-transactions). - - You can continue to enlist in an existing distributed transaction using the - - method if auto-enlistment is disabled. Enlisting in an existing distributed transaction ensures that, if the transaction is committed or rolled back, modifications made by the code at the data source are also committed or rolled back. - - returns an exception if the has already started a transaction using . However, if the transaction is a local transaction started at the data source (for example, by explicitly executing the BEGIN TRANSACTION statement using an object), rolls back the local transaction and enlists in the existing distributed transaction as requested. You will not receive notice that the local transaction was rolled back, and are responsible for managing any local transactions not started using . - + method to enlist in a distributed transaction. Because it enlists a connection in a instance, **EnlistTransaction** takes advantage of functionality available in the namespace for managing distributed transactions, making it preferable to **EnlistDistributedTransaction** for this purpose. For more information, see [Distributed Transactions](/dotnet/framework/data/adonet/distributed-transactions). + + You can continue to enlist in an existing distributed transaction using the + + method if auto-enlistment is disabled. Enlisting in an existing distributed transaction ensures that, if the transaction is committed or rolled back, modifications made by the code at the data source are also committed or rolled back. + + returns an exception if the has already started a transaction using . However, if the transaction is a local transaction started at the data source (for example, by explicitly executing the BEGIN TRANSACTION statement using an object), rolls back the local transaction and enlists in the existing distributed transaction as requested. You will not receive notice that the local transaction was rolled back, and are responsible for managing any local transactions not started using . + ]]> @@ -816,13 +816,13 @@ A reference to an existing in which to enlist. Enlists in the specified transaction as a distributed transaction. - method to enlist in a distributed transaction. Because it enlists a connection in a instance, **EnlistTransaction** takes advantage of functionality available in the namespace for managing distributed transactions, making it preferable to **EnlistDistributedTransaction**, which uses a **System.EnterpriseServices.ITransaction** object. It also has slightly different semantics: once a connection is explicitly enlisted on a transaction, it cannot be unenlisted or enlisted in another transaction until the first transaction finishes. For more information about distributed transactions, see [Distributed Transactions](/dotnet/framework/data/adonet/distributed-transactions). - + method to enlist in a distributed transaction. Because it enlists a connection in a instance, **EnlistTransaction** takes advantage of functionality available in the namespace for managing distributed transactions, making it preferable to **EnlistDistributedTransaction**, which uses a **System.EnterpriseServices.ITransaction** object. It also has slightly different semantics: once a connection is explicitly enlisted on a transaction, it cannot be unenlisted or enlisted in another transaction until the first transaction finishes. For more information about distributed transactions, see [Distributed Transactions](/dotnet/framework/data/adonet/distributed-transactions). + ]]> @@ -885,21 +885,21 @@ Returns schema information for the data source of this using the specified string for the schema name. A that contains schema information. - are case sensitive. Because of Oracle's treatment of cases when a schema is first created, this can lead to unexpected results. - - If the schema was created without quotes`,` Oracle stores the object name in upper case. If the schema was created with quotes, Oracle stores the object name in the casing provided. - - For example, suppose that you create a table called MyTable, using one of the following two statements: - - `CREATE TABLE MyTable ...` - - `CREATE TABLE "MyTable" ...` - - To retrieve information about this table via the **GetSchema** method in the first case, you would have to pass "MYTABLE" in as an argument. In the second case, you would have to pass "MyTable" in as an argument. - + are case sensitive. Because of Oracle's treatment of cases when a schema is first created, this can lead to unexpected results. + + If the schema was created without quotes`,` Oracle stores the object name in upper case. If the schema was created with quotes, Oracle stores the object name in the casing provided. + + For example, suppose that you create a table called MyTable, using one of the following two statements: + + `CREATE TABLE MyTable ...` + + `CREATE TABLE "MyTable" ...` + + To retrieve information about this table via the **GetSchema** method in the first case, you would have to pass "MYTABLE" in as an argument. In the second case, you would have to pass "MyTable" in as an argument. + ]]> @@ -933,25 +933,25 @@ Returns schema information for the data source of this using the specified string for the schema name and the specified string array for the restriction values. A that contains schema information. - are case sensitive. Because of Oracle's treatment of cases when a schema is first created, this can lead to unexpected results. - - If the schema was created without quotes`,` Oracle stores the object name in upper case. If the schema was created with quotes, Oracle stores the object name in the casing provided. - - For example, suppose that you create a table called MyTable, using one of the following two statements: - - `CREATE TABLE MyTable ...` - - `CREATE TABLE "MyTable" ...` - - To retrieve information about this table via the **GetSchema** method in the first case, you would have to pass "MYTABLE" in as an argument. In the second case, you would have to pass "MyTable" in as an argument. - + are case sensitive. Because of Oracle's treatment of cases when a schema is first created, this can lead to unexpected results. + + If the schema was created without quotes`,` Oracle stores the object name in upper case. If the schema was created with quotes, Oracle stores the object name in the casing provided. + + For example, suppose that you create a table called MyTable, using one of the following two statements: + + `CREATE TABLE MyTable ...` + + `CREATE TABLE "MyTable" ...` + + To retrieve information about this table via the **GetSchema** method in the first case, you would have to pass "MYTABLE" in as an argument. In the second case, you would have to pass "MyTable" in as an argument. + ]]> @@ -979,13 +979,13 @@ Occurs when Oracle sends a warning or an informational message. - event is generated. An example would be creating a stored procedure that contains a syntax error. The call to the method would succeed. However an event would be generated informing you of the syntax error. - - Clients who want to process warnings or informational messages sent by the server should create an delegate to listen to this event. - + event is generated. An example would be creating a stored procedure that contains a syntax error. The call to the method would succeed. However an event would be generated informing you of the syntax error. + + Clients who want to process warnings or informational messages sent by the server should create an delegate to listen to this event. + ]]> @@ -1019,14 +1019,14 @@ Opens a connection to a database with the property settings specified by the . - draws an open connection from the connection pool if one is available. Otherwise, it establishes a new connection to the database. - + draws an open connection from the connection pool if one is available. Otherwise, it establishes a new connection to the database. + > [!NOTE] -> If the goes out of scope, the connection it represents does not close automatically. Therefore, you must explicitly close the connection by calling . - +> If the goes out of scope, the connection it represents does not close automatically. Therefore, you must explicitly close the connection by calling . + ]]> The connection is not open. @@ -1067,19 +1067,19 @@ Gets a string containing the version of the server to which the client is connected. The version of the connected server. - property is in Oracle version format. For example, the format for an Oracle8 release is a string in the form "8.1.7.0.0 Oracle8 Release 8.1.7.0.0 - Production." - - - -## Examples - The following example creates an and displays some of its read-only properties. - + property is in Oracle version format. For example, the format for an Oracle8 release is a string in the form "8.1.7.0.0 Oracle8 Release 8.1.7.0.0 - Production." + + + +## Examples + The following example creates an and displays some of its read-only properties. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.ServerVersion/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.ServerVersion/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.ServerVersion/VB/source.vb" id="Snippet1"::: + ]]> The connection is closed. @@ -1122,23 +1122,23 @@ Gets the current state of the connection. A bitwise combination of the values. The default is . - object. - -- From `Open` to `Closed`, using the method of the object. - - - -## Examples - The following example creates an instance of a derived class, , sets its , and displays its . - + object. + +- From `Open` to `Closed`, using the method of the object. + + + +## Examples + The following example creates an instance of a derived class, , sets its , and displays its . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData OracleConnection.State/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.State/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData OracleConnection.State/VB/source.vb" id="Snippet1"::: + ]]> @@ -1188,7 +1188,7 @@ or methods. ]]> @@ -1223,7 +1223,7 @@ Once the transaction has completed, you must explicitly commit or roll back the or methods. ]]> @@ -1307,11 +1307,11 @@ Once the transaction has completed, you must explicitly commit or roll back the Creates a new object that is a copy of the current instance. A new object that is a copy of this instance. - instance is cast to an interface. - + instance is cast to an interface. + ]]> diff --git a/xml/System.Data.OracleClient/OracleLob.xml b/xml/System.Data.OracleClient/OracleLob.xml index 06081771468..43ecc7d556c 100644 --- a/xml/System.Data.OracleClient/OracleLob.xml +++ b/xml/System.Data.OracleClient/OracleLob.xml @@ -45,9 +45,9 @@ The following are the main characteristics of an data type that distinguish it from basic .NET data types: -- After you retrieve the Oracle `LOB` value from the Oracle database into the class, you can change the `LOB` data in an open transaction and your changes are directly reflected to the database. If you retrieve the Oracle `LOB` value into an of type or and update these arrays, your changes are not reflected to the database. +- After you retrieve the Oracle `LOB` value from the Oracle database into the class, you can change the `LOB` data in an open transaction and your changes are directly reflected to the database. If you retrieve the Oracle `LOB` value into an of type or and update these arrays, your changes are not reflected to the database. -- When you use the class to access a chunk of a `LOB` value, only that chunk is passed from the Oracle database to the client. When you use the method to access a chunk of a `LOB` value, the entire contents of the value are passed from the Oracle database to the client. +- When you use the class to access a chunk of a `LOB` value, only that chunk is passed from the Oracle database to the client. When you use the method to access a chunk of a `LOB` value, the entire contents of the value are passed from the Oracle database to the client. To obtain an object, call the method. diff --git a/xml/System.Data.Services.Client/DataServiceContext.xml b/xml/System.Data.Services.Client/DataServiceContext.xml index 9168c92fa62..338d7ad5bd8 100644 --- a/xml/System.Data.Services.Client/DataServiceContext.xml +++ b/xml/System.Data.Services.Client/DataServiceContext.xml @@ -863,21 +863,21 @@ If is not set: -- Changes are sent to the data service such as in the method: one operation to one HTTP request. +- Changes are sent to the data service such as in the method: one operation to one HTTP request. -- The is always 200. +- The is always 200. -- The property returns an empty collection. +- The property returns an empty collection. If is set: -- If an error occurs processing an operation in a change set, the subsequent operations in the change set will not be tried; however, the data service will continue to process the next change set in the batch. +- If an error occurs processing an operation in a change set, the subsequent operations in the change set will not be tried; however, the data service will continue to process the next change set in the batch. -- This option cannot be set when is set because when batching is enabled, all operations are positioned in a single change set. +- This option cannot be set when is set because when batching is enabled, all operations are positioned in a single change set. If is not set: -- If an error occurs while processing an operation, no additional operations are processed by the data service. +- If an error occurs while processing an operation, no additional operations are processed by the data service. A response is generated telling the client which operations were executed, their results, and what operations were not tried because of the error. diff --git a/xml/System.Data.Services.Providers/IDataServiceStreamProvider.xml b/xml/System.Data.Services.Providers/IDataServiceStreamProvider.xml index 4ef456e6862..605ec7f97b7 100644 --- a/xml/System.Data.Services.Providers/IDataServiceStreamProvider.xml +++ b/xml/System.Data.Services.Providers/IDataServiceStreamProvider.xml @@ -19,9 +19,9 @@ ## Remarks The Open Data Protocol (OData) enables a binary data property of an entity exposed by a data service to be defined independently of an entry in a data feed by using a mechanism based on the following constructs: -- Media resource - the binary large object data that is binary data, such as a video, audio, image or other media resources. +- Media resource - the binary large object data that is binary data, such as a video, audio, image or other media resources. -- Media link entry - an AtomPub entry in a data feed that represents an entity and that has a reference to a related media resource. +- Media link entry - an AtomPub entry in a data feed that represents an entity and that has a reference to a related media resource. For more information, see [Streaming Provider](/dotnet/framework/data/wcf/streaming-provider-wcf-data-services). diff --git a/xml/System.Data.SqlClient/SqlBulkCopy.xml b/xml/System.Data.SqlClient/SqlBulkCopy.xml index b09ff6a1c7d..c35afa0a794 100644 --- a/xml/System.Data.SqlClient/SqlBulkCopy.xml +++ b/xml/System.Data.SqlClient/SqlBulkCopy.xml @@ -43,26 +43,26 @@ Lets you efficiently bulk load a SQL Server table with data from another source. - class lets you write managed code solutions that provide similar functionality. There are other ways to load data into a SQL Server table (INSERT statements, for example), but offers a significant performance advantage over them. - - The class can be used to write data only to SQL Server tables. However, the data source is not limited to SQL Server; any data source can be used, as long as the data can be loaded to a instance or read with a instance. - - will fail when bulk loading a column of type into a SQL Server column whose type is one of the date/time types added in SQL Server 2008. - - - -## Examples - The following console application demonstrates how to load data using the class. In this example, a is used to copy data from the **Production.Product** table in the SQL Server **AdventureWorks** database to a similar table in the same database. - + class lets you write managed code solutions that provide similar functionality. There are other ways to load data into a SQL Server table (INSERT statements, for example), but offers a significant performance advantage over them. + + The class can be used to write data only to SQL Server tables. However, the data source is not limited to SQL Server; any data source can be used, as long as the data can be loaded to a instance or read with a instance. + + will fail when bulk loading a column of type into a SQL Server column whose type is one of the date/time types added in SQL Server 2008. + + + +## Examples + The following console application demonstrates how to load data using the class. In this example, a is used to copy data from the **Production.Product** table in the SQL Server **AdventureWorks** database to a similar table in the same database. + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks BulkCopy.Single/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks BulkCopy.Single/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks BulkCopy.Single/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -109,24 +109,24 @@ The already open instance that will be used to perform the bulk copy operation. If your connection string does not use , you can use to pass the user ID and password more securely than by specifying the user ID and password as text in the connection string. Initializes a new instance of the class using the specified open instance of . - instance is initialized, the connection remains open after the instance is closed. - - If the `connection` argument is null, an is thrown. - - - -## Examples - The following console application demonstrates how to bulk load data using a connection that is already open. In this example, a is used to copy data from the **Production.Product** table in the SQL Server **AdventureWorks** database to a similar table in the same database. This example is for demonstration purposes only. You would not use `SqlBulkCopy` to move data from one table to another in the same database in a production application. Note that the source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . - + instance is initialized, the connection remains open after the instance is closed. + + If the `connection` argument is null, an is thrown. + + + +## Examples + The following console application demonstrates how to bulk load data using a connection that is already open. In this example, a is used to copy data from the **Production.Product** table in the SQL Server **AdventureWorks** database to a similar table in the same database. This example is for demonstration purposes only. You would not use `SqlBulkCopy` to move data from one table to another in the same database in a production application. Note that the source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks BulkCopy.Single/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks BulkCopy.Single/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks BulkCopy.Single/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -163,26 +163,26 @@ The string defining the connection that will be opened for use by the instance. If your connection string does not use , you can use or and to pass the user ID and password more securely than by specifying the user ID and password as text in the connection string. Initializes and opens a new instance of based on the supplied . The constructor uses the to initialize a new instance of the class. - is thrown. If `connectionString` is an empty string, an is thrown. - - - -## Examples - The following console application demonstrates how to bulk load data by using a connection specified as a string. The connection is automatically closed when the instance is closed. - - In this example, the source data is first read from a SQL Server table to a instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . - + is thrown. If `connectionString` is an empty string, an is thrown. + + + +## Examples + The following console application demonstrates how to bulk load data by using a connection specified as a string. The connection is automatically closed when the instance is closed. + + In this example, the source data is first read from a SQL Server table to a instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.ConnectionString/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.ConnectionString/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.ConnectionString/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -221,22 +221,22 @@ A combination of values from the enumeration that determines which data source rows are copied to the destination table. Initializes and opens a new instance of based on the supplied . The constructor uses that to initialize a new instance of the class. The instance behaves according to options supplied in the parameter. - topic. - - - -## Examples - The following console application demonstrates how to perform a bulk load by using a connection specified as a string. An option is set to use the value in the identity column of the source table when you load the destination table. In this example, the source data is first read from a SQL Server table to a instance. The source table and destination table each include an Identity column. By default, a new value for the **Identity** column is generated in the destination table for each row added. In this example, an option is set when the connection is opened that forces the bulk load process to use the **Identity** values from the source table instead. To see how the option changes the way the bulk load works, run the sample with the **dbo.BulkCopyDemoMatchingColumns** table empty. All rows load from the source. Then run the sample again without emptying the table. An exception is thrown and the code writes a message to the console notifying you that rows weren't added because of primary key constraint violations. - + topic. + + + +## Examples + The following console application demonstrates how to perform a bulk load by using a connection specified as a string. An option is set to use the value in the identity column of the source table when you load the destination table. In this example, the source data is first read from a SQL Server table to a instance. The source table and destination table each include an Identity column. By default, a new value for the **Identity** column is generated in the destination table for each row added. In this example, an option is set when the connection is opened that forces the bulk load process to use the **Identity** values from the source table instead. To see how the option changes the way the bulk load works, run the sample with the **dbo.BulkCopyDemoMatchingColumns** table empty. All rows load from the source. Then run the sample again without emptying the table. An exception is thrown and the code writes a message to the console notifying you that rows weren't added because of primary key constraint violations. + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.KeepIdentity/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.KeepIdentity/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.KeepIdentity/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -277,13 +277,13 @@ An existing instance under which the bulk copy will occur. Initializes a new instance of the class using the supplied existing open instance of . The instance behaves according to options supplied in the parameter. If a non-null is supplied, the copy operations will be performed within that transaction. - Bulk Copy Operations in SQL Server @@ -320,30 +320,30 @@ Number of rows in each batch. At the end of each batch, the rows in the batch are sent to the server. The integer value of the property, or zero if no value has been set. - rows have been processed or there are no more rows to send to the destination data source. - - Zero (the default) indicates that each operation is a single batch. - - If the instance has been declared without the option in effect, rows are sent to the server rows at a time, but no transaction-related action is taken. If is in effect, each batch of rows is inserted as a separate transaction. - - The property can be set at any time. If a bulk copy is already in progress, the current batch is sized according to the previous batch size. Subsequent batches use the new size. If the is initially zero and changed while a operation is already in progress, that operation loads the data as a single batch. Any subsequent operations on the same instance use the new . - - - -## Examples - The following console application demonstrates how to bulk load data in batches of 50 rows. For an example illustrating how works with a transaction, see [Transaction and Bulk Copy Operations](/dotnet/framework/data/adonet/sql/transaction-and-bulk-copy-operations). - - In this example, the source data is first read from a SQL Server table to a instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . - + rows have been processed or there are no more rows to send to the destination data source. + + Zero (the default) indicates that each operation is a single batch. + + If the instance has been declared without the option in effect, rows are sent to the server rows at a time, but no transaction-related action is taken. If is in effect, each batch of rows is inserted as a separate transaction. + + The property can be set at any time. If a bulk copy is already in progress, the current batch is sized according to the previous batch size. Subsequent batches use the new size. If the is initially zero and changed while a operation is already in progress, that operation loads the data as a single batch. Any subsequent operations on the same instance use the new . + + + +## Examples + The following console application demonstrates how to bulk load data in batches of 50 rows. For an example illustrating how works with a transaction, see [Transaction and Bulk Copy Operations](/dotnet/framework/data/adonet/sql/transaction-and-bulk-copy-operations). + + In this example, the source data is first read from a SQL Server table to a instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.BatchSize/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.BatchSize/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.BatchSize/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -380,24 +380,24 @@ Number of seconds for the operation to complete before it times out. The integer value of the property. The default is 30 seconds. A value of 0 indicates no limit; the bulk copy will wait indefinitely. - instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . - + instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL`INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL`INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.Timeout/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.Timeout/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.Timeout/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -434,26 +434,26 @@ Closes the instance. - on the object, no other operation will succeed. Calls to the method will throw an . - - Calling the method from the event causes an to be thrown. - - Note that open instances are closed implicitly at the end of a `using` block. - - - -## Examples - The following example uses the same instance to add sales orders and their associated details to two destination tables. Because the **AdventureWorks** sales order tables are large, the sample reads only orders placed by a certain account number and bulk copies those orders and details to the destination tables. The method is used only after both bulk copy operations are complete. - + on the object, no other operation will succeed. Calls to the method will throw an . + + Calling the method from the event causes an to be thrown. + + Note that open instances are closed implicitly at the end of a `using` block. + + + +## Examples + The following example uses the same instance to add sales orders and their associated details to two destination tables. Because the **AdventureWorks** sales order tables are large, the sample reads only orders placed by a certain account number and bulk copies those orders and details to the destination tables. The method is used only after both bulk copy operations are complete. + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.OrdersDetails/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.OrdersDetails/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.OrdersDetails/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -490,13 +490,13 @@ Returns a collection of items. Column mappings define the relationships between columns in the data source and columns in the destination. A collection of column mappings. By default, it is an empty collection. - collection is unnecessary. However, if the column counts differ, or the ordinal positions are not consistent, you must use to make sure that data is copied into the correct columns. - - During the execution of a bulk copy operation, this collection can be accessed, but it cannot be changed. Any attempt to change it will throw an . - + collection is unnecessary. However, if the column counts differ, or the ordinal positions are not consistent, you must use to make sure that data is copied into the correct columns. + + During the execution of a bulk copy operation, this collection can be accessed, but it cannot be changed. Any attempt to change it will throw an . + ]]> @@ -534,30 +534,30 @@ Name of the destination table on the server. The string value of the property, or null if none as been supplied. - has not been set when is called, an is thrown. - - If is modified while a operation is running, the change does not affect the current operation. The new value is used the next time a method is called. - - is a three-part name (`..`). You can qualify the table name with its database and owning schema if you choose. However, if the table name uses an underscore ("_") or any other special characters, you must escape the name using surrounding brackets as in (`[..]`). For more information, see [Database Identifiers](/sql/relational-databases/databases/database-identifiers). - - You can bulk-copy data to a temporary table by using a value such as `tempdb..#table` or `tempdb..#table` for the property. - - - -## Examples - The following console application demonstrates how to bulk load data using a connection that is already open. The destination table is a table in the **AdventureWorks** database. - - In this example, the connection is first used to read data from a SQL Server table to a instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . - + has not been set when is called, an is thrown. + + If is modified while a operation is running, the change does not affect the current operation. The new value is used the next time a method is called. + + is a three-part name (`..`). You can qualify the table name with its database and owning schema if you choose. However, if the table name uses an underscore ("_") or any other special characters, you must escape the name using surrounding brackets as in (`[..]`). For more information, see [Database Identifiers](/sql/relational-databases/databases/database-identifiers). + + You can bulk-copy data to a temporary table by using a value such as `tempdb..#table` or `tempdb..#table` for the property. + + + +## Examples + The following console application demonstrates how to bulk load data using a connection that is already open. The destination table is a table in the **AdventureWorks** database. + + In this example, the connection is first used to read data from a SQL Server table to a instance. The source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.Single/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.Single/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.Single/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -594,11 +594,11 @@ if a object can stream data from an object; otherwise, false. The default is . - is `true`, reads from an object using , optimizing memory usage by using the streaming capabilities. When it's set to false, the class loads all the data returned by the object into memory before sending it to SQL Server or SQL Azure. - + is `true`, reads from an object using , optimizing memory usage by using the streaming capabilities. When it's set to false, the class loads all the data returned by the object into memory before sending it to SQL Server or SQL Azure. + ]]> @@ -633,26 +633,26 @@ Defines the number of rows to be processed before generating a notification event. The integer value of the property, or zero if the property has not been set. - property can be set at any time, even while a bulk copy operation is underway. Changes made during a bulk copy operation take effect after the next notification. The new setting applies to all subsequent operations on the same instance. - - If is set to a number less than zero, an is thrown. - - - -## Examples - The following console application demonstrates how to bulk load data using a connection that is already open. The property is set so that the event handler is called after every 50 rows copied to the table. - - In this example, the connection is first used to read data from a SQL Server table to a instance. Then a second connection is opened to bulk copy the data. Note that the source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . - + property can be set at any time, even while a bulk copy operation is underway. Changes made during a bulk copy operation take effect after the next notification. The new setting applies to all subsequent operations on the same instance. + + If is set to a number less than zero, an is thrown. + + + +## Examples + The following console application demonstrates how to bulk load data using a connection that is already open. The property is set so that the event handler is called after every 50 rows copied to the table. + + In this example, the connection is first used to read data from a SQL Server table to a instance. Then a second connection is opened to bulk copy the data. Note that the source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.NotifyAfter/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.NotifyAfter/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.NotifyAfter/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -688,28 +688,28 @@ Occurs every time that the number of rows specified by the property have been processed. - and are independent. Receipt of a event does not imply that any rows have been sent to the server or committed. - - You cannot call SqlBulkCopy.Close () or SqlConnection.Close () from this event. Doing this will cause an being thrown, and the object state will not change. If the user wants to cancel the operation from the event, the property of the can be used. (See [Transaction and Bulk Copy Operations](/dotnet/framework/data/adonet/sql/transaction-and-bulk-copy-operations) for examples that use the property.) - - No action, such as transaction activity, is supported in the connection during the execution of the bulk copy operation, and it is recommended that you not use the same connection used during the event. However, you can open a different connection. - - - -## Examples - The following console application demonstrates how to bulk load data using a connection that is already open. The property is set so that the event handler is called after every 50 rows copied to the table. - - In this example, the connection is first used to read data from a SQL Server table to a instance. Note that the source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . - + and are independent. Receipt of a event does not imply that any rows have been sent to the server or committed. + + You cannot call SqlBulkCopy.Close () or SqlConnection.Close () from this event. Doing this will cause an being thrown, and the object state will not change. If the user wants to cancel the operation from the event, the property of the can be used. (See [Transaction and Bulk Copy Operations](/dotnet/framework/data/adonet/sql/transaction-and-bulk-copy-operations) for examples that use the property.) + + No action, such as transaction activity, is supported in the connection during the execution of the bulk copy operation, and it is recommended that you not use the same connection used during the event. However, you can open a different connection. + + + +## Examples + The following console application demonstrates how to bulk load data using a connection that is already open. The property is set so that the event handler is called after every 50 rows copied to the table. + + In this example, the connection is first used to read data from a SQL Server table to a instance. Note that the source data does not have to be located on SQL Server; you can use any data source that can be read to an or loaded to a . + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.NotifyAfter/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.NotifyAfter/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.NotifyAfter/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -749,16 +749,16 @@ Releases all resources used by the current instance of the class. - . The `Dispose` method leaves the in an unusable state. After calling `Dispose`, you must release all references to the so the garbage collector can reclaim the memory that the was occupying. - - For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). - + . The `Dispose` method leaves the in an unusable state. After calling `Dispose`, you must release all references to the so the garbage collector can reclaim the memory that the was occupying. + + For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). + > [!NOTE] -> Always call `Dispose` before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. - +> Always call `Dispose` before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. + ]]> ADO.NET Overview @@ -772,11 +772,11 @@ Copies all rows from a data source to a destination table specified by the property of the object. - makes the connection busy. If MARS is enabled, you can interleave calls to with other commands in the same connection. - + makes the connection busy. If MARS is enabled, you can interleave calls to with other commands in the same connection. + ]]> Bulk Copy Operations in SQL Server @@ -844,26 +844,26 @@ An array of objects that will be copied to the destination table. Copies all rows from the supplied array to a destination table specified by the property of the object. - is busy serving it, and no other operations can be performed on the connection. - - The collection maps from the columns to the destination database table. - - - -## Examples - The following console application demonstrates how to bulk load data from a array. The destination table is a table in the **AdventureWorks** database. - - In this example, a is created at run time. A single row is selected from the to copy to the destination table. - + is busy serving it, and no other operations can be performed on the connection. + + The collection maps from the columns to the destination database table. + + + +## Examples + The following console application demonstrates how to bulk load data from a array. The destination table is a table in the **AdventureWorks** database. + + In this example, a is created at run time. A single row is selected from the to copy to the destination table. + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.RowArray/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.RowArray/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.RowArray/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -897,28 +897,28 @@ A whose rows will be copied to the destination table. Copies all rows in the supplied to a destination table specified by the property of the object. - are copied to the destination table except those that have been deleted. - - While the bulk copy operation is in progress, the associated destination is busy serving it, and no other operations can be performed on the connection. - - The collection maps from the columns to the destination database table. - - - -## Examples - The following Console application demonstrates how to bulk load data from a . The destination table is a table in the **AdventureWorks** database. - - In this example, a is created at run time and is the source of the `SqlBulkCopy` operation. - + are copied to the destination table except those that have been deleted. + + While the bulk copy operation is in progress, the associated destination is busy serving it, and no other operations can be performed on the connection. + + The collection maps from the columns to the destination database table. + + + +## Examples + The following Console application demonstrates how to bulk load data from a . The destination table is a table in the **AdventureWorks** database. + + In this example, a is created at run time and is the source of the `SqlBulkCopy` operation. + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.DataTable/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.DataTable/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.DataTable/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -952,28 +952,28 @@ A whose rows will be copied to the destination table. Copies all rows in the supplied to a destination table specified by the property of the object. - or a similar call, so the next available row is the first row. To process multiple results, call on the data reader and call again. - - Note that using modifies the state of the reader. The method will call until it returns false, the operation is aborted, or an error occurs. This means that the data reader will be in a different state, probably at the end of the result set, when the operation is complete. - - While the bulk copy operation is in progress, the associated destination is busy serving it, and no other operations can be performed on the connection. - - The collection maps from the data reader columns to the destination database table. - - - -## Examples - The following console application demonstrates how to bulk load data from a . The destination table is a table in the **AdventureWorks** database. - + or a similar call, so the next available row is the first row. To process multiple results, call on the data reader and call again. + + Note that using modifies the state of the reader. The method will call until it returns false, the operation is aborted, or an error occurs. This means that the data reader will be in a different state, probably at the end of the result set, when the operation is complete. + + While the bulk copy operation is in progress, the associated destination is busy serving it, and no other operations can be performed on the connection. + + The collection maps from the data reader columns to the destination database table. + + + +## Examples + The following console application demonstrates how to bulk load data from a . The destination table is a table in the **AdventureWorks** database. + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.ConnectionString/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.ConnectionString/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.ConnectionString/VB/source.vb" id="Snippet1"::: + ]]> Bulk Copy Operations in SQL Server @@ -1009,31 +1009,31 @@ A value from the enumeration. Only rows matching the row state are copied to the destination. Copies only rows that match the supplied row state in the supplied to a destination table specified by the property of the object. - that are in the states indicated in the `rowState` argument and have not been deleted are copied to the destination table. - + that are in the states indicated in the `rowState` argument and have not been deleted are copied to the destination table. + > [!NOTE] -> If is specified, any , , and rows will also be copied to the server. No exception will be raised. - - While the bulk copy operation is in progress, the associated destination is busy serving it, and no other operations can be performed on the connection. - - The collection maps from the columns to the destination database table. - - - -## Examples - The following Console application demonstrates how to bulk load only the rows in a that match a specified state. In this case, only unchanged rows are added. The destination table is a table in the **AdventureWorks** database. - - In this example, a is created at run time and three rows are added to it. Before the method is executed, one of the rows is edited. The method is called with a `DataRowState.Unchanged` `rowState` argument, so only the two unchanged rows are bulk copied to the destination. - +> If is specified, any , , and rows will also be copied to the server. No exception will be raised. + + While the bulk copy operation is in progress, the associated destination is busy serving it, and no other operations can be performed on the connection. + + The collection maps from the columns to the destination database table. + + + +## Examples + The following Console application demonstrates how to bulk load only the rows in a that match a specified state. In this case, only unchanged rows are added. The destination table is a table in the **AdventureWorks** database. + + In this example, a is created at run time and three rows are added to it. Before the method is executed, one of the rows is edited. The method is called with a `DataRowState.Unchanged` `rowState` argument, so only the two unchanged rows are bulk copied to the destination. + > [!IMPORTANT] -> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. - +> This sample will not run unless you have created the work tables as described in [Bulk Copy Example Setup](/dotnet/framework/data/adonet/sql/bulk-copy-example-setup). This code is provided to demonstrate the syntax for using **SqlBulkCopy** only. If the source and destination tables are in the same SQL Server instance, it is easier and faster to use a Transact-SQL `INSERT ... SELECT` statement to copy the data. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.DataRowState/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.DataRowState/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DataWorks SqlBulkCopy.DataRowState/VB/source.vb" id="Snippet1"::: + ]]> @@ -1049,23 +1049,23 @@ An asynchronous version of , which copies all rows from a data source to a destination table specified by the property of the object. - makes the connection busy. If MARS is enabled, you can interleave calls to with other commands in the same connection. - - The number of rows that are rolled back when one fails depends on several things: - -- If is specified. - -- If you have your own transaction. - -- The value of . - - When there is an error while sending data to the server, the current batch (as specified by ) will be rolled back. If is not specified and you have your own transaction, the entire transaction will be rolled back (which includes all previous batches as well). - - Use to know how many rows were copied to the server. - + makes the connection busy. If MARS is enabled, you can interleave calls to with other commands in the same connection. + + The number of rows that are rolled back when one fails depends on several things: + +- If is specified. + +- If you have your own transaction. + +- The value of . + + When there is an error while sending data to the server, the current batch (as specified by ) will be rolled back. If is not specified and you have your own transaction, the entire transaction will be rolled back (which includes all previous batches as well). + + Use to know how many rows were copied to the server. + ]]> @@ -1142,27 +1142,27 @@ This method stores in the task it returns all non-usage exceptions that the meth The asynchronous version of , which copies all rows from the supplied array to a destination table specified by the property of the object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. @@ -1194,27 +1194,27 @@ This method stores in the task it returns all non-usage exceptions that the meth The asynchronous version of , which copies all rows in the supplied to a destination table specified by the property of the object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. @@ -1246,31 +1246,31 @@ This method stores in the task it returns all non-usage exceptions that the meth The asynchronous version of , which copies all rows in the supplied to a destination table specified by the property of the object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - - The was closed before the completed returned. - - The 's associated connection was closed before the completed returned. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + + The was closed before the completed returned. + + The 's associated connection was closed before the completed returned. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. @@ -1339,32 +1339,32 @@ This method stores in the task it returns all non-usage exceptions that the meth An array of objects that will be copied to the destination table. The cancellation instruction. A value in this parameter makes this method equivalent to . - The asynchronous version of , which copies all rows from the supplied array to a destination table specified by the property of the object. - + The asynchronous version of , which copies all rows from the supplied array to a destination table specified by the property of the object. + The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Exceptions will be reported via the returned Task object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. The cancellation token was canceled. This exception is stored into the returned task. @@ -1399,27 +1399,27 @@ This method stores in the task it returns all non-usage exceptions that the meth The asynchronous version of , which copies only rows that match the supplied row state in the supplied to a destination table specified by the property of the object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. @@ -1450,32 +1450,32 @@ This method stores in the task it returns all non-usage exceptions that the meth A whose rows will be copied to the destination table. The cancellation instruction. A value in this parameter makes this method equivalent to . - The asynchronous version of , which copies all rows in the supplied to a destination table specified by the property of the object. - + The asynchronous version of , which copies all rows in the supplied to a destination table specified by the property of the object. + The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Exceptions will be reported via the returned Task object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. The cancellation token was canceled. This exception is stored into the returned task. @@ -1507,36 +1507,36 @@ This method stores in the task it returns all non-usage exceptions that the meth A whose rows will be copied to the destination table. The cancellation instruction. A value in this parameter makes this method equivalent to . - The asynchronous version of , which copies all rows in the supplied to a destination table specified by the property of the object. - + The asynchronous version of , which copies all rows in the supplied to a destination table specified by the property of the object. + The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Exceptions will be reported via the returned Task object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - - The was closed before the completed returned. - - The 's associated connection was closed before the completed returned. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + + The was closed before the completed returned. + + The 's associated connection was closed before the completed returned. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. The cancellation token was canceled. This exception is stored into the returned task. @@ -1570,32 +1570,32 @@ This method stores in the task it returns all non-usage exceptions that the meth A whose rows will be copied to the destination table. A value from the enumeration. Only rows matching the row state are copied to the destination. The cancellation instruction. A value in this parameter makes this method equivalent to . - The asynchronous version of , which copies only rows that match the supplied row state in the supplied to a destination table specified by the property of the object. - + The asynchronous version of , which copies only rows that match the supplied row state in the supplied to a destination table specified by the property of the object. + The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Exceptions will be reported via the returned Task object. A task representing the asynchronous operation. - , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> - Calling multiple times for the same instance before task completion. - - Calling and for the same instance before task completion. - - The connection drops or is closed during execution. - - Returned in the task object, the object was closed during the method execution. - - Returned in the task object, there was a connection pool timeout. - - Returned in the task object, the object is closed before method execution. - + Calling multiple times for the same instance before task completion. + + Calling and for the same instance before task completion. + + The connection drops or is closed during execution. + + Returned in the task object, the object was closed during the method execution. + + Returned in the task object, there was a connection pool timeout. + + Returned in the task object, the object is closed before method execution. + is specified in the connection string. Returned in the task object, any error returned by SQL Server that occurred while opening the connection. The cancellation token was canceled. This exception is stored into the returned task. diff --git a/xml/System.Data.SqlClient/SqlCommandBuilder.xml b/xml/System.Data.SqlClient/SqlCommandBuilder.xml index 4a80e5fa095..a3ebfb86b7e 100644 --- a/xml/System.Data.SqlClient/SqlCommandBuilder.xml +++ b/xml/System.Data.SqlClient/SqlCommandBuilder.xml @@ -41,29 +41,29 @@ Automatically generates single-table commands that are used to reconcile changes made to a with the associated SQL Server database. This class cannot be inherited. - does not automatically generate the Transact-SQL statements required to reconcile changes made to a with the associated instance of SQL Server. However, you can create a object to automatically generate Transact-SQL statements for single-table updates if you set the property of the . Then, any additional Transact-SQL statements that you do not set are generated by the . - - The registers itself as a listener for events whenever you set the property. You can only associate one or object with each other at one time. - - To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata automatically. If you change the after the metadata has been retrieved, such as after the first update, you should call the method to update the metadata. - - The `SelectCommand` must also return at least one primary key or unique column. If none are present, an **InvalidOperation** exception is generated, and the commands are not generated. - - The also uses the , , and properties referenced by the . The user should call if one or more of these properties are modified, or if the itself is replaced. Otherwise the , , and properties retain their previous values. - - If you call , the is disassociated from the , and the generated commands are no longer used. - - - -## Examples - The following example uses the , along and , to select rows from a data source. The example is passed a connection string, a query string that is a Transact-SQL SELECT statement, and a string that is the name of the database table. The example then creates a . - + does not automatically generate the Transact-SQL statements required to reconcile changes made to a with the associated instance of SQL Server. However, you can create a object to automatically generate Transact-SQL statements for single-table updates if you set the property of the . Then, any additional Transact-SQL statements that you do not set are generated by the . + + The registers itself as a listener for events whenever you set the property. You can only associate one or object with each other at one time. + + To generate INSERT, UPDATE, or DELETE statements, the uses the property to retrieve a required set of metadata automatically. If you change the after the metadata has been retrieved, such as after the first update, you should call the method to update the metadata. + + The `SelectCommand` must also return at least one primary key or unique column. If none are present, an **InvalidOperation** exception is generated, and the commands are not generated. + + The also uses the , , and properties referenced by the . The user should call if one or more of these properties are modified, or if the itself is replaced. Otherwise the , , and properties retain their previous values. + + If you call , the is disassociated from the , and the generated commands are no longer used. + + + +## Examples + The following example uses the , along and , to select rows from a data source. The example is passed a connection string, a query string that is a Transact-SQL SELECT statement, and a string that is the name of the database table. The example then creates a . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData SqlCommandBuilder/CS/Source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData SqlCommandBuilder/VB/Source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData SqlCommandBuilder/VB/Source.vb" id="Snippet1"::: + ]]> Retrieving and Modifying Data in ADO.NET @@ -131,13 +131,13 @@ The name of the . Initializes a new instance of the class with the associated object. - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance of , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance of , any existing associated with this is released. + ]]> Connecting and Retrieving Data in ADO.NET @@ -301,13 +301,13 @@ Gets or sets a object for which Transact-SQL statements are automatically generated. A object. - registers itself as a listener for events that are generated by the specified in this property. - - When you create a new instance of , any existing associated with this is released. - + registers itself as a listener for events that are generated by the specified in this property. + + When you create a new instance of , any existing associated with this is released. + ]]> Connecting and Retrieving Data in ADO.NET @@ -343,17 +343,17 @@ The referencing the stored procedure from which the parameter information is to be derived. The derived parameters are added to the collection of the . Retrieves parameter information from the stored procedure specified in the and populates the collection of the specified object. - with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. - - For more information, see [Configuring Parameters and Parameter Data Types](/dotnet/framework/data/adonet/configuring-parameters-and-parameter-data-types). - + with arbitrary Transact-SQL statements, such as a parameterized SELECT statement. + + For more information, see [Configuring Parameters and Parameter Data Types](/dotnet/framework/data/adonet/configuring-parameters-and-parameter-data-types). + ]]> The command text is not a valid stored procedure name. @@ -395,17 +395,17 @@ Gets the automatically generated object required to perform deletions on the database. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -440,17 +440,17 @@ Gets the automatically generated object required to perform deletions on the database. The automatically generated object required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -486,25 +486,25 @@ Gets the automatically generated object that is required to perform deletions on the database. The automatically generated object that is required to perform deletions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The returned from the **GetSchema** method call and found in the collection has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the returned from the **GetSchema** method call and found in the collection regular expression. - -- A returned from the **GetSchema** method call and found in the collection is specified. - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The returned from the **GetSchema** method call and found in the collection has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the returned from the **GetSchema** method call and found in the collection regular expression. + +- A returned from the **GetSchema** method call and found in the collection is specified. + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -521,17 +521,17 @@ Gets the automatically generated object that is required to perform insertions on the database. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -566,17 +566,17 @@ Gets the automatically generated object required to perform insertions on the database. The automatically generated object required to perform insertions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -612,25 +612,25 @@ Gets the automatically generated object that is required to perform insertions on the database. The automatically generated object that is required to perform insertions. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The returned from the **GetSchema** method call and found in the collection has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the returned from the **GetSchema** method call and found in the collection regular expression. - -- A returned from the **GetSchema** method call and found in the collection is specified. - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The returned from the **GetSchema** method call and found in the collection has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the returned from the **GetSchema** method call and found in the collection regular expression. + +- A returned from the **GetSchema** method call and found in the collection is specified. + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -767,17 +767,17 @@ Gets the automatically generated object required to perform updates on the database. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> @@ -809,17 +809,17 @@ Gets the automatically generated object required to perform updates on the database. The automatically generated object that is required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -855,25 +855,25 @@ Gets the automatically generated object required to perform updates on the database. The automatically generated object required to perform updates. - method for informational or troubleshooting purposes because it returns the object to be executed. - - You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . - - After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . - - The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: - -- The returned from the **GetSchema** method call and found in the collection has been specified and its length is equal to or greater than the generated parameter name. - -- The generated parameter name meets the criteria specified in the returned from the **GetSchema** method call and found in the collection regular expression. - -- A returned from the **GetSchema** method call and found in the collection is specified. - - For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - + method for informational or troubleshooting purposes because it returns the object to be executed. + + You can also use as the basis of a modified command. For example, you might call and modify the value, and then explicitly set that on the . + + After the Transact-SQL statement is first generated, the application must explicitly call if it changes the statement in any way. Otherwise, the will still be using information from the previous statement, which might not be correct. The Transact-SQL statements are first generated when the application calls either or . + + The default behavior, when generating parameter names, is to use `@p1`, `@p2`, and so on for the various parameters. Passing `true` for the `useColumnsForParameterNames` parameter lets you force the to generate parameters based on the column names instead. This succeeds only if the following conditions are met: + +- The returned from the **GetSchema** method call and found in the collection has been specified and its length is equal to or greater than the generated parameter name. + +- The generated parameter name meets the criteria specified in the returned from the **GetSchema** method call and found in the collection regular expression. + +- A returned from the **GetSchema** method call and found in the collection is specified. + + For more information, see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + ]]> Connecting and Retrieving Data in ADO.NET @@ -990,13 +990,13 @@ Gets or sets the starting character or characters to use when specifying SQL Server database objects, such as tables or columns, whose names contain characters such as spaces or reserved tokens. The starting character or characters to use. The default is an empty string. - [!NOTE] -> Although you cannot change the or properties after an insert, update, or delete command has been generated, you can change their settings after calling the `Update` method of a DataAdapter. - +> Although you cannot change the or properties after an insert, update, or delete command has been generated, you can change their settings after calling the `Update` method of a DataAdapter. + ]]> This property cannot be changed after an INSERT, UPDATE, or DELETE command has been generated. @@ -1051,13 +1051,13 @@ Gets or sets the ending character or characters to use when specifying SQL Server database objects, such as tables or columns, whose names contain characters such as spaces or reserved tokens. The ending character or characters to use. The default is an empty string. - [!NOTE] -> Although you cannot change the or properties after an insert, update, or delete operation has been generated, you can change their settings after calling the `Update` method of a DataAdapter. - +> Although you cannot change the or properties after an insert, update, or delete operation has been generated, you can change their settings after calling the `Update` method of a DataAdapter. + ]]> This property cannot be changed after an insert, update, or delete command has been generated. @@ -1125,11 +1125,11 @@ Gets or sets the character to be used for the separator between the schema identifier and any other identifiers. The character to be used as the schema separator. - Connecting and Retrieving Data in ADO.NET diff --git a/xml/System.Data.SqlClient/SqlCommandColumnEncryptionSetting.xml b/xml/System.Data.SqlClient/SqlCommandColumnEncryptionSetting.xml index 9c36ba0767b..91dd53a58c5 100644 --- a/xml/System.Data.SqlClient/SqlCommandColumnEncryptionSetting.xml +++ b/xml/System.Data.SqlClient/SqlCommandColumnEncryptionSetting.xml @@ -20,9 +20,9 @@ ## Remarks -- If Always Encrypted is disabled for a query and the query has parameters that need to be encrypted (parameters that correspond to encrypted columns), the query will fail. +- If Always Encrypted is disabled for a query and the query has parameters that need to be encrypted (parameters that correspond to encrypted columns), the query will fail. -- If Always Encrypted is disabled for a query and the query returns results from encrypted columns, the query will return encrypted values. The encrypted values will have the varbinary datatype. +- If Always Encrypted is disabled for a query and the query returns results from encrypted columns, the query will return encrypted values. The encrypted values will have the varbinary datatype. ]]> diff --git a/xml/System.Data.SqlClient/SqlConnectionStringBuilder.xml b/xml/System.Data.SqlClient/SqlConnectionStringBuilder.xml index 1c543523837..cc5b4b59a18 100644 --- a/xml/System.Data.SqlClient/SqlConnectionStringBuilder.xml +++ b/xml/System.Data.SqlClient/SqlConnectionStringBuilder.xml @@ -2262,7 +2262,7 @@ This property corresponds to the "Integrated Security" and "trusted_connection" This key defaults to `false` when: -- Connecting to Azure SQL Database where the data source ends with: +- Connecting to Azure SQL Database where the data source ends with: - .database.chinacloudapi.cn diff --git a/xml/System.Data.SqlClient/SqlDataReader.xml b/xml/System.Data.SqlClient/SqlDataReader.xml index 19addcaae44..82e58d55ba1 100644 --- a/xml/System.Data.SqlClient/SqlDataReader.xml +++ b/xml/System.Data.SqlClient/SqlDataReader.xml @@ -2778,23 +2778,23 @@ Boolean, Byte, Char, DateTime, DateTimeOffset, Decimal, Double, Float, Guid, Int The following members are not available for objects returned by : -- BeginWrite +- BeginWrite -- EndWrite +- EndWrite -- Length +- Length -- Position +- Position -- Seek +- Seek -- SetLength +- SetLength -- Write +- Write -- WriteByte +- WriteByte -- WriteTimeout +- WriteTimeout When the connection property `ContextConnection=true`, only supports synchronous data retrieval for both sequential () and non-sequential () access. @@ -2940,17 +2940,17 @@ Boolean, Byte, Char, DateTime, DateTimeOffset, Decimal, Double, Float, Guid, Int Trying to read a column that does not exist. The returned type was not one of the types below: -- char +- char -- nchar +- nchar -- ntext +- ntext -- nvarchar +- nvarchar -- text +- text -- varchar +- varchar diff --git a/xml/System.Data.SqlClient/SqlDependency.xml b/xml/System.Data.SqlClient/SqlDependency.xml index 656c7dbe812..4f24b42f7da 100644 --- a/xml/System.Data.SqlClient/SqlDependency.xml +++ b/xml/System.Data.SqlClient/SqlDependency.xml @@ -34,23 +34,23 @@ The object represents a query notification dependency between an application and an instance of SQL Server. An application can create a object and register to receive notifications via the event handler. - is ideal for caching scenarios, where your ASP.NET application or middle-tier service needs to keep certain information cached in memory. allows you to receive notifications when the original data in the database changes so that the cache can be refreshed. - + is ideal for caching scenarios, where your ASP.NET application or middle-tier service needs to keep certain information cached in memory. allows you to receive notifications when the original data in the database changes so that the cache can be refreshed. + To set up a dependency, you need to associate a object to one or more objects. To receive notifications, you need to subscribe to the event. For more information about the requirements for creating queries for notifications, see [Working with Query Notifications](/sql/relational-databases/native-client/features/working-with-query-notifications). - + > [!NOTE] > was designed to be used in ASP.NET or middle-tier services where there is a relatively small number of servers having dependencies active against the database. It was not designed for use in client applications, where hundreds or thousands of client computers would have objects set up for a single database server. If you are developing an application where you need reliable sub-second notifications when data changes, review the sections [Planning an Efficient Query Notifications Strategy](https://learn.microsoft.com/previous-versions/sql/sql-server-2008-r2/ms187528(v=sql.105)#planning-an-efficient-query-notifications-strategy) and [Alternatives to Query Notifications](https://learn.microsoft.com/previous-versions/sql/sql-server-2008-r2/ms187528(v=sql.105)#alternatives-to-query-notifications) in the [Planning for Notifications](https://learn.microsoft.com/previous-versions/sql/sql-server-2008-r2/ms187528(v%3dsql.105)) article. - - For more information, see [Query Notifications in SQL Server](/dotnet/framework/data/adonet/sql/query-notifications-in-sql-server) and [Building Notification Solutions](https://learn.microsoft.com/previous-versions/sql/sql-server-2005/ms171065(v%3dsql.90)). - + + For more information, see [Query Notifications in SQL Server](/dotnet/framework/data/adonet/sql/query-notifications-in-sql-server) and [Building Notification Solutions](https://learn.microsoft.com/previous-versions/sql/sql-server-2005/ms171065(v%3dsql.90)). + > [!NOTE] -> The event may be generated on a different thread from the thread that initiated command execution. - - Query notifications are supported only for SELECT statements that meet a list of specific requirements. - +> The event may be generated on a different thread from the thread that initiated command execution. + + Query notifications are supported only for SELECT statements that meet a list of specific requirements. + ]]> Using Query Notifications @@ -88,11 +88,11 @@ Creates a new instance of the class with the default settings. - object using the default Service Broker service name and time-out. At some point after construction, you must use the method to associate one or more commands to this object. - + object using the default Service Broker service name and time-out. At some point after construction, you must use the method to associate one or more commands to this object. + Query notifications are supported only for SELECT statements that meet a list of specific requirements. For more information, see [SQL Server Service Broker](/sql/database-engine/configure-windows/sql-server-service-broker) and [Working with Query Notifications](/sql/connect/oledb/features/working-with-query-notifications). ]]> @@ -125,13 +125,13 @@ The object to associate with this object. The constructor will set up a object and bind it to the command. Creates a new instance of the class and associates it with the parameter. - class, and binds it to a object. - + class, and binds it to a object. + Query notifications are supported only for SELECT statements that meet a list of specific requirements. For more information, see [SQL Server Service Broker](/sql/database-engine/configure-windows/sql-server-service-broker) and [Working with Query Notifications](/sql/connect/oledb/features/working-with-query-notifications). - + ]]> The parameter is NULL. @@ -168,17 +168,17 @@ The time-out for this notification in seconds. The default is 0, indicating that the server's time-out should be used. Creates a new instance of the class, associates it with the parameter, and specifies notification options and a time-out value. - The parameter is NULL. The time-out value is less than zero. - The object already has a object assigned to its property and that is not associated with this dependency. - + The object already has a object assigned to its property and that is not associated with this dependency. + An attempt was made to create a **SqlDependency** instance from within SQLCLR. Using Query Notifications ADO.NET Overview @@ -211,11 +211,11 @@ A object containing a statement that is valid for notifications. Associates a object with this instance. - The parameter is null. @@ -248,13 +248,13 @@ Gets a value that indicates whether one of the result sets associated with the dependency has changed. A Boolean value indicating whether one of the result sets has changed. - event, you can check the property to determine if the query results have changed. - - The property does not necessarily imply a change in the data. Other circumstances, such as time-out expired and failure to set the notification request, also generate a change event. - + event, you can check the property to determine if the query results have changed. + + The property does not necessarily imply a change in the data. Other circumstances, such as time-out expired and failure to set the notification request, also generate a change event. + ]]> Using Query Notifications @@ -285,11 +285,11 @@ Gets a value that uniquely identifies this instance of the class. A string representation of a GUID that is generated for each instance of the class. - property is used to uniquely identify a given instance. - + property is used to uniquely identify a given instance. + ]]> Using Query Notifications @@ -319,13 +319,13 @@ Occurs when a notification is received for any of the commands associated with this object. - occurs when the results for the associated command change. If you are not using , you can check the property to determine whether the query results have changed. - - The event does not necessarily imply a change in the data. Other circumstances, such as time-out expired and failure to set the notification request, also generate . - + occurs when the results for the associated command change. If you are not using , you can check the property to determine whether the query results have changed. + + The event does not necessarily imply a change in the data. Other circumstances, such as time-out expired and failure to set the notification request, also generate . + ]]> Using Query Notifications @@ -341,25 +341,25 @@ Starts the listener for receiving dependency change notifications. - listener will restart when an error occurs in the SQL Server connection. - - Multiple calls to the method can be made, subject to the following restrictions: - -- Multiple calls with identical parameters (the same connection string and Windows credentials in the calling thread) are valid. - -- Multiple calls with different connection strings are valid as long as: - - - Each connection string specifies a different database, or - - - Each connection string specifies a different user, or - - - The calls come from different application domains. - - You can make the work correctly for applications that use multiple threads to represent different user credentials without giving the dbo role to the group, because different users can subscribe and listen (using or ) to a notification queue created by an administrator. When the relevant application domain starts, call Start with the (Windows) credentials of a user that has permission to initialize a service/queue (the CREATE QUEUE and CREATE SERVICE permissions for the database). Ensure that Start is only called once per AppDomain, otherwise an ambiguity exception is raised. The user thread must have permission to subscribe to the notification (the SUBSCRIBE QUERY NOTIFICATIONS permission for the database). will associate the subscription request of a non-administrator user to the service/queue created by the administrator. - + listener will restart when an error occurs in the SQL Server connection. + + Multiple calls to the method can be made, subject to the following restrictions: + +- Multiple calls with identical parameters (the same connection string and Windows credentials in the calling thread) are valid. + +- Multiple calls with different connection strings are valid as long as: + + - Each connection string specifies a different database, or + + - Each connection string specifies a different user, or + + - The calls come from different application domains. + + You can make the work correctly for applications that use multiple threads to represent different user credentials without giving the dbo role to the group, because different users can subscribe and listen (using or ) to a notification queue created by an administrator. When the relevant application domain starts, call Start with the (Windows) credentials of a user that has permission to initialize a service/queue (the CREATE QUEUE and CREATE SERVICE permissions for the database). Ensure that Start is only called once per AppDomain, otherwise an ambiguity exception is raised. The user thread must have permission to subscribe to the notification (the SUBSCRIBE QUERY NOTIFICATIONS permission for the database). will associate the subscription request of a non-administrator user to the service/queue created by the administrator. + ]]> ADO.NET Overview @@ -394,22 +394,22 @@ if the listener initialized successfully; if a compatible listener already exists. - for receiving dependency notifications from the instance of SQL Server specified by the `connectionString` parameter. This method may be called more than once with different connection strings for multiple servers. - - For additional remarks, see . - + for receiving dependency notifications from the instance of SQL Server specified by the `connectionString` parameter. This method may be called more than once with different connection strings for multiple servers. + + For additional remarks, see . + ]]> The parameter is NULL. - The parameter is the same as a previous call to this method, but the parameters are different. - + The parameter is the same as a previous call to this method, but the parameters are different. + The method was called from within the CLR. The caller does not have the required code access security (CAS) permission. - A subsequent call to the method has been made with an equivalent parameter with a different user, or a user that does not default to the same schema. - + A subsequent call to the method has been made with an equivalent parameter with a different user, or a user that does not default to the same schema. + Also, any underlying **SqlClient** exceptions. Using Query Notifications @@ -447,24 +447,24 @@ if the listener initialized successfully; if a compatible listener already exists. - for receiving dependency notifications from the instance of SQL Server specified by the `connectionString` parameter. This method may be called more than once with different connection strings for multiple servers. - - If no queue name is specified, creates a temporary queue and service in the server that is used for the entire process, even if the process involves more than one . The queue and service are automatically removed upon application shutdown. - - For additional remarks, see . - + for receiving dependency notifications from the instance of SQL Server specified by the `connectionString` parameter. This method may be called more than once with different connection strings for multiple servers. + + If no queue name is specified, creates a temporary queue and service in the server that is used for the entire process, even if the process involves more than one . The queue and service are automatically removed upon application shutdown. + + For additional remarks, see . + ]]> The parameter is NULL. - The parameter is the same as a previous call to this method, but the parameters are different. - + The parameter is the same as a previous call to this method, but the parameters are different. + The method was called from within the CLR. The caller does not have the required code access security (CAS) permission. - A subsequent call to the method has been made with an equivalent parameter but a different user, or a user that does not default to the same schema. - + A subsequent call to the method has been made with an equivalent parameter but a different user, or a user that does not default to the same schema. + Also, any underlying **SqlClient** exceptions. Using Query Notifications @@ -480,11 +480,11 @@ Stops a listener for a connection specified in a previous call. - listener will restart when an error occurs in the SQL Server connection. - + listener will restart when an error occurs in the SQL Server connection. + ]]> ADO.NET Overview @@ -519,11 +519,11 @@ if the listener was completely stopped; if the was unbound from the listener, but there are is at least one other using the same listener. - method must be called for each call. A given listener only shuts down fully when it receives the same number of requests as requests. - + method must be called for each call. A given listener only shuts down fully when it receives the same number of requests as requests. + ]]> The parameter is NULL. @@ -565,11 +565,11 @@ if the listener was completely stopped; if the was unbound from the listener, but there is at least one other using the same listener. - method must be called for each call. A given listener only shuts down fully when it receives the same number of requests as requests. - + method must be called for each call. A given listener only shuts down fully when it receives the same number of requests as requests. + ]]> The parameter is NULL. diff --git a/xml/System.Data/DataColumn.xml b/xml/System.Data/DataColumn.xml index 293cdd7df71..36da783035b 100644 --- a/xml/System.Data/DataColumn.xml +++ b/xml/System.Data/DataColumn.xml @@ -1224,15 +1224,15 @@ myDataTable.Rows[0][0] = newValue; > [!NOTE] > Although it is possible to define a column as data type other than the base .NET Framework data types and `Byte[]`, such a column will be treated as a user-defined type, subject to the following usage restrictions. (For more information on user-defined types, see [Creating and Using User-Defined Types](/previous-versions/9a81d32x(v=vs.85))) -- The column cannot be part of a or expression. +- The column cannot be part of a or expression. -- If the column is used as a , or as a or for a , it must be treated as an immutable field; the column data must not be changed once it has been added to the table. +- If the column is used as a , or as a or for a , it must be treated as an immutable field; the column data must not be changed once it has been added to the table. -- Its can be only set to `MappingType.Element`. +- Its can be only set to `MappingType.Element`. -- The class that implements the column's data type must be marked with the , and if necessary implement the or interface. +- The class that implements the column's data type must be marked with the , and if necessary implement the or interface. -- Support for change tracking is limited. To utilize the class' change tracking mechanism, the class that implements the column's data type must either implement the interface, or take over the responsibility for informing the when the column value has been modified, either by calling on the row or by assigning the column value object to a separately instantiated column value object. +- Support for change tracking is limited. To utilize the class' change tracking mechanism, the class that implements the column's data type must either implement the interface, or take over the responsibility for informing the when the column value has been modified, either by calling on the row or by assigning the column value object to a separately instantiated column value object. diff --git a/xml/System.Data/DataColumnCollection.xml b/xml/System.Data/DataColumnCollection.xml index bffa387605f..4ffb3d4c2db 100644 --- a/xml/System.Data/DataColumnCollection.xml +++ b/xml/System.Data/DataColumnCollection.xml @@ -74,21 +74,21 @@ Represents a collection of objects for a . - defines the schema of a , and determines what kind of data each can contain. You can access the through the property of the object. - - The uses the and methods to insert and delete objects. Use the property to determine how many objects are in the collection. Use the method to verify whether a specified index or column name exists in the collection. - - - -## Examples - The following example iterates through a collection of objects and prints various properties of each column in the collection. - + defines the schema of a , and determines what kind of data each can contain. You can access the through the property of the object. + + The uses the and methods to insert and delete objects. Use the property to determine how many objects are in the collection. Use the method to verify whether a specified index or column name exists in the collection. + + + +## Examples + The following example iterates through a collection of objects and prints various properties of each column in the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection Example/VB/source.vb" id="Snippet1"::: + ]]> This type is safe for multithreaded read operations. You must synchronize any write operations. @@ -155,20 +155,20 @@ Creates and adds a object to the . The newly created . - event occurs. - - - -## Examples - The following example creates and adds a new to the of a . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add5 Example/VB/source.vb" id="Snippet1"::: - + event occurs. + + + +## Examples + The following example creates and adds a new to the of a . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add5 Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -219,18 +219,18 @@ The to add. Creates and adds the specified object to the . - event occurs. - - - -## Examples - The following example adds a to a . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add Example/VB/source.vb" id="Snippet1"::: - + event occurs. + + + +## Examples + The following example adds a to a . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add Example/VB/source.vb" id="Snippet1"::: + ]]> The parameter is . @@ -300,24 +300,24 @@ Creates and adds a object that has the specified name to the . The newly created . - for the new column is `string`. - - If `null` or an empty string ("") is passed in for the name, a default name ("Column1", "Column2", and so on) is given to the column. - - Use the method to determine whether a column with the proposed name already exists in the collection. - - If the collection is successfully changed by adding or removing columns, the event occurs. - - - -## Examples - The following example creates and adds a new to a of a . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add4 Example/VB/source.vb" id="Snippet1"::: - + for the new column is `string`. + + If `null` or an empty string ("") is passed in for the name, a default name ("Column1", "Column2", and so on) is given to the column. + + Use the method to determine whether a column with the proposed name already exists in the collection. + + If the collection is successfully changed by adding or removing columns, the event occurs. + + + +## Examples + The following example creates and adds a new to a of a . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add4 Example/VB/source.vb" id="Snippet1"::: + ]]> The collection already has a column with the specified name. (The comparison is not case-sensitive.) @@ -392,22 +392,22 @@ Creates and adds a object that has the specified name and type to the . The newly created . - method to determine whether a column with the proposed name already exists in the collection. - - If the collection is successfully changed by adding or removing columns, the event occurs. - - - -## Examples - The following example creates and adds a new to a of a . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add2 Example/VB/source.vb" id="Snippet1"::: - + method to determine whether a column with the proposed name already exists in the collection. + + If the collection is successfully changed by adding or removing columns, the event occurs. + + + +## Examples + The following example creates and adds a new to a of a . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add2 Example/VB/source.vb" id="Snippet1"::: + ]]> The collection already has a column with the specified name. (The comparison is not case-sensitive.) @@ -490,22 +490,22 @@ Creates and adds a object that has the specified name, type, and expression to the . The newly created . - method to determine whether a column with the proposed name already exists in the collection. - - If the collection is successfully changed by adding or removing columns, the event occurs. - - - -## Examples - The following example creates and adds a new to a of a . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add1 Example/VB/source.vb" id="Snippet1"::: - + method to determine whether a column with the proposed name already exists in the collection. + + If the collection is successfully changed by adding or removing columns, the event occurs. + + + +## Examples + The following example creates and adds a new to a of a . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Add1 Example/VB/source.vb" id="Snippet1"::: + ]]> The collection already has a column with the specified name. (The comparison is not case-sensitive.) @@ -603,38 +603,38 @@ A in the collection. Checks whether a specific column can be removed from the collection. - if the column can be removed. if, - -- The parameter is . - -- The column does not belong to this collection. - -- The column is part of a relationship. - -- Another column's expression depends on this column. + if the column can be removed. if, + +- The parameter is . + +- The column does not belong to this collection. + +- The column is part of a relationship. + +- Another column's expression depends on this column. - method performs several checks before returning a `true` or `false` result. This includes the following: whether the column exists, belongs to the table, or is involved in a constraint or relation. - - Use the method before you try to remove any column from a collection. You can also use the method to determine whether a particular column exists before you try to remove it. - - - -## Examples - The following example first uses the method to determine whether a particular column is found in the collection. If found, the method tests whether the column can be removed. If so, the column is removed with the method. - + method performs several checks before returning a `true` or `false` result. This includes the following: whether the column exists, belongs to the table, or is involved in a constraint or relation. + + Use the method before you try to remove any column from a collection. You can also use the method to determine whether a particular column exists before you try to remove it. + + + +## Examples + The following example first uses the method to determine whether a particular column is found in the collection. If found, the method tests whether the column can be removed. If so, the column is removed with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.CanRemove Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.CanRemove Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.CanRemove Example/VB/source.vb" id="Snippet1"::: + ]]> The parameter is null. The column does not belong to this collection. - + -or- The column is part of a relationship. @@ -683,19 +683,19 @@ Another column's expression depends on this column. Clears the collection of any columns. - event occurs. - - - -## Examples - The following example clears the columns collection. - + event occurs. + + + +## Examples + The following example clears the columns collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Clear Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Clear Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Clear Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -745,19 +745,19 @@ Another column's expression depends on this column. Occurs when the columns collection changes, either by adding or removing a column. - and methods to determine whether a column exists and can be removed. - - - -## Examples - The following example adds an event handler for the CollectionChanged event. - + and methods to determine whether a column exists and can be removed. + + + +## Examples + The following example adds an event handler for the CollectionChanged event. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.CollectionChanged Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.CollectionChanged Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.CollectionChanged Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -806,19 +806,19 @@ Another column's expression depends on this column. if a column exists with this name; otherwise, . - method to confirm the existence of a column before you perform additional operations on the column. The method returns `false` when two or more columns have the same name but different namespaces. The call does not succeed if there is any ambiguity when matching a column name to exactly one column. - - - -## Examples - The following example uses the method and the method to determine whether the column can be removed. If so, the column is removed. - + method to confirm the existence of a column before you perform additional operations on the column. The method returns `false` when two or more columns have the same name but different namespaces. The call does not succeed if there is any ambiguity when matching a column name to exactly one column. + + + +## Examples + The following example uses the method and the method to determine whether the column can be removed. If so, the column is removed. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Contains Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Contains Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Contains Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -929,19 +929,19 @@ Another column's expression depends on this column. Gets the index of a column specified by name. The index of the column specified by if it is found; otherwise, -1. - method is not case-sensitive. - - - -## Examples - The following example uses the method to determine whether a specified column exists in a . If so, the method returns the index of the column. - + method is not case-sensitive. + + + +## Examples + The following example uses the method to determine whether a specified column exists in a . If so, the method returns the index of the column. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.IndexOf Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.IndexOf Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.IndexOf Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -1048,19 +1048,19 @@ Another column's expression depends on this column. Gets the from the collection at the specified index. The at the specified index. - method can be used to test for the existence of a column. This is useful before you try to use . - - - -## Examples - The following example uses the property to print the value of a object specified by index. The example uses the that is contained by a System.Windows.Forms.DataGrid control. - + method can be used to test for the existence of a column. This is useful before you try to use . + + + +## Examples + The following example uses the property to print the value of a object specified by index. The example uses the that is contained by a System.Windows.Forms.DataGrid control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.this Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.this Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.this Example/VB/source.vb" id="Snippet1"::: + ]]> The index value is greater than the number of items in the collection. @@ -1122,19 +1122,19 @@ Another column's expression depends on this column. Gets the from the collection with the specified name. The in the collection with the specified ; otherwise a null value if the does not exist. - is conditionally case-sensitive when it searches for column names. For example, if one is named "mydatacolumn" and another is named "Mydatacolumn", a string used to search for one of the columns is regarded as case-sensitive. However, if "mydatacolumn" exists and "Mydatacolumn" does not, the search string is regarded as case-insensitive. - - - -## Examples - The following example uses the property to print the value of a object specified by index. - + is conditionally case-sensitive when it searches for column names. For example, if one is named "mydatacolumn" and another is named "Mydatacolumn", a string used to search for one of the columns is regarded as case-sensitive. However, if "mydatacolumn" exists and "Mydatacolumn" does not, the search string is regarded as case-insensitive. + + + +## Examples + The following example uses the property to print the value of a object specified by index. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.this1 Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.this1 Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.this1 Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -1295,30 +1295,30 @@ Another column's expression depends on this column. The to remove. Removes the specified object from the collection. - event occurs. - - - -## Examples - The following example uses the method to determine whether a named column exists. If so, the property returns the column. The method then checks whether the column can be removed; if so, the method removes it. - + event occurs. + + + +## Examples + The following example uses the method to determine whether a named column exists. If so, the property returns the column. The method then checks whether the column can be removed; if so, the method removes it. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Remove Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Remove Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Remove Example/VB/source.vb" id="Snippet1"::: + ]]> The parameter is . - The column does not belong to this collection. - - -Or- - - The column is part of a relationship. - - -Or- - + The column does not belong to this collection. + + -Or- + + The column is part of a relationship. + + -Or- + Another column's expression depends on this column. @@ -1367,19 +1367,19 @@ Another column's expression depends on this column. The name of the column to remove. Removes the object that has the specified name from the collection. - event occurs. - - - -## Examples - The following example first uses the method to determine whether a particular column is found in the collection. If it is found, the method tests whether the column can be removed. If so, the column is removed with the method. - + event occurs. + + + +## Examples + The following example first uses the method to determine whether a particular column is found in the collection. If it is found, the method tests whether the column can be removed. If so, the column is removed with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Remove1 Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Remove1 Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.Remove1 Example/VB/source.vb" id="Snippet1"::: + ]]> The collection does not have a column with the specified name. @@ -1428,18 +1428,18 @@ Another column's expression depends on this column. The index of the column to remove. Removes the column at the specified index from the collection. - event occurs. - - - -## Examples - The following example first uses the method to determine whether a particular column is found in the collection. If it is found, the method tests whether the column can be removed. If so, the column is removed with the method. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.RemoveAt Example/VB/source.vb" id="Snippet1"::: - + event occurs. + + + +## Examples + The following example first uses the method to determine whether a particular column is found in the collection. If it is found, the method tests whether the column can be removed. If so, the column is removed with the method. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataColumnCollection.RemoveAt Example/VB/source.vb" id="Snippet1"::: + ]]> The collection does not have a column at the specified index. diff --git a/xml/System.Data/DataRowVersion.xml b/xml/System.Data/DataRowVersion.xml index 57bad3f41e9..308b4721bde 100644 --- a/xml/System.Data/DataRowVersion.xml +++ b/xml/System.Data/DataRowVersion.xml @@ -44,33 +44,33 @@ Describes the version of a . - values are used when retrieving the value found in a using or the of the object. - - The informs you what version of a exists. Versions change under the following circumstances: - -- After calling the object's method, if you change the value, the `Current` and `Proposed` values become available. - -- After calling the object's method, the `Proposed` value is deleted. - -- After calling the object's method, the Proposed value becomes the `Current` value. - -- After calling the object's method, the `Original` value becomes identical to the `Current` value. - -- After calling the object's method, the `Original` value becomes identical to the `Current` value. - -- After calling the object's method, the `Proposed` value is discarded, and the version becomes `Current`. - - - -## Examples - The following example checks the of a before invoking the method. - + values are used when retrieving the value found in a using or the of the object. + + The informs you what version of a exists. Versions change under the following circumstances: + +- After calling the object's method, if you change the value, the `Current` and `Proposed` values become available. + +- After calling the object's method, the `Proposed` value is deleted. + +- After calling the object's method, the Proposed value becomes the `Current` value. + +- After calling the object's method, the `Original` value becomes identical to the `Current` value. + +- After calling the object's method, the `Original` value becomes identical to the `Current` value. + +- After calling the object's method, the `Proposed` value is discarded, and the version becomes `Current`. + + + +## Examples + The following example checks the of a before invoking the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataRowVersion Example/cs/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataRowVersion Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataRowVersion Example/VB/source.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Data/DataSet.xml b/xml/System.Data/DataSet.xml index 06fa3005d33..78000229779 100644 --- a/xml/System.Data/DataSet.xml +++ b/xml/System.Data/DataSet.xml @@ -2871,11 +2871,11 @@ class Program { Given these two hypothetical data sources, a user is likely to require one of the following behaviors: -- Initialize `DataSet` from a primary data source. In this scenario, the user wants to initialize an empty `DataSet` with values from the primary data source. One or more DataTable's contents are modified. Later the user intends to propagate changes back to the primary data source. +- Initialize `DataSet` from a primary data source. In this scenario, the user wants to initialize an empty `DataSet` with values from the primary data source. One or more DataTable's contents are modified. Later the user intends to propagate changes back to the primary data source. -- Preserve changes and re-synchronize from the primary data source. In this scenario, the user wants to take the `DataSet` filled in the previous scenario and perform an incremental synchronization with the primary data source, preserving modifications made in the `DataSet`. +- Preserve changes and re-synchronize from the primary data source. In this scenario, the user wants to take the `DataSet` filled in the previous scenario and perform an incremental synchronization with the primary data source, preserving modifications made in the `DataSet`. -- Incremental data feed from secondary data sources. In this scenario, the user wants to merge changes from one or more secondary data sources, and propagate those changes back to the primary data source. +- Incremental data feed from secondary data sources. In this scenario, the user wants to merge changes from one or more secondary data sources, and propagate those changes back to the primary data source. The `Load` method makes all these scenarios possible. This method allows you to specify a load option parameter, indicating how rows already in a combine with rows being loaded. The following table describes the three load options provided by the enumeration. In each case, the description indicates the behavior when the primary key of a row in the incoming data matches the primary key of an existing row. diff --git a/xml/System.Data/DataTable.xml b/xml/System.Data/DataTable.xml index 5d29d957be0..35611198089 100644 --- a/xml/System.Data/DataTable.xml +++ b/xml/System.Data/DataTable.xml @@ -784,11 +784,11 @@ The following example creates two objects and one < ## Examples The following sample demonstrates how to update the structure and constraints of the destination table after you execute DataTable.Clone. The ClonedDataTable class will return a destination table and includes all the updating events. After the clone, structure changes in the source table won't be reflected in the destination table. Specifically, this sample will: -- Update the changes of the columns in source table. +- Update the changes of the columns in source table. -- Update the changes of the UniqueConstraint in source table. +- Update the changes of the UniqueConstraint in source table. -- Update the changes of the ForeignKeyConstraint in source table. +- Update the changes of the ForeignKeyConstraint in source table. ```csharp using System; @@ -1644,13 +1644,13 @@ class Program { ## Remarks A restricts the action performed when a value in a column (or columns) is either deleted or updated. Such a constraint is intended to be used with primary key columns. In a parent/child relationship between two tables, deleting a value from the parent table can affect the child rows in one of the following ways. -- The child rows can also be deleted (a cascading action). +- The child rows can also be deleted (a cascading action). -- The values in the child column (or columns) can be set to null values. +- The values in the child column (or columns) can be set to null values. -- The values in the child column (or columns) can be set to default values. +- The values in the child column (or columns) can be set to default values. -- An exception can be generated. +- An exception can be generated. A becomes active when attempting to set a value in a primary key to a non-unique value. @@ -2912,11 +2912,11 @@ class Program { Given these two hypothetical data sources, a user is likely to require one of the following behaviors: -- Initialize `DataTable` from a primary data source. In this scenario, the user wants to initialize an empty `DataTable` with values from the primary data source. Later the user intends to propagate changes back to the primary data source. +- Initialize `DataTable` from a primary data source. In this scenario, the user wants to initialize an empty `DataTable` with values from the primary data source. Later the user intends to propagate changes back to the primary data source. -- Preserve changes and re-synchronize from the primary data source. In this scenario, the user wants to take the `DataTable` filled in the previous scenario and perform an incremental synchronization with the primary data source, preserving modifications made in the `DataTable`. +- Preserve changes and re-synchronize from the primary data source. In this scenario, the user wants to take the `DataTable` filled in the previous scenario and perform an incremental synchronization with the primary data source, preserving modifications made in the `DataTable`. -- Incremental data feed from secondary data sources. In this scenario, the user wants to merge changes from one or more secondary data sources, and propagate those changes back to the primary data source. +- Incremental data feed from secondary data sources. In this scenario, the user wants to merge changes from one or more secondary data sources, and propagate those changes back to the primary data source. The `Load` method makes all these scenarios possible. All but one of the overloads for this method allows you to specify a load option parameter, indicating how rows already in a combine with rows being loaded. (The overload that doesn't allow you to specify the behavior uses the default load option.) The following table describes the three load options provided by the enumeration. In each case, the description indicates the behavior when the primary key of a row in the incoming data matches the primary key of an existing row. diff --git a/xml/System.Data/DataTableExtensions.xml b/xml/System.Data/DataTableExtensions.xml index 7789565b542..e4478539c76 100644 --- a/xml/System.Data/DataTableExtensions.xml +++ b/xml/System.Data/DataTableExtensions.xml @@ -95,21 +95,21 @@ Creates and returns a LINQ-enabled object. A LINQ-enabled object. - enables data-binding scenarios for LINQ to DataSet and can be created from a typed or untyped , providing a default view of that table. Filtering and sorting can be set on the after it has been created from a . The is then bound to a UI control, such as a or a , providing a simple data binding model. - - For more information and examples, see [Creating a DataView Object](/dotnet/framework/data/adonet/creating-a-dataview-object-linq-to-dataset). - - - -## Examples - The following example creates a from the SalesOrderDetail table and sets it as the data source of a object, which acts as a proxy for a control: - + enables data-binding scenarios for LINQ to DataSet and can be created from a typed or untyped , providing a default view of that table. Filtering and sorting can be set on the after it has been created from a . The is then bound to a UI control, such as a or a , providing a simple data binding model. + + For more information and examples, see [Creating a DataView Object](/dotnet/framework/data/adonet/creating-a-dataview-object-linq-to-dataset). + + + +## Examples + The following example creates a from the SalesOrderDetail table and sets it as the data source of a object, which acts as a proxy for a control: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DP DataView Samples/CS/Form1.cs" id="Snippetcreateldvfromtable"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DP DataView Samples/VB/Form1.vb" id="Snippetcreateldvfromtable"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DP DataView Samples/VB/Form1.vb" id="Snippetcreateldvfromtable"::: + ]]> @@ -167,39 +167,39 @@ Creates and returns a LINQ-enabled object representing the LINQ to DataSet query. A LINQ-enabled object. - enables data binding scenarios for LINQ to DataSet and can be created from a LINQ to DataSet query. The represents the query itself, and is not a view on top of the query. The newly created infers the filtering and sorting information from the query it is created from. The is then bound to a UI control, such as a or a , providing a simple data-binding model. - - The parameter `T` of the input parameter `source` can only be of type or a type derived from . - - The following query operators, only, are supported in a query used to create : - -- - -- - -- - -- - -- - -- - -- - - For more information and examples, see [Creating a DataView Object](/dotnet/framework/data/adonet/creating-a-dataview-object-linq-to-dataset). - - - -## Examples - The following example creates a of online orders ordered by total due: - + enables data binding scenarios for LINQ to DataSet and can be created from a LINQ to DataSet query. The represents the query itself, and is not a view on top of the query. The newly created infers the filtering and sorting information from the query it is created from. The is then bound to a UI control, such as a or a , providing a simple data-binding model. + + The parameter `T` of the input parameter `source` can only be of type or a type derived from . + + The following query operators, only, are supported in a query used to create : + +- + +- + +- + +- + +- + +- + +- + + For more information and examples, see [Creating a DataView Object](/dotnet/framework/data/adonet/creating-a-dataview-object-linq-to-dataset). + + + +## Examples + The following example creates a of online orders ordered by total due: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DP DataView Samples/CS/Form1.cs" id="Snippetcreateldvfromquery1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DP DataView Samples/VB/Form1.vb" id="Snippetcreateldvfromquery1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DP DataView Samples/VB/Form1.vb" id="Snippetcreateldvfromquery1"::: + ]]> @@ -243,21 +243,21 @@ Returns an object, where the generic parameter is . This object can be used in a LINQ expression or method query. An object, where the generic parameter is . - interface or the interface. The class does not implement either interface, so you must call the method to use the as a source in the `From` clause of a LINQ query. You can also obtain custom, domain-specific operators, such as , by returning an object. - - The enumerable object returned by the method is permanently bound to the that produced it. Multiple calls to the method will return multiple, independent queryable objects that are all bound to the source . - - - -## Examples - In the following sample, the `DisplayProducts` method receives a DataTable that contains a DataColumn named `ProductName`, extracts the `ProductName` values and then prints the values. - + interface or the interface. The class does not implement either interface, so you must call the method to use the as a source in the `From` clause of a LINQ query. You can also obtain custom, domain-specific operators, such as , by returning an object. + + The enumerable object returned by the method is permanently bound to the that produced it. Multiple calls to the method will return multiple, independent queryable objects that are all bound to the source . + + + +## Examples + In the following sample, the `DisplayProducts` method receives a DataTable that contains a DataColumn named `ProductName`, extracts the `ProductName` values and then prints the values. + :::code language="csharp" source="~/snippets/csharp/System.Data/DataTableExtensions/AsEnumerable/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.data.datatableextensions.asenumerable/vb/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.data.datatableextensions.asenumerable/vb/source.vb" id="Snippet1"::: + ]]> The source is . @@ -325,36 +325,36 @@ Returns a that contains copies of the objects, given an input object where the generic parameter is . A that contains the input sequence as the type of objects. - or a type derived from . - - The input sequence can be any source, not only a query or a query over a . Note that if the source sequence is a query, calling this operator will force immediate execution. Enumerating the source sequence can also cause exceptions to be thrown. - - The schema of the destination table is based on the schema of the first row in the source sequence. The table metadata is extracted from the metadata and the table values from the column values of the . For a typed , types are not preserved. The data and schema are transferred, but the resulting rows of the output table will not be of the typed type. The and properties are not preserved during the copy from the source to the returned . - - When a **null** reference or nullable type with a value of **null** is found in a source , this method replaces the value in the destination with a value of . - - The generated table returned by the method has the default table name. If you want to name the , attach it to a , or perform any other specific operation, you must do so after the table is created and returned. - - For more information, see [Creating a DataTable From a Query](/dotnet/framework/data/adonet/creating-a-datatable-from-a-query-linq-to-dataset). - - - -## Examples - The following example queries the SalesOrderHeader table for orders after August 8, 2001, and uses the method to create a from that query. The is then bound to a , which acts as proxy for a . - + or a type derived from . + + The input sequence can be any source, not only a query or a query over a . Note that if the source sequence is a query, calling this operator will force immediate execution. Enumerating the source sequence can also cause exceptions to be thrown. + + The schema of the destination table is based on the schema of the first row in the source sequence. The table metadata is extracted from the metadata and the table values from the column values of the . For a typed , types are not preserved. The data and schema are transferred, but the resulting rows of the output table will not be of the typed type. The and properties are not preserved during the copy from the source to the returned . + + When a **null** reference or nullable type with a value of **null** is found in a source , this method replaces the value in the destination with a value of . + + The generated table returned by the method has the default table name. If you want to name the , attach it to a , or perform any other specific operation, you must do so after the table is created and returned. + + For more information, see [Creating a DataTable From a Query](/dotnet/framework/data/adonet/creating-a-datatable-from-a-query-linq-to-dataset). + + + +## Examples + The following example queries the SalesOrderHeader table for orders after August 8, 2001, and uses the method to create a from that query. The is then bound to a , which acts as proxy for a . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/DP LINQ to DataSet Examples/CS/Program.cs" id="Snippetcopytodatatable1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DP LINQ to DataSet Examples/VB/Module1.vb" id="Snippetcopytodatatable1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/DP LINQ to DataSet Examples/VB/Module1.vb" id="Snippetcopytodatatable1"::: + ]]> The source sequence is and a new table cannot be created. - A in the source sequence has a state of . - - The source sequence does not contain any objects. - + A in the source sequence has a state of . + + The source sequence does not contain any objects. + A in the source sequence is . @@ -414,29 +414,29 @@ A enumeration that specifies the load options. Copies objects to the specified , given an input object where the generic parameter is . - , or a type derived from . - - The input sequence can be any source, not only a query over a . Note that if the source sequence is a query, calling this operator will force immediate execution. Enumerating the source sequence can also cause exceptions to be thrown. - - The schema of the destination table is based on the schema of the first row in the source sequence. The table metadata is extracted from the metadata and the table values from the column values of the . For a typed , types are not preserved. The data and schema are transferred, but the resulting rows of the output table will not be of the typed type. The and properties are not preserved during the copy from the source to the returned . - - When a **null** reference or nullable type with a value of **null** is found in a source , this method replaces the value in the destination with a value of . - - The generated table returned by the method has the default table name. If you want to name the , attach it to a , or perform any other specific operation, you must do so after the table is created and returned. - - For more information, see [Creating a DataTable From a Query](/dotnet/framework/data/adonet/creating-a-datatable-from-a-query-linq-to-dataset). - + , or a type derived from . + + The input sequence can be any source, not only a query over a . Note that if the source sequence is a query, calling this operator will force immediate execution. Enumerating the source sequence can also cause exceptions to be thrown. + + The schema of the destination table is based on the schema of the first row in the source sequence. The table metadata is extracted from the metadata and the table values from the column values of the . For a typed , types are not preserved. The data and schema are transferred, but the resulting rows of the output table will not be of the typed type. The and properties are not preserved during the copy from the source to the returned . + + When a **null** reference or nullable type with a value of **null** is found in a source , this method replaces the value in the destination with a value of . + + The generated table returned by the method has the default table name. If you want to name the , attach it to a , or perform any other specific operation, you must do so after the table is created and returned. + + For more information, see [Creating a DataTable From a Query](/dotnet/framework/data/adonet/creating-a-datatable-from-a-query-linq-to-dataset). + ]]> The copied objects do not fit the schema of the destination . The source sequence is or the destination is . - A in the source sequence has a state of . - - The source sequence does not contain any objects. - + A in the source sequence has a state of . + + The source sequence does not contain any objects. + A in the source sequence is . @@ -506,43 +506,43 @@ A delegate that represents the method that will handle an error. Copies objects to the specified , given an input object where the generic parameter is . - , or a type derived from . - - The input sequence can be any source, not only a query over a . Note that if the source sequence is a query, calling this operator will force immediate execution. Enumerating the source sequence can also cause exceptions to be thrown. - - The schema of the destination table is based on the schema of the first row in the source sequence. The table metadata is extracted from the metadata and the table values from the column values of the . For a typed , types are not preserved. The data and schema are transferred, but the resulting rows of the output table will not be of the typed type. The and properties are not preserved during the copy from the source to the returned . - - When a **null** reference or nullable type with a value of **null** is found in a source , this method replaces the value in the destination with a value of . - - The generated table returned by the method has the default table name. If you want to name the , attach it to a , or perform any other specific operation, you must do so after the table is created and returned. - - If an exception is thrown during the copy of a data row into the target table, such as a constraint exception, the `errorHandler` delegate is called. A is passed to the `errorHandler` delegate with the following values: - -- The property is set to a copy of the source data. - -- The property is set to the target . - -- The property is set to the caught exception. - - The property is read after the delegate call returns. If the property is `true`, the source sequence continues to be enumerated and loaded into the data table. If the property is `false`, the original exception is thrown from the method. - - For more information, see [Creating a DataTable From a Query](/dotnet/framework/data/adonet/creating-a-datatable-from-a-query-linq-to-dataset). - + , or a type derived from . + + The input sequence can be any source, not only a query over a . Note that if the source sequence is a query, calling this operator will force immediate execution. Enumerating the source sequence can also cause exceptions to be thrown. + + The schema of the destination table is based on the schema of the first row in the source sequence. The table metadata is extracted from the metadata and the table values from the column values of the . For a typed , types are not preserved. The data and schema are transferred, but the resulting rows of the output table will not be of the typed type. The and properties are not preserved during the copy from the source to the returned . + + When a **null** reference or nullable type with a value of **null** is found in a source , this method replaces the value in the destination with a value of . + + The generated table returned by the method has the default table name. If you want to name the , attach it to a , or perform any other specific operation, you must do so after the table is created and returned. + + If an exception is thrown during the copy of a data row into the target table, such as a constraint exception, the `errorHandler` delegate is called. A is passed to the `errorHandler` delegate with the following values: + +- The property is set to a copy of the source data. + +- The property is set to the target . + +- The property is set to the caught exception. + + The property is read after the delegate call returns. If the property is `true`, the source sequence continues to be enumerated and loaded into the data table. If the property is `false`, the original exception is thrown from the method. + + For more information, see [Creating a DataTable From a Query](/dotnet/framework/data/adonet/creating-a-datatable-from-a-query-linq-to-dataset). + ]]> The copied objects do not fit the schema of the destination . The source sequence is or the destination is . - A in the source sequence has a state of . - - -or- - - The source sequence does not contain any objects. - - -or- - + A in the source sequence has a state of . + + -or- + + The source sequence does not contain any objects. + + -or- + A in the source sequence is . diff --git a/xml/System.Data/EntityKey.xml b/xml/System.Data/EntityKey.xml index a7c44f11288..20ce9913d4a 100644 --- a/xml/System.Data/EntityKey.xml +++ b/xml/System.Data/EntityKey.xml @@ -347,9 +347,9 @@ ## Remarks Temporary keys have different comparison semantics than permanent keys: -- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. +- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. -- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. +- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. In addition, temporary keys have no or key values, but permanent keys do. @@ -387,9 +387,9 @@ ## Remarks Temporary keys have different comparison semantics than permanent keys: -- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. +- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. -- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their objects are the same and their key values are equal. +- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their objects are the same and their key values are equal. In addition, temporary keys have no or key values, but permanent keys do. @@ -485,9 +485,9 @@ Temporary keys have different comparison semantics than permanent keys: -- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. +- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. -- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. +- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. In addition, temporary keys have no or key values, but permanent keys do. @@ -649,9 +649,9 @@ ## Remarks Temporary keys have different comparison semantics than permanent keys: -- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. +- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. -- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. +- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. In addition, temporary keys have no or key values, but permanent keys do. @@ -691,9 +691,9 @@ ## Remarks Temporary keys have different comparison semantics than permanent keys: -- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. +- Temporary keys use reference equality. That is, two references to the exact same temporary instance are equal but no other instances are equal. -- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. +- Permanent keys determine equality based on the values of the contained key properties and the . That is, you can have two separate instances that are equal if their entity sets are the same and their key values are equal. In addition, temporary keys have no or key values, but regular keys do. diff --git a/xml/System.Data/ForeignKeyConstraint.xml b/xml/System.Data/ForeignKeyConstraint.xml index 1db2475ff79..18918f8a6aa 100644 --- a/xml/System.Data/ForeignKeyConstraint.xml +++ b/xml/System.Data/ForeignKeyConstraint.xml @@ -71,32 +71,32 @@ Represents an action restriction enforced on a set of columns in a primary key/foreign key relationship when a value or row is either deleted or updated. - restricts the action performed when a value in a column (or columns) is either deleted or updated. Such a constraint is intended to be used with primary key columns. In a parent/child relationship between two tables, deleting a value from the parent table can affect the child rows in one of the following ways. - -- The child rows can also be deleted (a cascading action). - -- The values in the child column (or columns) can be set to null values. - -- The values in the child column (or columns) can be set to default values. - -- An exception can be generated. - - objects are contained in the of a , which is accessed through the property. - - Constraints are not enforced unless the property is set to `true`. - - The is enforced whenever a object's method is invoked. - - - -## Examples - The following example creates a , sets some of its properties, and adds it to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint Example/VB/source.vb" id="Snippet1"::: - + restricts the action performed when a value in a column (or columns) is either deleted or updated. Such a constraint is intended to be used with primary key columns. In a parent/child relationship between two tables, deleting a value from the parent table can affect the child rows in one of the following ways. + +- The child rows can also be deleted (a cascading action). + +- The values in the child column (or columns) can be set to null values. + +- The values in the child column (or columns) can be set to default values. + +- An exception can be generated. + + objects are contained in the of a , which is accessed through the property. + + Constraints are not enforced unless the property is set to `true`. + + The is enforced whenever a object's method is invoked. + + + +## Examples + The following example creates a , sets some of its properties, and adds it to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint Example/VB/source.vb" id="Snippet1"::: + ]]> This type is safe for multithreaded read operations. You must synchronize any write operations. @@ -157,20 +157,20 @@ The child in the constraint. Initializes a new instance of the class with the specified parent and child objects. - , sets some of its properties, and adds it to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint Example/VB/source.vb" id="Snippet1"::: - + , sets some of its properties, and adds it to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint Example/VB/source.vb" id="Snippet1"::: + ]]> One or both of the columns is . - The columns have different data types. - - -Or - - + The columns have different data types. + + -Or - + The tables don't belong to the same . @@ -215,20 +215,20 @@ An array of child in the constraint. Initializes a new instance of the class with the specified arrays of parent and child objects. - , sets some of its properties, and adds it to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint2 Example/VB/source.vb" id="Snippet1"::: - + , sets some of its properties, and adds it to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint2 Example/VB/source.vb" id="Snippet1"::: + ]]> One or both of the columns is . - The columns have different data types. - - -Or - - + The columns have different data types. + + -Or - + The tables don't belong to the same . @@ -283,20 +283,20 @@ The child in the constraint. Initializes a new instance of the class with the specified name, parent and child objects. - , sets some of its properties, and adds it to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint1 Example/VB/source.vb" id="Snippet1"::: - + , sets some of its properties, and adds it to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint1 Example/VB/source.vb" id="Snippet1"::: + ]]> One or both of the columns is . - The columns have different data types. - - -Or - - + The columns have different data types. + + -Or - + The tables don't belong to the same . @@ -351,20 +351,20 @@ An array of child in the constraint. Initializes a new instance of the class with the specified name, and arrays of parent and child objects. - , sets some of its properties, and adds it to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint3 Example/VB/source.vb" id="Snippet1"::: - + , sets some of its properties, and adds it to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.ForeignKeyConstraint3 Example/VB/source.vb" id="Snippet1"::: + ]]> One or both of the columns is . - The columns have different data types. - - -Or - - + The columns have different data types. + + -Or - + The tables don't belong to the same . @@ -441,10 +441,10 @@ This constructor is provided for design time support in the Visual Studio environment. objects created by using this constructor must then be added to the collection via . Tables and columns with the specified names must exist at the time the method is called, or if has been called prior to calling this constructor, the tables and columns with the specified names must exist at the time that is called. To be added. One or both of the columns is . - The columns have different data types. - - -Or - - + The columns have different data types. + + -Or - + The tables don't belong to the same . @@ -522,10 +522,10 @@ This constructor is provided for design time support in the Visual Studio environment. objects created by using this constructor must then be added to the collection via . Tables and columns with the specified names must exist at the time the method is called, or if has been called prior to calling this constructor, the tables and columns with the specified names must exist at the time that is called. To be added. One or both of the columns is . - The columns have different data types. - - -Or - - + The columns have different data types. + + -Or - + The tables don't belong to the same . @@ -578,18 +578,18 @@ Indicates the action that should take place across this constraint when is invoked. One of the values. Possible values include , and . The default is . - or are not final until the `AcceptChanges` method is invoked. At that point, the determines the course of action on any values that have been changed or deleted. - - - -## Examples - The following example creates a , sets its , and adds the constraint to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.DeleteRule Example/VB/source.vb" id="Snippet1"::: - + or are not final until the `AcceptChanges` method is invoked. At that point, the determines the course of action on any values that have been changed or deleted. + + + +## Examples + The following example creates a , sets its , and adds the constraint to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.DeleteRule Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -644,13 +644,13 @@ Gets the child columns of this constraint. An array of objects that are the child columns of the constraint. - objects through the property. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.Columns Example/VB/source.vb" id="Snippet1"::: - + objects through the property. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.Columns Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -708,22 +708,22 @@ Gets or sets the action that occurs across this constraint when a row is deleted. One of the values. The default is . - determines what will happen in the columns of the child table (or tables). If the rule is set to `Cascade`, child rows will be deleted. - - If set to `SetNull`, a `DBNull` will be placed in the appropriate columns of the affected rows. Depending on your data source, a null value may or may not be permitted in a column. For example, SQL Server allows multiple null values to be found in a primary key column, even if they are not unique. In a , however, if a object's property is set to `true`, multiple null values are not allowed in primary key columns. - - If set to `SetDefault`, the default value for the column is assigned. - - - -## Examples - The following example creates a ForeignKeyConstraint, sets various of its properties, and adds it to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.DeleteRule Example/VB/source.vb" id="Snippet1"::: - + determines what will happen in the columns of the child table (or tables). If the rule is set to `Cascade`, child rows will be deleted. + + If set to `SetNull`, a `DBNull` will be placed in the appropriate columns of the affected rows. Depending on your data source, a null value may or may not be permitted in a column. For example, SQL Server allows multiple null values to be found in a primary key column, even if they are not unique. In a , however, if a object's property is set to `true`, multiple null values are not allowed in primary key columns. + + If set to `SetDefault`, the default value for the column is assigned. + + + +## Examples + The following example creates a ForeignKeyConstraint, sets various of its properties, and adds it to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.DeleteRule Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -780,14 +780,14 @@ , if the objects are identical; otherwise, . - and checks it against other collection members with the method before adding it to a . - + and checks it against other collection members with the method before adding it to a . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.Equals Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.Equals Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.Equals Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -999,11 +999,11 @@ Gets the child table of this constraint. A that is the child table in the constraint. - @@ -1061,13 +1061,13 @@ Gets or sets the action that occurs across this constraint on when a row is updated. One of the values. The default is . - , sets various of its properties, and adds it to a object's . - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.DeleteRule Example/VB/source.vb" id="Snippet1"::: - + , sets various of its properties, and adds it to a object's . + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData ForeignKeyConstraint.DeleteRule Example/VB/source.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Data/IDataAdapter.xml b/xml/System.Data/IDataAdapter.xml index aee52742777..1e05526b89a 100644 --- a/xml/System.Data/IDataAdapter.xml +++ b/xml/System.Data/IDataAdapter.xml @@ -40,54 +40,54 @@ - Allows an object to implement a DataAdapter, and represents a set of methods and mapping action-related properties that are used to fill and update a and update a data source. - + Allows an object to implement a DataAdapter, and represents a set of methods and mapping action-related properties that are used to fill and update a and update a data source. + instances are for data sources that are (or resemble) relational databases with textual commands (like Transact-SQL), while instances could can use any type of data source. - interface allows an inheriting class to implement a DataAdapter class, which represents the bridge between a data source and a . For more information about DataAdapter classes, see [Populating a DataSet from a DataAdapter](/dotnet/framework/data/adonet/populating-a-dataset-from-a-dataadapter). - - An application does not create an instance of the interface directly, but implements an instance of a class that inherits . - - Classes that inherit must implement the inherited members, and they typically define additional members to add provider-specific functionality. For example, the interface defines a method that takes a as a parameter. In turn, the class inherits the method and also defines two additional overloads of the method that take an ADO Recordset object as a parameter. - - - -## Examples - The following example uses the derived classes, , , and , to select records from a database. The filled is then returned. To do this, the method is passed an initialized , a connection string, and a query string that is a Transact-SQL SELECT statement. - + interface allows an inheriting class to implement a DataAdapter class, which represents the bridge between a data source and a . For more information about DataAdapter classes, see [Populating a DataSet from a DataAdapter](/dotnet/framework/data/adonet/populating-a-dataset-from-a-dataadapter). + + An application does not create an instance of the interface directly, but implements an instance of a class that inherits . + + Classes that inherit must implement the inherited members, and they typically define additional members to add provider-specific functionality. For example, the interface defines a method that takes a as a parameter. In turn, the class inherits the method and also defines two additional overloads of the method that take an ADO Recordset object as a parameter. + + + +## Examples + The following example uses the derived classes, , , and , to select records from a database. The filled is then returned. To do this, the method is passed an initialized , a connection string, and a query string that is a Transact-SQL SELECT statement. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData SqlDataAdapter Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData SqlDataAdapter Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData SqlDataAdapter Example/VB/source.vb" id="Snippet1"::: + ]]> - To promote consistency among .NET Framework data providers, name the inheriting class in the form DataAdapter where is the uniform prefix given to all classes in a specific .NET Framework data provider namespace. For example, is the prefix of the class in the namespace. - - When you inherit from the interface, you should implement the following constructors: - - Item - - Description - - PrvDataAdapter() - - Initializes a new instance of the PrvDataAdapter class. - - PrvDataAdapter(PrvCommand selectCommand) - - Initializes a new instance of the PrvDataAdapter class by using the specified SQL SELECT statement. - - PrvDataAdapter(string selectCommandText, string selectConnectionString) - - Initializes a new instance of the PrvDataAdapter class by using an SQL SELECT statement and a connection string. - - PrvDataAdapter(string selectCommandText, PrvConnection selectConnection) - - Initializes a new instance of the PrvDataAdapter class by using an SQL SELECT statement and a PrvConnection object. - + To promote consistency among .NET Framework data providers, name the inheriting class in the form DataAdapter where is the uniform prefix given to all classes in a specific .NET Framework data provider namespace. For example, is the prefix of the class in the namespace. + + When you inherit from the interface, you should implement the following constructors: + + Item + + Description + + PrvDataAdapter() + + Initializes a new instance of the PrvDataAdapter class. + + PrvDataAdapter(PrvCommand selectCommand) + + Initializes a new instance of the PrvDataAdapter class by using the specified SQL SELECT statement. + + PrvDataAdapter(string selectCommandText, string selectConnectionString) + + Initializes a new instance of the PrvDataAdapter class by using an SQL SELECT statement and a connection string. + + PrvDataAdapter(string selectCommandText, PrvConnection selectConnection) + + Initializes a new instance of the PrvDataAdapter class by using an SQL SELECT statement and a PrvConnection object. + @@ -135,24 +135,24 @@ Adds or updates rows in the to match those in the data source using the name, and creates a named "Table". The number of rows successfully added to or refreshed in the . This does not include rows affected by statements that do not return rows. - retrieves rows from the data source using the SELECT statement specified by an associated property. The connection object associated with the SELECT statement must be valid, but it does not need to be open. If the connection is closed before is called, it is opened to retrieve data, then closed. If the connection is open before is called, it remains open. - - The operation then adds the rows to destination objects in the , creating the objects if they do not already exist. When creating objects, the operation usually creates only column name metadata. However, if the property is set to `AddWithKey`, appropriate primary keys and constraints are also created. - - If the `SelectCommand` returns the results of an OUTER JOIN, the `DataAdapter` does not set a value for the resulting . You must explicitly define the primary key to ensure that duplicate rows are resolved correctly. For more information, see [Defining Primary Keys](/dotnet/framework/data/adonet/dataset-datatable-dataview/defining-primary-keys). - - If the encounters duplicate columns while populating a , it generates names for the successive columns, using the pattern "columnname1", "columnname2", "columnname3", and so on. If the incoming data contains unnamed columns, they are put in the according to the pattern "Column1", "Column2", and so on. When multiple result sets are added to the , each result set is put in a separate table. Additional result sets are named by appending integral values to the specified table name (for example, "Table", "Table1", "Table2", and so on). Applications should use caution when using column and table names to ensure that conflicts with these naming patterns do not occur. - - When the SELECT statement that is used to populate the returns multiple results, such as a batch SQL statement, if one of the results contains an error, all successive results are skipped and not added to the . - - You can use the method multiple times on the same . If a primary key exists, incoming rows are merged with matching rows that already exist. If no primary key exists, incoming rows are appended to the . - + retrieves rows from the data source using the SELECT statement specified by an associated property. The connection object associated with the SELECT statement must be valid, but it does not need to be open. If the connection is closed before is called, it is opened to retrieve data, then closed. If the connection is open before is called, it remains open. + + The operation then adds the rows to destination objects in the , creating the objects if they do not already exist. When creating objects, the operation usually creates only column name metadata. However, if the property is set to `AddWithKey`, appropriate primary keys and constraints are also created. + + If the `SelectCommand` returns the results of an OUTER JOIN, the `DataAdapter` does not set a value for the resulting . You must explicitly define the primary key to ensure that duplicate rows are resolved correctly. For more information, see [Defining Primary Keys](/dotnet/framework/data/adonet/dataset-datatable-dataview/defining-primary-keys). + + If the encounters duplicate columns while populating a , it generates names for the successive columns, using the pattern "columnname1", "columnname2", "columnname3", and so on. If the incoming data contains unnamed columns, they are put in the according to the pattern "Column1", "Column2", and so on. When multiple result sets are added to the , each result set is put in a separate table. Additional result sets are named by appending integral values to the specified table name (for example, "Table", "Table1", "Table2", and so on). Applications should use caution when using column and table names to ensure that conflicts with these naming patterns do not occur. + + When the SELECT statement that is used to populate the returns multiple results, such as a batch SQL statement, if one of the results contains an error, all successive results are skipped and not added to the . + + You can use the method multiple times on the same . If a primary key exists, incoming rows are merged with matching rows that already exist. If no primary key exists, incoming rows are appended to the . + > [!NOTE] -> When handling batch SQL statements that return multiple results, the implementation of and for a .NET Framework data provider retrieves schema information for only the first result. - +> When handling batch SQL statements that return multiple results, the implementation of and for a .NET Framework data provider retrieves schema information for only the first result. + ]]> @@ -209,39 +209,39 @@ Adds a named "Table" to the specified and configures the schema to match that in the data source based on the specified . An array of objects that contain schema information returned from the data source. - method retrieves the schema from the data source using the . The connection object associated with the must be valid, but it does not need to be open. If the connection is closed before is called, it is opened to retrieve data, then closed. If the connection is open before is called, it remains open. - - A operation adds a to the destination . It then adds columns to the of the and configures the following properties if they exist at the data source: - -- - -- . You must set and separately. - -- - -- - -- - - also configures the and properties according to the following rules: - -- If one or more primary key columns are returned by the , they are used as the primary key columns for the . - -- If no primary key columns are returned but unique columns are, the unique columns are used as the primary key if all the unique columns are non-nullable. If any of the columns are nullable, a is added to the , but the property is not set. - -- If both primary key columns and unique columns are returned, the primary key columns are used as the primary key columns for the . - - Note that primary keys and unique constraints are added to the according to the previous rules, but other constraint types are not added. - - If a unique clustered index is defined on a column or columns in a SQL Server table and the primary key constraint is defined on a separate set of columns, then the names of the columns in the clustered index will be returned. To return the name or names of the primary key columns, use a query hint with the SELECT statement that specifies the name of the primary key index. For more information about how to specify query hints, see [Hints (Transact-SQL) - Query](/sql/t-sql/queries/hints-transact-sql-query). - - If the encounters duplicate columns while populating a , it generates names for the successive columns, using the pattern "columnname1", "columnname2", "columnname3", and so on. If the incoming data contains unnamed columns, they are put in the according to the pattern "Column1", "Column2", and so on. When multiple result sets are added to the , each result set is put in a separate table. Additional result sets are named by appending integral values to the specified table name (for example, "Table", "Table1", "Table2", and so on). Applications should use caution when using column and table names to ensure that conflicts with these naming patterns do not occur. - - returns no rows. Use the method to add rows to a . - + method retrieves the schema from the data source using the . The connection object associated with the must be valid, but it does not need to be open. If the connection is closed before is called, it is opened to retrieve data, then closed. If the connection is open before is called, it remains open. + + A operation adds a to the destination . It then adds columns to the of the and configures the following properties if they exist at the data source: + +- + +- . You must set and separately. + +- + +- + +- + + also configures the and properties according to the following rules: + +- If one or more primary key columns are returned by the , they are used as the primary key columns for the . + +- If no primary key columns are returned but unique columns are, the unique columns are used as the primary key if all the unique columns are non-nullable. If any of the columns are nullable, a is added to the , but the property is not set. + +- If both primary key columns and unique columns are returned, the primary key columns are used as the primary key columns for the . + + Note that primary keys and unique constraints are added to the according to the previous rules, but other constraint types are not added. + + If a unique clustered index is defined on a column or columns in a SQL Server table and the primary key constraint is defined on a separate set of columns, then the names of the columns in the clustered index will be returned. To return the name or names of the primary key columns, use a query hint with the SELECT statement that specifies the name of the primary key index. For more information about how to specify query hints, see [Hints (Transact-SQL) - Query](/sql/t-sql/queries/hints-transact-sql-query). + + If the encounters duplicate columns while populating a , it generates names for the successive columns, using the pattern "columnname1", "columnname2", "columnname3", and so on. If the incoming data contains unnamed columns, they are put in the according to the pattern "Column1", "Column2", and so on. When multiple result sets are added to the , each result set is put in a separate table. Additional result sets are named by appending integral values to the specified table name (for example, "Table", "Table1", "Table2", and so on). Applications should use caution when using column and table names to ensure that conflicts with these naming patterns do not occur. + + returns no rows. Use the method to add rows to a . + ]]> @@ -287,10 +287,10 @@ Gets the parameters set by the user when executing an SQL SELECT statement. An array of objects that contains the parameters set by the user. - @@ -357,11 +357,11 @@ private static void GetParameters(string connectionString) Indicates or specifies whether unmapped source tables or columns are passed with their source names in order to be filtered or to raise an error. One of the values. The default is . - property provides the primary mapping between the returned records and the . - + property provides the primary mapping between the returned records and the . + ]]> The value set is not one of the values. @@ -450,11 +450,11 @@ private static void GetParameters(string connectionString) Gets a collection that indicates how a source table is mapped to a dataset table. A collection that provides the primary mapping between the returned records and the . The default value is an empty collection. - uses only the mappings for the source table named "Table". All SELECT, INSERT, DELETE, and UPDATE statements returning data must do so using consistent column naming. The column names returned in the records must be unique, otherwise columns with duplicate names overwrite previous data. On , only the table mapped to the source table named "Table" will have its changes reconciled. - + uses only the mappings for the source table named "Table". All SELECT, INSERT, DELETE, and UPDATE statements returning data must do so using consistent column naming. The column names returned in the records must be unique, otherwise columns with duplicate names overwrite previous data. On , only the table mapped to the source table named "Table" will have its changes reconciled. + ]]> @@ -508,60 +508,60 @@ private static void GetParameters(string connectionString) Calls the respective INSERT, UPDATE, or DELETE statements for each inserted, updated, or deleted row in the specified from a named "Table". The number of rows successfully updated from the . - method, the examines the property, and executes the required INSERT, UPDATE, or DELETE statements iteratively for each row, based on the order of the indexes configured in the . For example, might execute a DELETE statement, followed by an INSERT statement, and then another DELETE statement, because of the ordering of the rows in the . - - Be aware that these statements are not performed as a batch process; each row is updated individually. An application can call the method if you must control the sequence of statement types (for example, INSERTs before UPDATEs). For more information, see [Updating Data Sources with DataAdapters](/dotnet/framework/data/adonet/updating-data-sources-with-dataadapters). - - If INSERT, UPDATE, or DELETE statements have not been specified, the method generates an exception. However, you can create a or object to automatically generate SQL statements for single-table updates if you set the `SelectCommand` property of a .NET Framework data provider. Then, any additional SQL statements that you do not set are generated by the CommandBuilder. This generation logic requires key column information to be present in the . For more information see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). - - The method retrieves rows from the table listed in the first mapping before performing an update. The then updates the row using the value of the property. Any additional rows returned are ignored. - - After any data is loaded back into the , the event is raised, allowing the user to inspect the reconciled row and any output parameters returned by the command. After a row updates successfully, the changes to that row are accepted. - - When using , the order of execution is as follows: - -1. The values in the are moved to the parameter values. - -2. The event is raised. - -3. The command executes. - -4. If the command is set to `FirstReturnedRecord`, then the first returned result is put in the . - -5. If there are output parameters, they are put in the . - -6. The event is raised. - -7. is called. - - Each command associated with the usually has a parameter collection associated with it. Parameters are mapped to the current row through the `SourceColumn` and `SourceVersion` properties of a .NET Framework data provider's `Parameter` class. `SourceColumn` refers to a column that the references to obtain parameter values for the current row. - - `SourceColumn` refers to the unmapped column name before any table mappings have been applied. If `SourceColumn` refers to a nonexistent column, the action taken depends on one of the following values. - -|Enumeration Value|Action Taken| -|-----------------------|------------------| -|`MissingMappingAction.Passthrough`|Use the source column names and table names in the if no mapping is present.| -|`MissingMappingAction.Ignore`|A is generated. When the mappings are explicitly set, a missing mapping for an input parameter is usually caused by an error.| -|`MissingMappingAction.Error`|A is generated.| - - The `SourceColumn` property is also used to map the value for output or input/output parameters back to the `DataSet`. An exception is generated if it refers to a nonexistent column. - - The `SourceVersion` property of a .NET Framework data provider's `Parameter` class determines whether to use the `Original`, `Current`, or `Proposed` version of the column value. This capability is frequently used to include original values in the WHERE clause of an UPDATE statement to check for optimistic concurrency violations. - + method, the examines the property, and executes the required INSERT, UPDATE, or DELETE statements iteratively for each row, based on the order of the indexes configured in the . For example, might execute a DELETE statement, followed by an INSERT statement, and then another DELETE statement, because of the ordering of the rows in the . + + Be aware that these statements are not performed as a batch process; each row is updated individually. An application can call the method if you must control the sequence of statement types (for example, INSERTs before UPDATEs). For more information, see [Updating Data Sources with DataAdapters](/dotnet/framework/data/adonet/updating-data-sources-with-dataadapters). + + If INSERT, UPDATE, or DELETE statements have not been specified, the method generates an exception. However, you can create a or object to automatically generate SQL statements for single-table updates if you set the `SelectCommand` property of a .NET Framework data provider. Then, any additional SQL statements that you do not set are generated by the CommandBuilder. This generation logic requires key column information to be present in the . For more information see [Generating Commands with CommandBuilders](/dotnet/framework/data/adonet/generating-commands-with-commandbuilders). + + The method retrieves rows from the table listed in the first mapping before performing an update. The then updates the row using the value of the property. Any additional rows returned are ignored. + + After any data is loaded back into the , the event is raised, allowing the user to inspect the reconciled row and any output parameters returned by the command. After a row updates successfully, the changes to that row are accepted. + + When using , the order of execution is as follows: + +1. The values in the are moved to the parameter values. + +2. The event is raised. + +3. The command executes. + +4. If the command is set to `FirstReturnedRecord`, then the first returned result is put in the . + +5. If there are output parameters, they are put in the . + +6. The event is raised. + +7. is called. + + Each command associated with the usually has a parameter collection associated with it. Parameters are mapped to the current row through the `SourceColumn` and `SourceVersion` properties of a .NET Framework data provider's `Parameter` class. `SourceColumn` refers to a column that the references to obtain parameter values for the current row. + + `SourceColumn` refers to the unmapped column name before any table mappings have been applied. If `SourceColumn` refers to a nonexistent column, the action taken depends on one of the following values. + +|Enumeration Value|Action Taken| +|-----------------------|------------------| +|`MissingMappingAction.Passthrough`|Use the source column names and table names in the if no mapping is present.| +|`MissingMappingAction.Ignore`|A is generated. When the mappings are explicitly set, a missing mapping for an input parameter is usually caused by an error.| +|`MissingMappingAction.Error`|A is generated.| + + The `SourceColumn` property is also used to map the value for output or input/output parameters back to the `DataSet`. An exception is generated if it refers to a nonexistent column. + + The `SourceVersion` property of a .NET Framework data provider's `Parameter` class determines whether to use the `Original`, `Current`, or `Proposed` version of the column value. This capability is frequently used to include original values in the WHERE clause of an UPDATE statement to check for optimistic concurrency violations. + > [!NOTE] -> If an error occurs while updating a row, an exception is thrown and execution of the update is discontinued. To continue the update operation without generating exceptions when an error is encountered, set the property to `true` before calling . You may also respond to errors on a per-row basis within the `RowUpdated` event of a DataAdapter. To continue the update operation without generating an exception within the `RowUpdated` event, set the property of the to . - - - -## Examples - The following example uses the derived class, , to the data source. This example assumes that you have created an and a . - +> If an error occurs while updating a row, an exception is thrown and execution of the update is discontinued. To continue the update operation without generating exceptions when an error is encountered, set the property to `true` before calling . You may also respond to errors on a per-row basis within the `RowUpdated` event of a DataAdapter. To continue the update operation without generating an exception within the `RowUpdated` event, set the property of the to . + + + +## Examples + The following example uses the derived class, , to the data source. This example assumes that you have created an and a . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData DataAdapter.IDataAdapter.Update Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataAdapter.IDataAdapter.Update Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData DataAdapter.IDataAdapter.Update Example/VB/source.vb" id="Snippet1"::: + ]]> An attempt to execute an INSERT, UPDATE, or DELETE statement resulted in zero records affected. diff --git a/xml/System.Data/IDbConnection.xml b/xml/System.Data/IDbConnection.xml index be8aeecb43a..d49c5930b38 100644 --- a/xml/System.Data/IDbConnection.xml +++ b/xml/System.Data/IDbConnection.xml @@ -47,42 +47,42 @@ Represents an open connection to a data source, and is implemented by .NET data providers that access relational databases. - interface enables an inheriting class to implement a Connection class, which represents a unique session with a data source (for example, a network connection to a server). For more information about Connection classes, see [Connecting to a Data Source](/dotnet/framework/data/adonet/connecting-to-a-data-source). - - An application does not create an instance of the interface directly, but creates an instance of a class that inherits . - - Classes that inherit must implement all inherited members, and typically define additional members to add provider-specific functionality. For example, the interface defines the property. In turn, the class inherits this property, and also defines the property. - - - -## Examples - The following example creates instances of the derived classes, and . The is opened and set as the for the . The example then calls , and closes the connection. To accomplish this, the is passed a connection string and a query string that is a Transact-SQL INSERT statement. - + interface enables an inheriting class to implement a Connection class, which represents a unique session with a data source (for example, a network connection to a server). For more information about Connection classes, see [Connecting to a Data Source](/dotnet/framework/data/adonet/connecting-to-a-data-source). + + An application does not create an instance of the interface directly, but creates an instance of a class that inherits . + + Classes that inherit must implement all inherited members, and typically define additional members to add provider-specific functionality. For example, the interface defines the property. In turn, the class inherits this property, and also defines the property. + + + +## Examples + The following example creates instances of the derived classes, and . The is opened and set as the for the . The example then calls , and closes the connection. To accomplish this, the is passed a connection string and a query string that is a Transact-SQL INSERT statement. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData SqlConnection Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData SqlConnection Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData SqlConnection Example/VB/source.vb" id="Snippet1"::: + ]]> - To promote consistency among .NET Framework data providers, name the inheriting class in the form where is the uniform prefix given to all classes in a specific .NET Framework data provider namespace. For example, is the prefix of the class in the namespace. - - When you inherit from the interface, you should implement the following constructors: - - Item - - Description - - PrvConnection() - - Initializes a new instance of the PrvConnection class. - - PrvConnection(string connectionString) - - Initializes a new instance of the PrvConnection class when given a string containing the connection string. - + To promote consistency among .NET Framework data providers, name the inheriting class in the form where is the uniform prefix given to all classes in a specific .NET Framework data provider namespace. For example, is the prefix of the class in the namespace. + + When you inherit from the interface, you should implement the following constructors: + + Item + + Description + + PrvConnection() + + Initializes a new instance of the PrvConnection class. + + PrvConnection(string connectionString) + + Initializes a new instance of the PrvConnection class when given a string containing the connection string. + @@ -138,11 +138,11 @@ Begins a database transaction. An object representing the new transaction. - or methods. - + or methods. + ]]> @@ -191,11 +191,11 @@ Begins a database transaction with the specified value. An object representing the new transaction. - or methods. - + or methods. + ]]> @@ -285,13 +285,13 @@ Closes the connection to the database. - method rolls back any pending transactions. It then releases the connection to the connection pool, or closes the connection if connection pooling is disabled. - - An application can call `Close` more than one time without generating an exception. - + method rolls back any pending transactions. It then releases the connection to the connection pool, or closes the connection if connection pooling is disabled. + + An application can call `Close` more than one time without generating an exception. + ]]> @@ -337,19 +337,19 @@ Gets or sets the string used to open a database. A string containing connection settings. - , sets its , and displays its . - + , sets its , and displays its . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData IDbConnection.ConnectionString Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData IDbConnection.ConnectionString Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData IDbConnection.ConnectionString Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -394,11 +394,11 @@ Gets the time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error. The time (in seconds) to wait for a connection to open. The default value is 15 seconds. - because it would cause the connection attempt to wait indefinitely. - + because it would cause the connection attempt to wait indefinitely. + ]]> @@ -486,11 +486,11 @@ Gets the name of the current database or the database to be used after a connection is opened. The name of the current database or the name of the database to be used once a connection is open. The default value is an empty string. - method or by passing an SQL statement using one of the Execute methods. (Initially the database is set by means of the connection string.) If you change the current database using an SQL statement or the `ChangeDatabase` method, an informational message is sent and then the property is updated. - + method or by passing an SQL statement using one of the Execute methods. (Initially the database is set by means of the connection string.) If you change the current database using an SQL statement or the `ChangeDatabase` method, an informational message is sent and then the property is updated. + ]]> @@ -580,23 +580,23 @@ Gets the current state of the connection. One of the values. - , sets its , and displays its . - + , sets its , and displays its . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/Classic WebData IDbConnection.ConnectionString Example/CS/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData IDbConnection.ConnectionString Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/Classic WebData IDbConnection.ConnectionString Example/VB/source.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Data/IsolationLevel.xml b/xml/System.Data/IsolationLevel.xml index 5010c715d8a..d973897cef3 100644 --- a/xml/System.Data/IsolationLevel.xml +++ b/xml/System.Data/IsolationLevel.xml @@ -51,112 +51,112 @@ Specifies the transaction locking behavior for the connection. - , if you do not set or you set it to `Unspecified`, the transaction executes according to the isolation level determined by the driver in use. - -## Examples - This application demonstrates how to use in . The sample will demonstrate which of the following behaviors are allowed in the different isolation levels: - -- Dirty reads. - -- Non-repeatable reads. - -- Phantoms. - - This application will execute in the following isolation levels: - -- ReadUncommitted - -- ReadCommitted - -- RepeatableRead - -- Serializable - -- Snapshot - - The PhantomReadThreads class demonstrates if the specific transaction allows the Phantom Read behavior. If the transaction allows the behavior, the threads will operate in the following order: - -- In first thread, select the products(All). - -- In the second thread, insert a new product. - -- Commit the transaction in second thread. - -- Select the products again. - -- Commit the transaction in first thread. - - If the transaction allows the behavior, the two Select operations will get the different results. - - The NonrepeatableReadThreads class demonstrates if the specific transaction allows the Nonrepeatable Read behavior. If the transaction allows the behavior, the threads will operate in the following order: - -- In first thread, select the product(ProductId=1). - -- In the second thread, update the Quantity value(ProductId=1). - -- Commit the transaction in second thread. - -- Select the product again. - -- Commit the transaction in first thread. - - If the transaction allows the behavior, the two Select operations will get the different results. - - The ExchangeValuesThreads class demonstrates the difference between the Serializable and Snapshot transaction. For the Serializable transaction, threads will operate in the following order: - -- In first thread, get the Price of product(ProductId=2) and store in the variable. - -- In first thread, update the Price of product(ProductId=1) with the price of product(ProductId=2). - -- Commit the transaction in first thread. - -- In second thread, get the Price of product(ProductId=1) and store in the variable. - -- In second thread, update the Price of product(ProductId=2) with the price of product(ProductId=1). - -- Commit the transaction in second thread. - - Now the values of the Price(ProductId=1 and ProductId=2) are as same as the original Price of Product(ProductId=2). - - For the Snapshot transaction, threads will operate in the following order: - -- In first thread, get the Price of product(ProductId=2) and store in the variable; - -- In first thread, update the Price of product(ProductId=1) with the price of product(ProductId=2). - -- In second thread, get the Price of product(ProductId=1) from the snapshot and store in the variable. - -- In second thread, update the Price of product(ProductId=2) with the price of product(ProductId=1). - -- Commit the transaction in second thread. - -- Commit the transaction in first thread. - - Now exchange the Price of products(ProductId=1 and ProductId=2). - - The DirtyReadThreads class demonstrates if the specific transaction allows the Dirty Read behavior. If the transaction allows the behavior, the threads will operate in the following order: - -- In first thread, begin a transaction and add the Quantity value(ProductId=1). - -- In the second thread, read the Quantity value and add the value again. - -- Commit the transaction in second thread. - -- Roll back the transaction in first thread. - +The `IsolationLevel` remains in effect until explicitly changed, but it can be changed at any time. The new value is used at execution time, not parse time. If changed during a transaction, the expected behavior of the server is to apply the new locking level to all statements remaining. + +When using , if you do not set or you set it to `Unspecified`, the transaction executes according to the isolation level determined by the driver in use. + +## Examples + This application demonstrates how to use in . The sample will demonstrate which of the following behaviors are allowed in the different isolation levels: + +- Dirty reads. + +- Non-repeatable reads. + +- Phantoms. + + This application will execute in the following isolation levels: + +- ReadUncommitted + +- ReadCommitted + +- RepeatableRead + +- Serializable + +- Snapshot + + The PhantomReadThreads class demonstrates if the specific transaction allows the Phantom Read behavior. If the transaction allows the behavior, the threads will operate in the following order: + +- In first thread, select the products(All). + +- In the second thread, insert a new product. + +- Commit the transaction in second thread. + +- Select the products again. + +- Commit the transaction in first thread. + + If the transaction allows the behavior, the two Select operations will get the different results. + + The NonrepeatableReadThreads class demonstrates if the specific transaction allows the Nonrepeatable Read behavior. If the transaction allows the behavior, the threads will operate in the following order: + +- In first thread, select the product(ProductId=1). + +- In the second thread, update the Quantity value(ProductId=1). + +- Commit the transaction in second thread. + +- Select the product again. + +- Commit the transaction in first thread. + + If the transaction allows the behavior, the two Select operations will get the different results. + + The ExchangeValuesThreads class demonstrates the difference between the Serializable and Snapshot transaction. For the Serializable transaction, threads will operate in the following order: + +- In first thread, get the Price of product(ProductId=2) and store in the variable. + +- In first thread, update the Price of product(ProductId=1) with the price of product(ProductId=2). + +- Commit the transaction in first thread. + +- In second thread, get the Price of product(ProductId=1) and store in the variable. + +- In second thread, update the Price of product(ProductId=2) with the price of product(ProductId=1). + +- Commit the transaction in second thread. + + Now the values of the Price(ProductId=1 and ProductId=2) are as same as the original Price of Product(ProductId=2). + + For the Snapshot transaction, threads will operate in the following order: + +- In first thread, get the Price of product(ProductId=2) and store in the variable; + +- In first thread, update the Price of product(ProductId=1) with the price of product(ProductId=2). + +- In second thread, get the Price of product(ProductId=1) from the snapshot and store in the variable. + +- In second thread, update the Price of product(ProductId=2) with the price of product(ProductId=1). + +- Commit the transaction in second thread. + +- Commit the transaction in first thread. + + Now exchange the Price of products(ProductId=1 and ProductId=2). + + The DirtyReadThreads class demonstrates if the specific transaction allows the Dirty Read behavior. If the transaction allows the behavior, the threads will operate in the following order: + +- In first thread, begin a transaction and add the Quantity value(ProductId=1). + +- In the second thread, read the Quantity value and add the value again. + +- Commit the transaction in second thread. + +- Roll back the transaction in first thread. + If the transaction allows the behavior, the Quantity value will be added twice. - + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_ADO.NET/system_data_isolationlevel/cs/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/system_data_isolationlevel/vb/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_ADO.NET/system_data_isolationlevel/vb/source.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Device.Location/GeoCoordinateWatcher.xml b/xml/System.Device.Location/GeoCoordinateWatcher.xml index e41e0348f74..80e30440828 100644 --- a/xml/System.Device.Location/GeoCoordinateWatcher.xml +++ b/xml/System.Device.Location/GeoCoordinateWatcher.xml @@ -50,11 +50,11 @@ **Note** In versions of Windows prior to Windows 7, the following conditions apply: -- All objects that have constructors can be created, but the property will always have the value . +- All objects that have constructors can be created, but the property will always have the value . -- The location indicated by the property of will always be . +- The location indicated by the property of will always be . -- No location events will be raised. +- No location events will be raised. @@ -86,11 +86,11 @@ ## Remarks **Note** In versions of Windows prior to Windows 7, the following conditions apply: -- All objects that have constructors can be created, but the property will always have the value . +- All objects that have constructors can be created, but the property will always have the value . -- The location indicated by the property of will always be . +- The location indicated by the property of will always be . -- No location events will be raised. +- No location events will be raised. ]]> @@ -124,11 +124,11 @@ **Note** In versions of Windows prior to Windows 7, the following conditions apply: -- All objects that have constructors can be created, but the property will always have the value . +- All objects that have constructors can be created, but the property will always have the value . -- The location indicated by the property of will always be . +- The location indicated by the property of will always be . -- No location events will be raised. +- No location events will be raised. ]]> @@ -161,11 +161,11 @@ ## Remarks **Note** In versions of Windows prior to Windows 7, the following conditions apply: -- All objects that have constructors can be created, but the property will always have the value . +- All objects that have constructors can be created, but the property will always have the value . -- The location indicated by the property of will always be . +- The location indicated by the property of will always be . -- No location events will be raised. +- No location events will be raised. ]]> @@ -353,11 +353,11 @@ **Note** In versions of Windows prior to Windows 7, the following conditions apply: -- All objects that have constructors can be created, but the property will always have the value . +- All objects that have constructors can be created, but the property will always have the value . -- The location indicated by the property of will always be . +- The location indicated by the property of will always be . -- No location events will be raised. +- No location events will be raised. The following diagram represents location coordinates that the location provider (for example, a GPS device) supplies to the computer. P1, in the diagram, represents the location data included in a event, and P2, P3, and P4 represent points within the movement threshold. So when the location provider supplies data indicating a location at those points (P1, P2, P3, and P4), no events are raised, and returns P1. The point P5 is outside of the distance, so at that point, is updated and a event is raised. diff --git a/xml/System.Diagnostics.Contracts/Contract.xml b/xml/System.Diagnostics.Contracts/Contract.xml index e813f960878..b098bd1ff8b 100644 --- a/xml/System.Diagnostics.Contracts/Contract.xml +++ b/xml/System.Diagnostics.Contracts/Contract.xml @@ -49,16 +49,16 @@ Contains static methods for representing program contracts such as preconditions, postconditions, and object invariants. - [!IMPORTANT] -> You must use a binary rewriter to insert run-time enforcement of contracts. Otherwise, contracts such as the method can only be tested statically and will not throw exceptions during run time if a contract is violated. You can download the binary rewriter CCRewrite from [Code Contracts](https://marketplace.visualstudio.com/items?itemName=RiSEResearchinSoftwareEngineering.CodeContractsforNET) on the Visual Studio Marketplace. CCRewrite comes with a Visual Studio add-in that enables you to activate run-time contract enforcement from the project **Properties** page. The binary rewriter and the Visual Studio add-in do not ship with Visual Studio 2010 or the Windows SDK. - +> You must use a binary rewriter to insert run-time enforcement of contracts. Otherwise, contracts such as the method can only be tested statically and will not throw exceptions during run time if a contract is violated. You can download the binary rewriter CCRewrite from [Code Contracts](https://marketplace.visualstudio.com/items?itemName=RiSEResearchinSoftwareEngineering.CodeContractsforNET) on the Visual Studio Marketplace. CCRewrite comes with a Visual Studio add-in that enables you to activate run-time contract enforcement from the project **Properties** page. The binary rewriter and the Visual Studio add-in do not ship with Visual Studio 2010 or the Windows SDK. + ]]> @@ -134,11 +134,11 @@ The conditional expression to test. Checks for a condition; if the condition is , follows the escalation policy set for the analyzer. - @@ -207,11 +207,11 @@ A message to display if the condition is not met. Checks for a condition; if the condition is , follows the escalation policy set by the analyzer and displays the specified message. - @@ -287,11 +287,11 @@ The conditional expression to assume . Instructs code analysis tools to assume that the specified condition is , even if it cannot be statically proven to always be . - method. - + method. + ]]> @@ -360,13 +360,13 @@ The message to post if the assumption fails. Instructs code analysis tools to assume that a condition is , even if it cannot be statically proven to always be , and displays a message if the assumption fails. - method. - + method. + ]]> @@ -422,13 +422,13 @@ Occurs when a contract fails. - object that is passed to the event handler. This event notifies a managed application environment such as an interactive interpreter or a Web browser host that a contract has failed. Before doing so, it will raise an event that an application can handle as it sees fit. For example, if code is being run in a testing framework, you can log a test failure and then end the test. - - The default implementation of the method in the .NET Framework class library is to call each handler that is registered with the event. Exceptions thrown by handlers are ignored, but each handler can indicate whether the failure is handled by calling the method for the event arguments. If any handler sets the failure as handled, the method returns `null` and no further action is taken. Alternatively, handlers can call the method to instruct the code to unwind. In that case, an exception is thrown after all handlers have executed. - + object that is passed to the event handler. This event notifies a managed application environment such as an interactive interpreter or a Web browser host that a contract has failed. Before doing so, it will raise an event that an application can handle as it sees fit. For example, if code is being run in a testing framework, you can log a test failure and then end the test. + + The default implementation of the method in the .NET Framework class library is to call each handler that is registered with the event. Exceptions thrown by handlers are ignored, but each handler can indicate whether the failure is handled by calling the method for the event arguments. If any handler sets the failure as handled, the method returns `null` and no further action is taken. Alternatively, handlers can call the method to instruct the code to unwind. In that case, an exception is thrown after all handlers have executed. + ]]> @@ -480,13 +480,13 @@ Marks the end of the contract section when a method's contracts contain only preconditions in the -- form. - method call, such as a , , , or . - - When `if`-`then`-`throw` statements appear in this form, the contract tools recognize them as legacy-require statements. The form is used only if no other contracts follow the `if`-`then`-`throw` sequences, but they should still be tagged as legacy-requires. - + method call, such as a , , , or . + + When `if`-`then`-`throw` statements appear in this form, the contract tools recognize them as legacy-require statements. The form is used only if no other contracts follow the `if`-`then`-`throw` sequences, but they should still be tagged as legacy-requires. + ]]> @@ -551,23 +551,23 @@ The conditional expression to test. The expression may include , , and values. Specifies a postcondition contract for the enclosing method or property. - method to ensure that an expected value is returned. This code example is part of a larger example provided for the class. - + method to ensure that an expected value is returned. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics.Contracts/Contract/Ensures/program.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contractexample/vb/program.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contractexample/vb/program.vb" id="Snippet3"::: + ]]> @@ -625,19 +625,19 @@ The message to display if the expression is not . Specifies a postcondition contract for a provided exit condition and a message to display if the condition is . - @@ -710,17 +710,17 @@ The conditional expression to test. Specifies a postcondition contract for the enclosing method or property, based on the provided exception and condition. - @@ -793,19 +793,19 @@ The message to display if the expression is . Specifies a postcondition contract and a message to display if the condition is for the enclosing method or property, based on the provided exception and condition. - @@ -862,11 +862,11 @@ if returns for any integer starting from to - 1. - @@ -995,19 +995,19 @@ if returns for all integers starting from to - 1. - method to determine whether an array has a null element. - + method to determine whether an array has a null element. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics.Contracts/Contract/ForAll/program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contract.forallexample/vb/program.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contract.forallexample/vb/program.vb" id="Snippet1"::: + ]]> @@ -1079,14 +1079,14 @@ if and only if returns for all elements of type in . - method to determine whether a collection has a null element. - + method to determine whether a collection has a null element. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics.Contracts/Contract/ForAll/program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contract.forallexample/vb/program.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contract.forallexample/vb/program.vb" id="Snippet1"::: + ]]> @@ -1155,19 +1155,19 @@ The conditional expression to test. Specifies an invariant contract for the enclosing method or property. - contracts are contained within a method that is identified by the attribute; typically, the method is named `ObjectInvariant`. - -- This contract can be specified only in a dedicated invariant method that is declared on a class. If the method is not sealed, it should refer only to protected members, not private members, so that subclasses can be sure to maintain the invariants. - -- This contract is not exposed to clients; therefore, it may reference members that are less visible than the enclosing method. - -- You must use the binary rewriter for run-time enforcement of this invariant. - -- Invariants are conditionally defined based on the presence of the `CONTRACTS FULL` symbol. During run-time checking, invariants are checked at the end of each public method. If an invariant mentions a public method in the same class, the invariant check that would normally happen at the end of that public method is disabled and checked only at the end of the outermost method call to that class. This also happens if the class is re-entered because of a call to a method on another class. - + contracts are contained within a method that is identified by the attribute; typically, the method is named `ObjectInvariant`. + +- This contract can be specified only in a dedicated invariant method that is declared on a class. If the method is not sealed, it should refer only to protected members, not private members, so that subclasses can be sure to maintain the invariants. + +- This contract is not exposed to clients; therefore, it may reference members that are less visible than the enclosing method. + +- You must use the binary rewriter for run-time enforcement of this invariant. + +- Invariants are conditionally defined based on the presence of the `CONTRACTS FULL` symbol. During run-time checking, invariants are checked at the end of each public method. If an invariant mentions a public method in the same class, the invariant check that would normally happen at the end of that public method is disabled and checked only at the end of the outermost method call to that class. This also happens if the class is re-entered because of a call to a method on another class. + ]]> @@ -1225,19 +1225,19 @@ The message to display if the condition is . Specifies an invariant contract for the enclosing method or property, and displays a message if the condition for the contract fails. - contracts are contained within a method that is identified by the attribute; typically, the method is named `ObjectInvariant`. - -- This contract can be specified only in a dedicated invariant method that is declared on a class. - -- This contract is not exposed to clients; therefore, it may reference members that are less visible than the enclosing method. - -- You must use the binary rewriter for run-time enforcement of this invariant. - -- Invariants are conditionally defined on the `CONTRACTS FULL` symbol. During run-time checking, invariants are checked at the end of each public method. If an invariant mentions a public method in the same class, the invariant check that would normally happen at the end of that public method is disabled and checked only at the end of the outermost method call to that class. This also happens if the class is re-entered because of a call to a method on another class. - + contracts are contained within a method that is identified by the attribute; typically, the method is named `ObjectInvariant`. + +- This contract can be specified only in a dedicated invariant method that is declared on a class. + +- This contract is not exposed to clients; therefore, it may reference members that are less visible than the enclosing method. + +- You must use the binary rewriter for run-time enforcement of this invariant. + +- Invariants are conditionally defined on the `CONTRACTS FULL` symbol. During run-time checking, invariants are checked at the end of each public method. If an invariant mentions a public method in the same class, the invariant check that would normally happen at the end of that public method is disabled and checked only at the end of the outermost method call to that class. This also happens if the class is re-entered because of a call to a method on another class. + ]]> @@ -1300,19 +1300,19 @@ Represents values as they were at the start of a method or property. The value of the parameter or field at the start of a method or property. - contract. - - - -## Examples - The following example shows the use of the method to ensure that a count has been updated. This code example is part of a larger example provided for the class. - + contract. + + + +## Examples + The following example shows the use of the method to ensure that a count has been updated. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics.Contracts/Contract/Ensures/program.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contractexample/vb/program.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contractexample/vb/program.vb" id="Snippet5"::: + ]]> @@ -1377,16 +1377,16 @@ The conditional expression to test. Specifies a precondition contract for the enclosing method or property. - method when backward compatibility does not force you to throw a particular exception. - + method when backward compatibility does not force you to throw a particular exception. + ]]> @@ -1444,16 +1444,16 @@ The message to display if the condition is . Specifies a precondition contract for the enclosing method or property, and displays a message if the condition for the contract fails. - method when backward compatibility does not force you to throw a particular exception. - + method when backward compatibility does not force you to throw a particular exception. + ]]> @@ -1512,19 +1512,19 @@ The conditional expression to test. Specifies a precondition contract for the enclosing method or property, and throws an exception if the condition for the contract fails. - [!IMPORTANT] -> You must turn on run-time checking to use the method. If run-time checking is turned off, the process will be terminated. To obtain the tools for runtime checking, see [Code Contracts](https://marketplace.visualstudio.com/items?itemName=RiSEResearchinSoftwareEngineering.CodeContractsforNET) on the Visual Studio Marketplace. - -- This method call must be at the beginning of a method or property, before any other code. - -- This contract is exposed to clients; therefore, it must only reference members that are at least as visible as the enclosing method. - -- Use this method instead of the method when you want to throw an exception if the precondition fails. - +> You must turn on run-time checking to use the method. If run-time checking is turned off, the process will be terminated. To obtain the tools for runtime checking, see [Code Contracts](https://marketplace.visualstudio.com/items?itemName=RiSEResearchinSoftwareEngineering.CodeContractsforNET) on the Visual Studio Marketplace. + +- This method call must be at the beginning of a method or property, before any other code. + +- This contract is exposed to clients; therefore, it must only reference members that are at least as visible as the enclosing method. + +- Use this method instead of the method when you want to throw an exception if the precondition fails. + ]]> @@ -1593,19 +1593,19 @@ The message to display if the condition is . Specifies a precondition contract for the enclosing method or property, and throws an exception with the provided message if the condition for the contract fails. - [!IMPORTANT] - > You must turn on run-time checking to use the method. If run-time checking is turned off, the process will be terminated. To obtain the tools for runtime checking, see [Code Contracts](https://marketplace.visualstudio.com/items?itemName=RiSEResearchinSoftwareEngineering.CodeContractsforNET) on the Visual Studio Marketplace. - - This method call must be at the beginning of a method or property, before any other code. - -- This contract is exposed to clients; therefore, it must only reference members that are at least as visible as the enclosing method. - -- Use this method instead of the method when you want to throw an exception if the precondition fails. - + > You must turn on run-time checking to use the method. If run-time checking is turned off, the process will be terminated. To obtain the tools for runtime checking, see [Code Contracts](https://marketplace.visualstudio.com/items?itemName=RiSEResearchinSoftwareEngineering.CodeContractsforNET) on the Visual Studio Marketplace. + + This method call must be at the beginning of a method or property, before any other code. + +- This contract is exposed to clients; therefore, it must only reference members that are at least as visible as the enclosing method. + +- Use this method instead of the method when you want to throw an exception if the precondition fails. + ]]> @@ -1665,19 +1665,19 @@ Represents the return value of a method or property. Return value of the enclosing method or property. - contract. - - - -## Examples - The following example shows how to use the method to specify an expected return value. This code example is part of a larger example provided for the class. - + contract. + + + +## Examples + The following example shows how to use the method to specify an expected return value. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics.Contracts/Contract/Ensures/program.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contractexample/vb/program.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/contractexample/vb/program.vb" id="Snippet3"::: + ]]> @@ -1740,11 +1740,11 @@ Represents the final (output) value of an parameter when returning from a method. The output value of the parameter. - contract. As with the method, you can omit the generic type parameter whenever the compiler is able to infer its type. The contract rewriter replaces the method call with the value of the `out` parameter. The method may appear only in postconditions. The argument to the method must be an `out` parameter or a field of a structure `out` parameter. The latter is also useful when referring to fields in the postcondition of a structure constructor. - + contract. As with the method, you can omit the generic type parameter whenever the compiler is able to infer its type. The contract rewriter replaces the method call with the value of the `out` parameter. The method may appear only in postconditions. The argument to the method must be an `out` parameter or a field of a structure `out` parameter. The latter is also useful when referring to fields in the postcondition of a structure constructor. + ]]> diff --git a/xml/System.Diagnostics.Contracts/ContractVerificationAttribute.xml b/xml/System.Diagnostics.Contracts/ContractVerificationAttribute.xml index 6e8cec03dc4..39c38b7fbcd 100644 --- a/xml/System.Diagnostics.Contracts/ContractVerificationAttribute.xml +++ b/xml/System.Diagnostics.Contracts/ContractVerificationAttribute.xml @@ -53,17 +53,17 @@ Instructs analysis tools to assume the correctness of an assembly, type, or member without performing static verification. - diff --git a/xml/System.Diagnostics.Eventing/EventProvider.xml b/xml/System.Diagnostics.Eventing/EventProvider.xml index 7dc4aa6e5c7..4d6884245a6 100644 --- a/xml/System.Diagnostics.Eventing/EventProvider.xml +++ b/xml/System.Diagnostics.Eventing/EventProvider.xml @@ -21,47 +21,47 @@ Use this class to write events. - and methods, the events must be defined in a manifest; events written using the method do not require a manifest. - - Events can contain the following managed data types: - -- bool - -- Boolean - -- byte - -- char - -- decimal - -- double - -- float - -- Guid - -- int - -- IntPtr - -- long - -- sbyte - -- short - -- string - -- uint - -- UInt64 - - If an event in your manifest uses the `Boolean` in-type, you cannot write the data element using a `Boolean` data type in your managed code. The `Boolean` in-type in your manifest expects a 4-byte value, and a `Boolean` data type in managed code is 1-byte. Instead, you must use an `int` data type to write the value. If you want to log a `Boolean` value, use the UInt8 in-type in your manifest. - + and methods, the events must be defined in a manifest; events written using the method do not require a manifest. + + Events can contain the following managed data types: + +- bool + +- Boolean + +- byte + +- char + +- decimal + +- double + +- float + +- Guid + +- int + +- IntPtr + +- long + +- sbyte + +- short + +- string + +- uint + +- UInt64 + + If an event in your manifest uses the `Boolean` in-type, you cannot write the data element using a `Boolean` data type in your managed code. The `Boolean` in-type in your manifest expects a 4-byte value, and a `Boolean` data type in managed code is 1-byte. Instead, you must use an `int` data type to write the value. If you want to log a `Boolean` value, use the UInt8 in-type in your manifest. + ]]> @@ -96,11 +96,11 @@ Guid that uniquely identifies the provider. Initializes a new instance of the class. - method. - + method. + ]]> There is not enough memory to complete the operation. @@ -135,11 +135,11 @@ Removes the provider's registration from the ETW subsystem and releases all unmanaged resources. - An error returned by the ETW subsystem. @@ -172,11 +172,11 @@ Creates a unique activity identifier for the provider. A unique Guid that you use when calling the method to set the activity identifier for the provider. - @@ -288,13 +288,13 @@ Gets the last error associated with an event write failure. Use the value to determine the cause of an event write failure. - , , and methods set this value if they fail to write the event. - - This is a static method. - + , , and methods set this value if they fail to write the event. + + This is a static method. + ]]> @@ -329,11 +329,11 @@ Determines whether any session enabled the provider, regardless of the level and keyword values used to enable the provider. Is if the provider is enabled to any session; otherwise, . - @@ -364,11 +364,11 @@ Determines whether any session is requesting the specified event from the provider. Is if any session is requesting the specified event; otherwise, . - @@ -402,15 +402,15 @@ A unique activity identifier that the method returns. Sets the current activity identifier used by the methods. - property value to the same identifier value. However, in version 4.0 of the framework, the method automatically sets the correlation activity identifier for you. - - This is a static method. - + property value to the same identifier value. However, in version 4.0 of the framework, the method automatically sets the correlation activity identifier for you. + + This is a static method. + ]]> @@ -423,11 +423,11 @@ Writes an event. - @@ -467,62 +467,62 @@ An instance of that identifies the event to write. - An array of objects that contain the event data to write. The object must be in the order specified in the manifest. The array is limited to 32 objects, of which only eight may be strings. The maximum data size for the event is limited to 64 KB minus the size of the event headers. The event size is less if the session's buffer size is less and the session includes extended data items with the event. - + An array of objects that contain the event data to write. The object must be in the order specified in the manifest. The array is limited to 32 objects, of which only eight may be strings. The maximum data size for the event is limited to 64 KB minus the size of the event headers. The event size is less if the session's buffer size is less and the session includes extended data items with the event. + This parameter can be null. Writes an event. The event data is specified as an array of objects. Is if the event is written; otherwise, . If false, call the method to determine the cause of the failure. - method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event. - - If the object type is not supported, the method writes the value of the object's method in the payload. For a list of supported object types, see the Remarks for the class. - - - -## Examples - -```csharp -private static Guid providerId = new Guid("{FB33FDA8-45FB-4df0-8A55-EEB4BA88E7E7}"); - -enum Keyword -{ - Read = 0x1, - Write = 0x2, - Local = 0x4, - Remote = 0x8 -} - -enum Level -{ - Critical = 1, - Error, - Warning, - Information, - Verbose -} - - EventProvider provider = new EventProvider(providerId); - EventDescriptor readEvent; - string path = @""; - UInt64 bytesRead = ; - - if (provider.IsEnabled(Level.Information, (long)Keyword.Read)) - { - unchecked - { - readEvent = new EventDescriptor(0x1, 0x0, 0x10, 0x4, 0x0, 0x0, (long)0x8000000000000005); - } - - if (!provider.WriteEvent(ref readEvent, new object[] { path, bytesRead })) - Console.WriteLine(EventProvider.GetLastWriteEventError()); - } - - provider.Close(); -``` - + method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event. + + If the object type is not supported, the method writes the value of the object's method in the payload. For a list of supported object types, see the Remarks for the class. + + + +## Examples + +```csharp +private static Guid providerId = new Guid("{FB33FDA8-45FB-4df0-8A55-EEB4BA88E7E7}"); + +enum Keyword +{ + Read = 0x1, + Write = 0x2, + Local = 0x4, + Remote = 0x8 +} + +enum Level +{ + Critical = 1, + Error, + Warning, + Information, + Verbose +} + + EventProvider provider = new EventProvider(providerId); + EventDescriptor readEvent; + string path = @""; + UInt64 bytesRead = ; + + if (provider.IsEnabled(Level.Information, (long)Keyword.Read)) + { + unchecked + { + readEvent = new EventDescriptor(0x1, 0x0, 0x10, 0x4, 0x0, 0x0, (long)0x8000000000000005); + } + + if (!provider.WriteEvent(ref readEvent, new object[] { path, bytesRead })) + Console.WriteLine(EventProvider.GetLastWriteEventError()); + } + + provider.Close(); +``` + ]]> The parameter contains too many objects or strings. @@ -560,37 +560,37 @@ enum Level Writes an event. The event data is specified as a string. Is if the event is written; otherwise, . If false, call the method to determine the cause of the failure. - method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event. - - The maximum string length is limited to 64 KB minus the size of the event headers. The event size is less if the session's buffer size is less and the session includes extended data items with the event. - - - -## Examples - -```csharp -private static Guid providerId = new Guid("{FB33FDA8-45FB-4df0-8A55-EEB4BA88E7E7}"); - -EventProvider provider = new EventProvider(providerId); -EventDescriptor writeEvent; - -if (provider.IsEnabled()) -{ - unchecked - { - writeEvent = new EventDescriptor(0x2, 0x0, 0x10, 0x3, 0x0, 0x0, (long)0x8000000000000006); - } - - if (!provider.WriteEvent(ref writeEvent, "Write event.")) - Console.WriteLine(EventProvider.GetLastWriteEventError()); -} - -provider.Close(); -``` - + method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event. + + The maximum string length is limited to 64 KB minus the size of the event headers. The event size is less if the session's buffer size is less and the session includes extended data items with the event. + + + +## Examples + +```csharp +private static Guid providerId = new Guid("{FB33FDA8-45FB-4df0-8A55-EEB4BA88E7E7}"); + +EventProvider provider = new EventProvider(providerId); +EventDescriptor writeEvent; + +if (provider.IsEnabled()) +{ + unchecked + { + writeEvent = new EventDescriptor(0x2, 0x0, 0x10, 0x3, 0x0, 0x0, (long)0x8000000000000006); + } + + if (!provider.WriteEvent(ref writeEvent, "Write event.")) + Console.WriteLine(EventProvider.GetLastWriteEventError()); +} + +provider.Close(); +``` + ]]> If is . @@ -630,11 +630,11 @@ provider.Close(); Writes an event. The event data is specified as a block of memory. Is if the event is written; otherwise, . If false, call the method to determine the cause of the failure. - method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event. - + method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event. + ]]> @@ -647,11 +647,11 @@ provider.Close(); Writes an event that contains a string as its data. - @@ -680,20 +680,20 @@ provider.Close(); Writes an event that contains a string as its data. Is if the event is written; otherwise, . If false, call the method to determine the cause of the failure. - If is . @@ -733,27 +733,27 @@ if (!provider.WriteMessageEvent("Event string.")) Writes an event that contains a string as its data if the level and keyword value match the events requested by the session. Is if the event is written; otherwise, . If false, call the method to determine the cause of the failure. - If is . @@ -809,13 +809,13 @@ if (!provider.WriteMessageEvent("Event string.", 3, 2)) Links events together when tracing events in an end-to-end scenario. The event data is specified as an array of objects. Is if the event is written; otherwise, . If false, call the method to determine the cause of the failure. - method. - - If you use the class, you do not use the method to specify the activity ID. Instead, access the property to get the object. Then, set the property to the activity ID. You must also set the `relatedActivityId` to a value. - + method. + + If you use the class, you do not use the method to specify the activity ID. Instead, access the property to get the object. Then, set the property to the activity ID. You must also set the `relatedActivityId` to a value. + ]]> If contains too many objects or strings. @@ -857,11 +857,11 @@ if (!provider.WriteMessageEvent("Event string.", 3, 2)) Links events together when tracing events in an end-to-end scenario. The event data is specified as a block of memory. Is if the event is written; otherwise, . If false, call the method to determine the cause of the failure. - method. - + method. + ]]> diff --git a/xml/System.Diagnostics.Eventing/EventProviderTraceListener.xml b/xml/System.Diagnostics.Eventing/EventProviderTraceListener.xml index 7ede9f7b901..192909e5c47 100644 --- a/xml/System.Diagnostics.Eventing/EventProviderTraceListener.xml +++ b/xml/System.Diagnostics.Eventing/EventProviderTraceListener.xml @@ -17,62 +17,62 @@ A listener for that writes events to the ETW subsystem. - property. - - Adding the listener to registers the provider with the ETW subsystem. You must create an ETW trace session using the Logman.exe executable program (or something similar) to write the events to a log file. - - You do not need a manifest to consume events from the listener because the event data is a single string. - - When you call the methods to write events, you pass a enumeration value. The enumeration contains both level and keyword values. When you enable a trace listener provider from an ETW session, the level value that you specify can be the value associated with one of the following enumeration values: - -- Critical (value is 1) - -- Error (value is 2) - -- Information (value is 8) - -- Verbose (value is 16) - -- Warning (value is 4) - - The keyword value that you specify for the session can be the value associated with one of the following enumeration values: - -- Resume (value is 2,048) - -- Start (value is 256) - -- Stop (value is 512) - -- Suspend (value is 1,024) - -- Transfer (value is 4,096) - - - -## Examples - -```csharp -private static Guid providerId = new Guid("{B3F0C8FC-E8A8-4868-8901-1465E8A2F41B}"); - - EventProviderTraceListener listener = new EventProviderTraceListener(providerId.ToString(), "Test Listener", "::"); - - // You should use the All default level and control the level using the - // ETW session; otherwise, you may not log all the events requested by the - // session. - TraceSource source = new TraceSource("MyProvider", SourceLevels.All); - - source.Listeners.Add(listener); - - source.TraceData(TraceEventType.Warning | TraceEventType.Start, 2, new object[] { "abc", "def", true, 123 }); - - source.TraceEvent(TraceEventType.Warning, 12, "Provider guid: {0}", new object[] { providerId }); - - source.TraceInformation("string {0}, bool {1}, int {2}, ushort {3}", new object[] { "abc", false, 123, (UInt32)5 }); -``` - + property. + + Adding the listener to registers the provider with the ETW subsystem. You must create an ETW trace session using the Logman.exe executable program (or something similar) to write the events to a log file. + + You do not need a manifest to consume events from the listener because the event data is a single string. + + When you call the methods to write events, you pass a enumeration value. The enumeration contains both level and keyword values. When you enable a trace listener provider from an ETW session, the level value that you specify can be the value associated with one of the following enumeration values: + +- Critical (value is 1) + +- Error (value is 2) + +- Information (value is 8) + +- Verbose (value is 16) + +- Warning (value is 4) + + The keyword value that you specify for the session can be the value associated with one of the following enumeration values: + +- Resume (value is 2,048) + +- Start (value is 256) + +- Stop (value is 512) + +- Suspend (value is 1,024) + +- Transfer (value is 4,096) + + + +## Examples + +```csharp +private static Guid providerId = new Guid("{B3F0C8FC-E8A8-4868-8901-1465E8A2F41B}"); + + EventProviderTraceListener listener = new EventProviderTraceListener(providerId.ToString(), "Test Listener", "::"); + + // You should use the All default level and control the level using the + // ETW session; otherwise, you may not log all the events requested by the + // session. + TraceSource source = new TraceSource("MyProvider", SourceLevels.All); + + source.Listeners.Add(listener); + + source.TraceData(TraceEventType.Warning | TraceEventType.Start, 2, new object[] { "abc", "def", true, 123 }); + + source.TraceEvent(TraceEventType.Warning, 12, "Provider guid: {0}", new object[] { providerId }); + + source.TraceInformation("string {0}, bool {1}, int {2}, ushort {3}", new object[] { "abc", false, 123, (UInt32)5 }); +``` + ]]> @@ -201,19 +201,19 @@ private static Guid providerId = new Guid("{B3F0C8FC-E8A8-4868-8901-1465E8A2F41B Gets or sets the delimiter used to delimit the event data that is written to the ETW subsystem. The delimiter used to delimit the event data. The default delimiter is a comma. - method. - + method. + ]]> diff --git a/xml/System.Diagnostics.Tracing/EventSourceAttribute.xml b/xml/System.Diagnostics.Tracing/EventSourceAttribute.xml index a8b0dc09754..3c92b464d91 100644 --- a/xml/System.Diagnostics.Tracing/EventSourceAttribute.xml +++ b/xml/System.Diagnostics.Tracing/EventSourceAttribute.xml @@ -60,13 +60,13 @@ Allows the event tracing for Windows (ETW) name to be defined independently of the name of the event source class. - attribute lets you define the ETW name independently of the name of the class. - - The attribute also lets you define a GUID explicitly for the event source. In standard usage, you don't need to specify a GUID when defining an event source or referring to it, because a GUID is implicitly derived from the name of the event source class. Explicitly defining a GUID is discouraged, except when upgrading existing ETW providers to using event sources. - + attribute lets you define the ETW name independently of the name of the class. + + The attribute also lets you define a GUID explicitly for the event source. In standard usage, you don't need to specify a GUID when defining an event source or referring to it, because a GUID is implicitly derived from the name of the event source class. Explicitly defining a GUID is discouraged, except when upgrading existing ETW providers to using event sources. + ]]> @@ -152,11 +152,11 @@ Gets or sets the event source identifier. The event source identifier. - @@ -203,21 +203,21 @@ Gets or sets the name of the localization resource file. The name of the localization resource file, or if the localization resource file does not exist. - constructor that will read the resources. This name is the value of the property. If the property is not `null`, the object looks up the localized strings for events by using the following resource naming scheme, where the terms in uppercase represent the name of the event, task, keyword, or map value that should be localized: - -- event_EVENTNAME - -- task_TASKNAME - -- keyword_KEYWORDNAME - -- map_MAPNAME - - Note that the localized string for an event corresponds to the message string and can have {0} values, which represent the payload values. - + constructor that will read the resources. This name is the value of the property. If the property is not `null`, the object looks up the localized strings for events by using the following resource naming scheme, where the terms in uppercase represent the name of the event, task, keyword, or map value that should be localized: + +- event_EVENTNAME + +- task_TASKNAME + +- keyword_KEYWORDNAME + +- map_MAPNAME + + Note that the localized string for an event corresponds to the message string and can have {0} values, which represent the payload values. + ]]> diff --git a/xml/System.Diagnostics/Activity.xml b/xml/System.Diagnostics/Activity.xml index e2861481442..b7ae6588d6a 100644 --- a/xml/System.Diagnostics/Activity.xml +++ b/xml/System.Diagnostics/Activity.xml @@ -1875,10 +1875,10 @@ All activities created from public constructors will have a singleton source whe Calling the `Start` method does the following: -- Sets to hold . -- Sets to this . -- If was not set previously, sets it to . -- Generates a unique for this activity. +- Sets to hold . +- Sets to this . +- If was not set previously, sets it to . +- Generates a unique for this activity. Use to start the and write the start event. diff --git a/xml/System.Diagnostics/BooleanSwitch.xml b/xml/System.Diagnostics/BooleanSwitch.xml index 96ec953a8fa..1aba439c28c 100644 --- a/xml/System.Diagnostics/BooleanSwitch.xml +++ b/xml/System.Diagnostics/BooleanSwitch.xml @@ -75,7 +75,7 @@ For .NET Framework apps only, you can also enable or disable a with the property set to `mySwitch` and the value set to `true`. Within your .NET Framework application, you can use the configured switch value by creating a with the same name, as shown in the following code example. - + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/BooleanSwitch/Overview/remarks.cs" id="Snippet2"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_Classic/classic BooleanSwitch.BooleanSwitch Example/VB/remarks.vb" id="Snippet2"::: @@ -85,9 +85,9 @@ For .NET Framework apps, the You must enable tracing or debugging to use a switch. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. -- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. +- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. -- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. +- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. > [!NOTE] > These debug and trace compiler switches are not required when using the class in isolation. They are only required in conjunction with or methods that are conditionally compiled. diff --git a/xml/System.Diagnostics/ConditionalAttribute.xml b/xml/System.Diagnostics/ConditionalAttribute.xml index cdbd236602b..4115577e1d3 100644 --- a/xml/System.Diagnostics/ConditionalAttribute.xml +++ b/xml/System.Diagnostics/ConditionalAttribute.xml @@ -82,11 +82,11 @@ You can use the following techniques to define conditional compilation symbols: -- Use compiler command-line options; for example, **/define:DEBUG**. +- Use compiler command-line options; for example, **/define:DEBUG**. -- Use environment variables in the operating system shell; for example, **set DEBUG=1**. +- Use environment variables in the operating system shell; for example, **set DEBUG=1**. -- Use pragmas in the source code; for example, define the compilation variable as follows: +- Use pragmas in the source code; for example, define the compilation variable as follows: ```csharp #define DEBUG diff --git a/xml/System.Diagnostics/ConsoleTraceListener.xml b/xml/System.Diagnostics/ConsoleTraceListener.xml index b5109fcb957..cf4c4598c05 100644 --- a/xml/System.Diagnostics/ConsoleTraceListener.xml +++ b/xml/System.Diagnostics/ConsoleTraceListener.xml @@ -28,60 +28,60 @@ Directs tracing or debugging output to either the standard output or the standard error stream. - class to write trace and debugging messages to the console. You can initialize a object to write trace messages to the stream or to the stream. - + class to write trace and debugging messages to the console. You can initialize a object to write trace messages to the stream or to the stream. + > [!IMPORTANT] -> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a`try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - - When trace and debugging output is enabled, the messages are written to the specified stream, which is similar to the way messages are written with the or methods. In a console application, the output and error streams write messages to the existing console window, or you can redirect the streams to write to a instance. - +> This type implements the interface. When you have finished using the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a`try`/`catch` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + + When trace and debugging output is enabled, the messages are written to the specified stream, which is similar to the way messages are written with the or methods. In a console application, the output and error streams write messages to the existing console window, or you can redirect the streams to write to a instance. + > [!NOTE] -> If the console does not exist, as in a Windows-based application, messages written to the console are not displayed. - - Add a object to the appropriate collection if you want messages written through , , or to be written to the console. In addition, you can write messages directly to the console using the or methods. - +> If the console does not exist, as in a Windows-based application, messages written to the console are not displayed. + + Add a object to the appropriate collection if you want messages written through , , or to be written to the console. In addition, you can write messages directly to the console using the or methods. + > [!NOTE] -> The and classes share the same collection, accessed through their respective `Listeners` properties. If you add a object to the collection using one of these classes, the other class automatically uses the same listener. - - Most compilers enable trace and debug output through conditional compilation flags. If you do not enable tracing or debugging, the messages written through the and classes are effectively ignored. The syntax to enable trace and debug output is compiler specific; if you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. - -- To enable debugging in C#, add the **/d:DEBUG**flag to the compiler command line when you compile your code, or you can add **#define DEBUG** to the top of your file. In Visual Basic, add the **/d:DEBUG=True** flag to the compiler command line. - -- To enable tracing in C#, add the **/d:TRACE** flag to the compiler command line when you compile your code, or add **#define TRACE** to the top of your file. In Visual Basic, add the **/d:TRACE=True** flag to the compiler command line. - - You can add a object to the collection in your code. Or, for .NET Framework apps, you can add a object to the collection through the application configuration file. Add the object in your code to write messages for a specific code section or execution path. Add the object in your application configuration file to direct all trace and debug messages to the console while the application executes. - - To write trace and debug messages to the console for a specific section of code, initialize a object and add it to the collection. Instrument the section of code that contains messages using the or classes. At the end of the code section, remove the object from the collection, and call the method on the . - -For .NET Framework apps, to direct all trace and debug messages to the console while the application executes, add a object to the application configuration file. The following example adds a object named `configConsoleListener` to the collection. - -```xml - - - - - - - - - -``` - +> The and classes share the same collection, accessed through their respective `Listeners` properties. If you add a object to the collection using one of these classes, the other class automatically uses the same listener. + + Most compilers enable trace and debug output through conditional compilation flags. If you do not enable tracing or debugging, the messages written through the and classes are effectively ignored. The syntax to enable trace and debug output is compiler specific; if you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. + +- To enable debugging in C#, add the **/d:DEBUG**flag to the compiler command line when you compile your code, or you can add **#define DEBUG** to the top of your file. In Visual Basic, add the **/d:DEBUG=True** flag to the compiler command line. + +- To enable tracing in C#, add the **/d:TRACE** flag to the compiler command line when you compile your code, or add **#define TRACE** to the top of your file. In Visual Basic, add the **/d:TRACE=True** flag to the compiler command line. + + You can add a object to the collection in your code. Or, for .NET Framework apps, you can add a object to the collection through the application configuration file. Add the object in your code to write messages for a specific code section or execution path. Add the object in your application configuration file to direct all trace and debug messages to the console while the application executes. + + To write trace and debug messages to the console for a specific section of code, initialize a object and add it to the collection. Instrument the section of code that contains messages using the or classes. At the end of the code section, remove the object from the collection, and call the method on the . + +For .NET Framework apps, to direct all trace and debug messages to the console while the application executes, add a object to the application configuration file. The following example adds a object named `configConsoleListener` to the collection. + +```xml + + + + + + + + + +``` + For details about adding trace listeners in the application configuration file, see [\](/dotnet/framework/configure-apps/file-schema/trace-debug/listeners-element-for-trace). - -## Examples - The following code example implements a console application consisting of a class with two public methods. - - The `Main` method examines the command-line arguments and determines if trace output should be directed to the standard error stream or the standard output stream. `Main` creates and initializes a object for the specified output stream, and adds this object to the trace listener collection. It then calls the `WriteEnvironmentInfoToTrace` method, which writes details about the executing environment and the trace listener configuration to the trace output. - - When the example application runs, the environment and trace configuration details are written to the specified console output stream through the object. - + +## Examples + The following code example implements a console application consisting of a class with two public methods. + + The `Main` method examines the command-line arguments and determines if trace output should be directed to the standard error stream or the standard output stream. `Main` creates and initializes a object for the specified output stream, and adds this object to the trace listener collection. It then calls the `WriteEnvironmentInfoToTrace` method, which writes details about the executing environment and the trace listener configuration to the trace output. + + When the example application runs, the environment and trace configuration details are written to the specified console output stream through the object. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/ConsoleTraceListener/Overview/program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Diagnostics_ConsoleTraceListener/VB/consoletrace.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Diagnostics_ConsoleTraceListener/VB/consoletrace.vb" id="Snippet1"::: + ]]> @@ -127,19 +127,19 @@ For .NET Framework apps, to direct all trace and debug messages to the console w Initializes a new instance of the class with trace output written to the standard output stream. - object to write messages to the stream. Its property is initialized to an empty string (""). - - - -## Examples - The following code example initializes a object for the specified output stream and adds it to the trace listener collection. This code example is part of a larger example provided for the class. - + object to write messages to the stream. Its property is initialized to an empty string (""). + + + +## Examples + The following code example initializes a object for the specified output stream and adds it to the trace listener collection. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/ConsoleTraceListener/Overview/program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Diagnostics_ConsoleTraceListener/VB/consoletrace.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Diagnostics_ConsoleTraceListener/VB/consoletrace.vb" id="Snippet2"::: + ]]> @@ -183,19 +183,19 @@ For .NET Framework apps, to direct all trace and debug messages to the console w to write tracing and debugging output to the standard error stream; to write tracing and debugging output to the standard output stream. Initializes a new instance of the class with an option to write trace output to the standard output stream or the standard error stream. - object to write messages to either the or the stream. Its property is initialized to an empty string (""). - - - -## Examples - The following code example initializes a object for the specified output stream and adds it to the trace listener collection. This code example is part of a larger example provided for the class. - + object to write messages to either the or the stream. Its property is initialized to an empty string (""). + + + +## Examples + The following code example initializes a object for the specified output stream and adds it to the trace listener collection. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/ConsoleTraceListener/Overview/program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Diagnostics_ConsoleTraceListener/VB/consoletrace.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Diagnostics_ConsoleTraceListener/VB/consoletrace.vb" id="Snippet2"::: + ]]> @@ -237,11 +237,11 @@ For .NET Framework apps, to direct all trace and debug messages to the console w Closes the output to the stream specified for this trace listener. - instance (either the stream or the stream) is closed. - + instance (either the stream or the stream) is closed. + ]]> diff --git a/xml/System.Diagnostics/DebuggerStepThroughAttribute.xml b/xml/System.Diagnostics/DebuggerStepThroughAttribute.xml index e373371b77f..cf7a19343df 100644 --- a/xml/System.Diagnostics/DebuggerStepThroughAttribute.xml +++ b/xml/System.Diagnostics/DebuggerStepThroughAttribute.xml @@ -71,32 +71,32 @@ Instructs the debugger to step through the code instead of stepping into the code. This class cannot be inherited. - attribute affects the [Just My Code](https://msdn.microsoft.com/library/0f0df097-bbaf-46ad-9ad1-ef5f40435079) (JMC) feature of Visual Studio in the following ways: - -- If JMC is enabled, the Visual Studio debugger will not stop at a breakpoint in a method marked with the attribute. - -- If JMC is disabled, the debugger stops at the breakpoint even if the method is marked with the . - - The following code shows how the Visual Basic compiler uses the attribute. - -```vb - _ -    Private Sub InitializeComponent() -        components = New System.ComponentModel.Container() -        Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font -        Me.Text = "Form1" -    End Sub -``` - - This attribute avoids having to step into compiler-provided code and only steps into developer-provided code. For example, if you are stepping through code by using the **F11** (Step Into) key, the attribute will cause the step to behave like an **F10** (Step Over) key for compiler-provided code. The method won't be stepped into, but it will be executed. - - For more information about using attributes, see [Attributes](/dotnet/standard/attributes/). - + attribute affects the [Just My Code](https://msdn.microsoft.com/library/0f0df097-bbaf-46ad-9ad1-ef5f40435079) (JMC) feature of Visual Studio in the following ways: + +- If JMC is enabled, the Visual Studio debugger will not stop at a breakpoint in a method marked with the attribute. + +- If JMC is disabled, the debugger stops at the breakpoint even if the method is marked with the . + + The following code shows how the Visual Basic compiler uses the attribute. + +```vb + _ +    Private Sub InitializeComponent() +        components = New System.ComponentModel.Container() +        Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font +        Me.Text = "Form1" +    End Sub +``` + + This attribute avoids having to step into compiler-provided code and only steps into developer-provided code. For example, if you are stepping through code by using the **F11** (Step Into) key, the attribute will cause the step to behave like an **F10** (Step Over) key for compiler-provided code. The method won't be stepped into, but it will be executed. + + For more information about using attributes, see [Attributes](/dotnet/standard/attributes/). + ]]> diff --git a/xml/System.Diagnostics/DefaultTraceListener.xml b/xml/System.Diagnostics/DefaultTraceListener.xml index d9b472f12f8..339dc0a1cfc 100644 --- a/xml/System.Diagnostics/DefaultTraceListener.xml +++ b/xml/System.Diagnostics/DefaultTraceListener.xml @@ -55,49 +55,49 @@ Provides the default output methods and behavior for tracing. - and collections. Explicitly adding a second causes duplicate messages in the debugger output window and duplicate message boxes for asserts. - + and collections. Explicitly adding a second causes duplicate messages in the debugger output window and duplicate message boxes for asserts. + By default, the and methods emit the message to the Win32 [OutputDebugString](/windows/win32/api/debugapi/nf-debugapi-outputdebugstringw) function and to the method. - - The method, by default, displays a message box when the application is running in a user interface mode; it also emits the message using . - + + The method, by default, displays a message box when the application is running in a user interface mode; it also emits the message using . + > [!NOTE] > The display of the message box for and method calls depends on the presence of the . If the is not in the collection, the message box is not displayed. The can be removed by calling the method on the property (`System.Diagnostics.Trace.Listeners.Clear()`). For .NET Framework apps, you can also use the [\ element](/dotnet/framework/configure-apps/file-schema/trace-debug/clear-element-for-listeners-for-trace) and the [\ element](/dotnet/framework/configure-apps/file-schema/trace-debug/remove-element-for-listeners-for-trace) in your app's configuration file. - - You must enable tracing or debugging to use a trace listener. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. - -- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. - -- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. - -For .NET Framework apps, you can add a trace listener by editing the configuration file that corresponds to the name of your application. Within this file, you can add a listener, set its type and set its parameters, remove a listener, or clear all the listeners previously set by the application. The configuration file should be formatted similar to the following example: - -```xml - - - - - - - - - - + + You must enable tracing or debugging to use a trace listener. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. + +- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. + +- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. + +For .NET Framework apps, you can add a trace listener by editing the configuration file that corresponds to the name of your application. Within this file, you can add a listener, set its type and set its parameters, remove a listener, or clear all the listeners previously set by the application. The configuration file should be formatted similar to the following example: + +```xml + + + + + + + + + + ``` - -## Examples - The following code example calculates binomial coefficients, which are values used in probability and statistics. This example uses a to trace results and log errors. It creates a new , adds it to the collection, and sets the property to the log file specified in the command-line arguments. - - If an error is detected while processing the input parameter, or if the `CalcBinomial` function throws an exception, the method logs and displays an error message. If the property is `false`, the error message is also written to the console. When the result is calculated successfully, the and methods write the results to the log file. - - The , , and methods cause trace information to be written only to the . To write trace information to all listeners in the collection, use the , , and methods of the class. - + +## Examples + The following code example calculates binomial coefficients, which are values used in probability and statistics. This example uses a to trace results and log errors. It creates a new , adds it to the collection, and sets the property to the log file specified in the command-line arguments. + + If an error is detected while processing the input parameter, or if the `CalcBinomial` function throws an exception, the method logs and displays an error message. If the property is `false`, the error message is also written to the console. When the result is calculated successfully, the and methods write the results to the log file. + + The , , and methods cause trace information to be written only to the . To write trace information to all listeners in the collection, use the , , and methods of the class. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Overview/binomial.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet11"::: + ]]> This class is thread safe. @@ -144,14 +144,14 @@ For .NET Framework apps, you can add a trace listener by editing the configurati Initializes a new instance of the class with "Default" as its property value. - provided by the application from the collection and then creates a new and adds it to the collection. - + provided by the application from the collection and then creates a new and adds it to the collection. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Overview/binomial.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet3"::: + ]]> @@ -202,14 +202,14 @@ For .NET Framework apps, you can add a trace listener by editing the configurati if user-interface mode is enabled; otherwise, . - method to log an error message if the function throws an exception. If the property is `false`, the method also writes the error message to the console. - + method to log an error message if the function throws an exception. If the property is `false`, the method also writes the error message to the console. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Overview/binomial.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet8"::: + ]]> @@ -268,19 +268,19 @@ For .NET Framework apps, you can add a trace listener by editing the configurati The message to emit or display. Emits or displays a message and a stack trace for an assertion that always fails. - instance. - - - -## Examples - The following code example writes an error message to a using the method. The method also writes the message to the console if a user interface is not available. - + instance. + + + +## Examples + The following code example writes an error message to a using the method. The method also writes the message to the console if a user interface is not available. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Overview/binomial.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet6"::: + ]]> @@ -337,19 +337,19 @@ For .NET Framework apps, you can add a trace listener by editing the configurati The detailed message to emit or display. Emits or displays detailed messages and a stack trace for an assertion that always fails. - instance. - - - -## Examples - The following code example calls a function that calls the method to log a detailed error message if the function throws an exception. The method writes the message to the console if a user interface is not available. - + instance. + + + +## Examples + The following code example calls a function that calls the method to log a detailed error message if the function throws an exception. The method writes the message to the console if a user interface is not available. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Overview/binomial.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet8"::: + ]]> @@ -400,14 +400,14 @@ For .NET Framework apps, you can add a trace listener by editing the configurati Gets or sets the name of a log file to write trace or debug messages to. The name of a log file to write trace or debug messages to. - , adds it to the collection, and sets the property to the log file specified in the command-line arguments. - + , adds it to the collection, and sets the property to the log file specified in the command-line arguments. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Overview/binomial.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener/VB/binomial.vb" id="Snippet4"::: + ]]> @@ -462,19 +462,19 @@ For .NET Framework apps, you can add a trace listener by editing the configurati The message to write to and . Writes the output to the function and to the method. - method to write the first part of the message to a . - + method to write the first part of the message to a . + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Write/defaulttracelistener.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener.WriteLine/VB/defaulttracelistener.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener.WriteLine/VB/defaulttracelistener.vb" id="Snippet4"::: + ]]> @@ -535,23 +535,23 @@ For .NET Framework apps, you can add a trace listener by editing the configurati The message to write to and . Writes the output to the function and to the method, followed by a carriage return and line feed (\r\n). - property to `true`. - - - -## Examples - The following code example formats the results of a function and uses the method to write the last part of the message to a . - + property to `true`. + + + +## Examples + The following code example formats the results of a function and uses the method to write the last part of the message to a . + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/DefaultTraceListener/Write/defaulttracelistener.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener.WriteLine/VB/defaulttracelistener.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.DefaultTraceListener.WriteLine/VB/defaulttracelistener.vb" id="Snippet4"::: + ]]> diff --git a/xml/System.Diagnostics/EventLog.xml b/xml/System.Diagnostics/EventLog.xml index 39afaaae185..3b893178c09 100644 --- a/xml/System.Diagnostics/EventLog.xml +++ b/xml/System.Diagnostics/EventLog.xml @@ -109,11 +109,11 @@ When writing events, you must at least specify either a message string or the resource identifier for a message string. Other event properties are optional. Examples of optional event settings include the following: -- You can set the to specify the icon that the Event Viewer displays for the entry. +- You can set the to specify the icon that the Event Viewer displays for the entry. -- You can specify a category identifier for the event, if your application uses categories for filtering the events. +- You can specify a category identifier for the event, if your application uses categories for filtering the events. -- You can attach binary data to your event entry if you want to associate additional information with a given event. +- You can attach binary data to your event entry if you want to associate additional information with a given event. > [!IMPORTANT] > Event logging consumes disk space, processor time, and other system resources. It is important to log only essential information. We recommend that you place event log calls in an error path, rather than in the main code path, so they don't adversely affect performance. diff --git a/xml/System.Diagnostics/FileVersionInfo.xml b/xml/System.Diagnostics/FileVersionInfo.xml index 6f4bf2a706e..a6683ab47ff 100644 --- a/xml/System.Diagnostics/FileVersionInfo.xml +++ b/xml/System.Diagnostics/FileVersionInfo.xml @@ -56,13 +56,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A file version number is a 64-bit number that holds the version number for a file as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. Use the method of this class to get a containing information about a file, then look at the properties for information about the file. The property provides version information about the file. The , , , , and properties provide version information for the product that the specified file is a part of. Call to get a partial list of properties and their values for this file. @@ -77,7 +77,7 @@ ## Examples The following example calls to get the for the Notepad. Then it prints the file description and version number to the console. - + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/FileVersionInfo/Overview/source.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_Classic/classic FileVersionInfo Example/VB/source.vb" id="Snippet1"::: @@ -261,13 +261,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A file version number is a 64-bit number that holds the version number for a file as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the third set of 16 bits. @@ -398,13 +398,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A file version number is a 64-bit number that holds the version number for a file as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the first set of 16 bits. @@ -475,13 +475,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A file version number is a 64-bit number that holds the version number for a file as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the second set of 16 bits. @@ -610,13 +610,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A file version number is a 64-bit number that holds the version number for a file as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the last set of 16 bits. @@ -689,13 +689,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A file version number is a 64-bit number that holds the version number for a file as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. @@ -1497,13 +1497,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A product version number is a 64-bit number that holds the version number as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the third set of 16 bits. @@ -1574,13 +1574,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A product version number is a 64-bit number that holds the version number as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the first set of 16 bits. @@ -1650,13 +1650,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A product version number is a 64-bit number that holds the version number as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the second set of 16 bits. @@ -1785,13 +1785,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A product version number is a 64-bit number that holds the version number as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. This property gets the last set of 16 bits. @@ -1863,13 +1863,13 @@ ## Remarks Typically, a version number is displayed as "major number.minor number.build number.private part number". A product version number is a 64-bit number that holds the version number as follows: -- The first 16 bits are the number. +- The first 16 bits are the number. -- The next 16 bits are the number. +- The next 16 bits are the number. -- The third set of 16 bits are the number. +- The third set of 16 bits are the number. -- The last 16 bits are the number. +- The last 16 bits are the number. diff --git a/xml/System.Diagnostics/OverflowAction.xml b/xml/System.Diagnostics/OverflowAction.xml index 3b6a28b9b6f..34b75735c98 100644 --- a/xml/System.Diagnostics/OverflowAction.xml +++ b/xml/System.Diagnostics/OverflowAction.xml @@ -36,9 +36,9 @@ ## Remarks Every event log has a maximum size limit and a configurable setting that provides the rule for writing new entries at that limit. When the event log has reached its maximum size, you can specify one of the following rules: -- New entries will be discarded. +- New entries will be discarded. -- New entries will overwrite older entries. +- New entries will overwrite older entries. Use the method to set the overflow behavior for an . Check the current configured behavior of an through its property. @@ -48,7 +48,7 @@ ## Examples The following example enumerates the event logs defined on the local computer and displays configuration details for each event log. - + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/EventLog/GetEventLogs/source1.cs" id="Snippet2"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/EventLogProperties/VB/source.vb" id="Snippet2"::: diff --git a/xml/System.Diagnostics/Switch.xml b/xml/System.Diagnostics/Switch.xml index 6c884e029fa..efddcaeb378 100644 --- a/xml/System.Diagnostics/Switch.xml +++ b/xml/System.Diagnostics/Switch.xml @@ -60,9 +60,9 @@ You must enable tracing or debugging to use a switch. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. -- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. +- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. -- To enable tracing using in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. +- To enable tracing using in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. To set the level of your switch in a .NET Framework app, edit the configuration file that corresponds to the name of your application. Within this file, you can add a switch and set its value, remove a switch, or clear all the switches previously set by the application. The configuration file should be formatted like the following example: diff --git a/xml/System.Diagnostics/TextWriterTraceListener.xml b/xml/System.Diagnostics/TextWriterTraceListener.xml index b9524b3313e..495dfd0b8e2 100644 --- a/xml/System.Diagnostics/TextWriterTraceListener.xml +++ b/xml/System.Diagnostics/TextWriterTraceListener.xml @@ -63,9 +63,9 @@ You must enable tracing or debugging to use a trace listener. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. -- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. +- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. -- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. +- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. To add a trace listener in a .NET Framework app, edit the configuration file that corresponds to the name of your application. Within this file, you can add a listener, set its type and set its parameter, remove a listener, or clear all the listeners previously set by the application. The configuration file should be formatted like the following example. @@ -91,7 +91,7 @@ The following example implements an instance of the class that uses a called `myOutputWriter` to write to a file named `TestFile.txt`. First the example creates a file for output. Then it creates the for the first text writer, assigns it the output file, and adds it to the . Then, the code outputs one line of text to the file. Finally, the example flushes the output buffer. After running this sample, you can open the `TestFile.txt` file to see the output. - + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/TextWriterTraceListener/Overview/source.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_Classic/classic TextWriterTraceListener Example/VB/source.vb" id="Snippet1"::: diff --git a/xml/System.Diagnostics/TraceFilter.xml b/xml/System.Diagnostics/TraceFilter.xml index 6dd4ee0e42e..b3679294cc9 100644 --- a/xml/System.Diagnostics/TraceFilter.xml +++ b/xml/System.Diagnostics/TraceFilter.xml @@ -175,7 +175,7 @@ ## Examples The following code example shows how to override the method to indicate tracing should occur when the trace event type of the event is equal to . - + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/TraceFilter/ShouldTrace/source.cs" id="Snippet2"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.diagnostics.tracefilter/vb/source.vb" id="Snippet2"::: @@ -194,7 +194,7 @@ - if is not one of the values. -- Exceptions unrelated to the implementation of the method. For example, a . +- Exceptions unrelated to the implementation of the method. For example, a . diff --git a/xml/System.Diagnostics/TraceLevel.xml b/xml/System.Diagnostics/TraceLevel.xml index 0427ccda190..cabc2998ec1 100644 --- a/xml/System.Diagnostics/TraceLevel.xml +++ b/xml/System.Diagnostics/TraceLevel.xml @@ -44,29 +44,29 @@ Specifies what messages to output for the , and classes. - class. - - You must enable tracing or debugging to use a switch. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. - -- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. - -- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. - - For more information on instrumenting your application, see and . - -In .NET Framework app configuration files, you can use text to specify the value for a switch. For example, `true` for a , or the text representing an enumeration value such as `Error` for a . The line `` is equivalent to ``. You can also set trace levels using the integer value of the enumeration. The following table shows the relationship between the enumeration members and their corresponding configuration file entries. - -|Trace Level|Configuration File Value| -|-----------------|------------------------------| -|Off|0| -|Error|1| -|Warning|2| -|Info|3| -|Verbose|4| - + class. + + You must enable tracing or debugging to use a switch. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. + +- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. + +- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. + + For more information on instrumenting your application, see and . + +In .NET Framework app configuration files, you can use text to specify the value for a switch. For example, `true` for a , or the text representing an enumeration value such as `Error` for a . The line `` is equivalent to ``. You can also set trace levels using the integer value of the enumeration. The following table shows the relationship between the enumeration members and their corresponding configuration file entries. + +|Trace Level|Configuration File Value| +|-----------------|------------------------------| +|Off|0| +|Error|1| +|Warning|2| +|Info|3| +|Verbose|4| + ]]> diff --git a/xml/System.Diagnostics/TraceListener.xml b/xml/System.Diagnostics/TraceListener.xml index 2e4a05d9f73..a99c4ed2bb6 100644 --- a/xml/System.Diagnostics/TraceListener.xml +++ b/xml/System.Diagnostics/TraceListener.xml @@ -68,9 +68,9 @@ You must enable tracing or debugging to use a trace listener. The following syntax is compiler specific. If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler. -- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. +- To enable debugging in C#, add the `/d:DEBUG` flag to the compiler command line when you compile your code, or you can add `#define DEBUG` to the top of your file. In Visual Basic, add the `/d:DEBUG=True` flag to the compiler command line. -- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. +- To enable tracing in C#, add the `/d:TRACE` flag to the compiler command line when you compile your code, or add `#define TRACE` to the top of your file. In Visual Basic, add the `/d:TRACE=True` flag to the compiler command line. To add a trace listener, edit the configuration file that corresponds to the name of your application. Within this file, you can add a listener, set its type and set its parameter, remove a listener, or clear all the listeners previously set by the application. The configuration file should be formatted similar to the following example. @@ -1629,11 +1629,11 @@ The enumeration is not used by the following classes and methods: -- The class, because it can cause a large volume of data to be written to the log. +- The class, because it can cause a large volume of data to be written to the log. -- The `Write` and `WriteLine` methods of the , , and classes. +- The `Write` and `WriteLine` methods of the , , and classes. -- The and methods of the class when they are not overridden in a derived class. +- The and methods of the class when they are not overridden in a derived class. diff --git a/xml/System.Diagnostics/TraceOptions.xml b/xml/System.Diagnostics/TraceOptions.xml index 363390d029f..bce6a6108c1 100644 --- a/xml/System.Diagnostics/TraceOptions.xml +++ b/xml/System.Diagnostics/TraceOptions.xml @@ -49,43 +49,43 @@ Specifies trace data options to be written to the trace output. - property. - - The following example shows the use of the `traceOutputOptions` attribute to specify the trace output options for a . Using a configuration file like this is only possible in .NET Framework apps. - -```xml - - - - - - - - - -``` - - For details about adding trace listeners to the application configuration file, see [\](/dotnet/framework/configure-apps/file-schema/trace-debug/listeners-element-for-trace). - - The enumeration is not used by the following classes and methods: - -- The class, because it can cause a large volume of data to be written to the log. - -- The `Write` and `WriteLine` methods of the , , and classes. - -- The and methods of the class when they are not overridden in a derived class. - -## Examples - The following code example shows the use of the enumeration to programmatically set the property for a console trace listener. The console trace listener is one of the listeners enumerated in the property of a trace source. This code example is part of a larger example provided for the class. - + property. + + The following example shows the use of the `traceOutputOptions` attribute to specify the trace output options for a . Using a configuration file like this is only possible in .NET Framework apps. + +```xml + + + + + + + + + +``` + + For details about adding trace listeners to the application configuration file, see [\](/dotnet/framework/configure-apps/file-schema/trace-debug/listeners-element-for-trace). + + The enumeration is not used by the following classes and methods: + +- The class, because it can cause a large volume of data to be written to the log. + +- The `Write` and `WriteLine` methods of the , , and classes. + +- The and methods of the class when they are not overridden in a derived class. + +## Examples + The following code example shows the use of the enumeration to programmatically set the property for a console trace listener. The console trace listener is one of the listeners enumerated in the property of a trace source. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.Diagnostics/SwitchAttribute/Overview/program.cs" id="Snippet16"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.TraceSource2/VB/program.vb" id="Snippet16"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Diagnostics.TraceSource2/VB/program.vb" id="Snippet16"::: + ]]> diff --git a/xml/System.DirectoryServices.AccountManagement/ContextOptions.xml b/xml/System.DirectoryServices.AccountManagement/ContextOptions.xml index 24f2f515720..9fef76515e4 100644 --- a/xml/System.DirectoryServices.AccountManagement/ContextOptions.xml +++ b/xml/System.DirectoryServices.AccountManagement/ContextOptions.xml @@ -28,13 +28,13 @@ Specifies the options that are used for binding to the server. The application can set multiple options that are linked with a bitwise OR operation. - @@ -169,8 +169,8 @@ 2 The client is authenticated by using the Basic authentication. - -Caution: Communications may be sent over the Internet in clear text if the `SecureSocketsLayer` option is not specified with simple bind. + +Caution: Communications may be sent over the Internet in clear text if the `SecureSocketsLayer` option is not specified with simple bind. diff --git a/xml/System.DirectoryServices.AccountManagement/GroupPrincipal.xml b/xml/System.DirectoryServices.AccountManagement/GroupPrincipal.xml index 95e62f77e33..b311b4572e2 100644 --- a/xml/System.DirectoryServices.AccountManagement/GroupPrincipal.xml +++ b/xml/System.DirectoryServices.AccountManagement/GroupPrincipal.xml @@ -65,11 +65,11 @@ The that specifies the server or domain against which operations are performed. Initializes a new instance of the class by using the specified context. - method. - + method. + ]]> @@ -97,11 +97,11 @@ The SAM account name for this principal. Initializes a new instance of the class and assigns it to the specified context and SAM account name. - method. - + method. + ]]> @@ -238,13 +238,13 @@ Returns a collection of the principal objects that is contained in the group. A object that contains the principal objects that are members of the group, or an empty collection if the group has no members. - @@ -274,43 +274,43 @@ Returns a collection of the principal objects that is contained in the group. When the recursive flag is set to true, this method searches the current group recursively and returns all nested group members. A object that contains the principal objects that are members of the group, or an empty collection if the group has no members. - constructor. - - A search is performed to find the group that has the name "Domain Admins" under the container specified in the constructor "DC=fabrikam,DC=com." If the group is found, all the principals that are members of this group, which includes recursive members, are then enumerated - -``` -PrincipalContext ctx = new PrincipalContext(ContextType.Domain, - "fabrikam.com", - "DC=fabrikam,DC=com", - "administrator", - "SecretPwd123"); - -GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, - IdentityType.Name, - "Domain Admins"); - -if (grp != null) -{ - foreach (Principal p in grp.GetMembers(true)) - { - Console.WriteLine(p.Name); - } - grp.Dispose(); -} - -ctx.Dispose(); -``` - + constructor. + + A search is performed to find the group that has the name "Domain Admins" under the container specified in the constructor "DC=fabrikam,DC=com." If the group is found, all the principals that are members of this group, which includes recursive members, are then enumerated + +``` +PrincipalContext ctx = new PrincipalContext(ContextType.Domain, + "fabrikam.com", + "DC=fabrikam,DC=com", + "administrator", + "SecretPwd123"); + +GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, + IdentityType.Name, + "Domain Admins"); + +if (grp != null) +{ + foreach (Principal p in grp.GetMembers(true)) + { + Console.WriteLine(p.Name); + } + grp.Dispose(); +} + +ctx.Dispose(); +``` + ]]> @@ -361,13 +361,13 @@ ctx.Dispose(); if the group is security enabled, or null if the group has not been persisted; otherwise . - property is reset to true later, the group will have the same properties as before it was set to false. - - If the principal has not been persisted in the store, this property returns null. After the principal is persisted, the default security-enabled setting depends on the store. The AD DS and AD LDS stores disable new principals when they are persisted, whereas SAM enables new principals when they are persisted. - + property is reset to true later, the group will have the same properties as before it was set to false. + + If the principal has not been persisted in the store, this property returns null. After the principal is persisted, the default security-enabled setting depends on the store. The AD DS and AD LDS stores disable new principals when they are persisted, whereas SAM enables new principals when they are persisted. + ]]> The application may not set this property to null. @@ -394,43 +394,43 @@ ctx.Dispose(); Gets a collection of principal objects that represent the members of the group. A object that contains the principal objects that represent the members of the group. - property includes user principals that are members of the group because of their primaryId Attribute. When the group contains these types of members, the following restrictions apply: - -- The method cannot be used to remove members that are part of the group because of their primaryId Attribute. - -- The method cannot be used to clear members that are part of the group because of their primaryId Attribute. - - - -## Examples - The following code connects to the LDAP domain "fabrikam.com" with the username set to "administrator" and the password set to "SecretPwd123" in the constructor. - - A search is performed to find the group that has name "Domain Admins" under the container specified in the constructor, "DC=fabrikam,DC=com." If the group is found, the user who has name "John Smith" is removed from the group and the user who has name "Jim Daly" is added to the group - -``` -PrincipalContext ctx = new PrincipalContext(ContextType.Domain, - "fabrikam.com", - "DC=fabrikam,DC=com", - "administrator", - "SecretPwd123"); - -GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, - IdentityType.Name, - "Domain Admins"); - -if (grp != null) -{ - grp.Members.Remove(ctx, IdentityType.Name, "John Smith"); - grp.Members.Add(ctx, IdentityType.Name, "Jim Daly"); - grp.Save(); - grp.Dispose(); -} -ctx.Dispose(); -``` - + property includes user principals that are members of the group because of their primaryId Attribute. When the group contains these types of members, the following restrictions apply: + +- The method cannot be used to remove members that are part of the group because of their primaryId Attribute. + +- The method cannot be used to clear members that are part of the group because of their primaryId Attribute. + + + +## Examples + The following code connects to the LDAP domain "fabrikam.com" with the username set to "administrator" and the password set to "SecretPwd123" in the constructor. + + A search is performed to find the group that has name "Domain Admins" under the container specified in the constructor, "DC=fabrikam,DC=com." If the group is found, the user who has name "John Smith" is removed from the group and the user who has name "Jim Daly" is added to the group + +``` +PrincipalContext ctx = new PrincipalContext(ContextType.Domain, + "fabrikam.com", + "DC=fabrikam,DC=com", + "administrator", + "SecretPwd123"); + +GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, + IdentityType.Name, + "Domain Admins"); + +if (grp != null) +{ + grp.Members.Remove(ctx, IdentityType.Name, "John Smith"); + grp.Members.Add(ctx, IdentityType.Name, "Jim Daly"); + grp.Save(); + grp.Dispose(); +} +ctx.Dispose(); +``` + ]]> diff --git a/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLink.xml b/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLink.xml index ea844df15dd..d6266e61a3d 100644 --- a/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLink.xml +++ b/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLink.xml @@ -77,7 +77,7 @@ The target server is either busy or unavailable. This exception will occur for any of the following reasons. -- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. +- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. - is an empty string. @@ -118,7 +118,7 @@ The target server is either busy or unavailable. This exception will occur for any of the following reasons. -- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. +- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. - is an empty string. @@ -172,7 +172,7 @@ The target server is either busy or unavailable. This exception will occur for any of the following reasons. -- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. +- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. - is an empty string. diff --git a/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLinkBridge.xml b/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLinkBridge.xml index f29a046c36a..23c6c378c2d 100644 --- a/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLinkBridge.xml +++ b/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySiteLinkBridge.xml @@ -57,20 +57,20 @@ A that specifies the name for this object. Initializes a new instance of the class using the specified object and name. - type is RPC. - + type is RPC. + ]]> A call to the underlying directory service resulted in an error. The target server is either busy or unavailable. - This exception will occur for any of the following reasons: - -- The parameter does not refer to a valid forest, configuration set, domain controller, or AD LDS server. - -- The parameter is an empty string. + This exception will occur for any of the following reasons: + +- The parameter does not refer to a valid forest, configuration set, domain controller, or AD LDS server. + +- The parameter is an empty string. The parameter or the parameter is . The credentials that were supplied are not valid. @@ -105,11 +105,11 @@ To be added. A call to the underlying directory service resulted in an error. The target server is either busy or unavailable. - This exception will occur for any of the following reasons: - -- The parameter does not refer to a valid forest, configuration set, domain controller, or AD LDS server. - -- The parameter is an empty string. + This exception will occur for any of the following reasons: + +- The parameter does not refer to a valid forest, configuration set, domain controller, or AD LDS server. + +- The parameter is an empty string. The parameter or the parameter is . The credentials that were supplied are not valid. @@ -255,11 +255,11 @@ In the parameter that was specified, the site link bridge could not be found for the given parameter. A call to the underlying directory service resulted in an error. The target server is either busy or unavailable. - This exception will occur for any of the following reasons. - -- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. - -- The parameter is an empty string. + This exception will occur for any of the following reasons. + +- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. + +- The parameter is an empty string. The or the parameter is . @@ -298,11 +298,11 @@ In the parameter that was specified, the site link bridge could not be found for the given parameter. A call to the underlying directory service resulted in an error. The target server is either busy or unavailable. - This exception will occur for any of the following reasons: - -- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. - -- The parameter is an empty string. + This exception will occur for any of the following reasons: + +- The target in the parameter is not a forest, configuration set, domain controller, or an AD LDS server. + +- The parameter is an empty string. The or the parameter is . The parameter is not a valid value. diff --git a/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySubnet.xml b/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySubnet.xml index 8622b9c7414..e4dd9bc2b4d 100644 --- a/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySubnet.xml +++ b/xml/System.DirectoryServices.ActiveDirectory/ActiveDirectorySubnet.xml @@ -71,10 +71,10 @@ specifies a configuration set, but no AD LDS instance was found. A call to the underlying directory service resulted in an error. The target server is either busy or unavailable. - This exception will occur for any of the following reasons: - -- does not refer a valid forest, configuration set, domain controller, or AD LDS server. - + This exception will occur for any of the following reasons: + +- does not refer a valid forest, configuration set, domain controller, or AD LDS server. + - is an empty string. or is . @@ -112,10 +112,10 @@ specifies a configuration set, but no AD LDS instance was found. A call to the underlying directory service resulted in an error. The target server is either busy or unavailable. - This exception will occur for any of the following reasons: - -- does not refer to a valid forest, configuration set, domain controller, or AD LDS server. - + This exception will occur for any of the following reasons: + +- does not refer to a valid forest, configuration set, domain controller, or AD LDS server. + - or is an empty string. , , or is . @@ -251,10 +251,10 @@ In the parameter that was specified, the site could not be found for the given parameter. A call to the underlying directory service resulted in an error. The target server is either busy or unavailable. - This exception will occur for any of the following reasons: - -- The target in the parameter is not a forest, configuration set, domain controller, or AD LDS server. - + This exception will occur for any of the following reasons: + +- The target in the parameter is not a forest, configuration set, domain controller, or AD LDS server. + - is an empty string. or is . diff --git a/xml/System.DirectoryServices.ActiveDirectory/ApplicationPartition.xml b/xml/System.DirectoryServices.ActiveDirectory/ApplicationPartition.xml index 3c297c50c9c..7eef8383ac8 100644 --- a/xml/System.DirectoryServices.ActiveDirectory/ApplicationPartition.xml +++ b/xml/System.DirectoryServices.ActiveDirectory/ApplicationPartition.xml @@ -62,11 +62,11 @@ The that specifies the distinguished name for this application partition. Initializes a new instance of the class, using the specified distinguished name. - A call to the underlying directory service resulted in an error. @@ -103,11 +103,11 @@ The that specifies the object class that represents this application partition. Initializes a new instance of the class, using the specified distinguished name and object class. - A call to the underlying directory service resulted in an error. @@ -168,11 +168,11 @@ Gets an object that contains the directory servers that host this application partition. A object that contains objects that represent directory servers for this application partition. - property returns the same collection of objects as the method if the object has been committed to the underlying directory services store. - + property returns the same collection of objects as the method if the object has been committed to the underlying directory services store. + ]]> The object has not yet been committed to the underlying directory store. @@ -395,7 +395,7 @@ The target is a configuration set and no AD LDS instance was found in that configuration set. -or- - + The target is a forest and the application partition was not found in that forest. -or- @@ -408,13 +408,13 @@ No AD LDS instance was found for the application partition. A call to the underlying directory service resulted in an error. or is . - This exception will occur for any of the following reasons: - -- The parameter is not a valid forest, configuration set, or directory server. - -- The has a zero length. - -- The parameter is in an invalid format. + This exception will occur for any of the following reasons: + +- The parameter is not a valid forest, configuration set, or directory server. + +- The has a zero length. + +- The parameter is in an invalid format. diff --git a/xml/System.DirectoryServices.Protocols/DirectoryAttribute.xml b/xml/System.DirectoryServices.Protocols/DirectoryAttribute.xml index be12f421b32..e0dbb50f39c 100644 --- a/xml/System.DirectoryServices.Protocols/DirectoryAttribute.xml +++ b/xml/System.DirectoryServices.Protocols/DirectoryAttribute.xml @@ -358,7 +358,7 @@ - is equal to, or greater than, the length of . -- The number of elements in the source is greater than the space available from to the end of the destination . +- The number of elements in the source is greater than the space available from to the end of the destination . The type of the source cannot be cast automatically to the type of the destination . diff --git a/xml/System.DirectoryServices/DirectoryEntry.xml b/xml/System.DirectoryServices/DirectoryEntry.xml index da0f8d55c39..ddc1594d4b0 100644 --- a/xml/System.DirectoryServices/DirectoryEntry.xml +++ b/xml/System.DirectoryServices/DirectoryEntry.xml @@ -447,7 +447,7 @@ public class PrintChildren{ ## Security -- Use the class for reading, writing, deleting, changing, and adding to the Active Directory Domain Services hierarchy. Associated enumeration: . +- Use the class for reading, writing, deleting, changing, and adding to the Active Directory Domain Services hierarchy. Associated enumeration: . ]]> @@ -592,7 +592,7 @@ public class PrintChildren{ ## Security -- Use for deleting entries from the Active Directory Domain Services hierarchy. Associated enumeration: . +- Use for deleting entries from the Active Directory Domain Services hierarchy. Associated enumeration: . ]]> @@ -1559,25 +1559,25 @@ foreach(DirectoryEntry myChildDirectoryEntry in myDirectoryEntry.Children) WinNT -- Connect to a group on a computer. For example, "WinNT://**\/\/\**". If you are connecting to a local computer, "WinNT://**\/\**". +- Connect to a group on a computer. For example, "WinNT://**\/\/\**". If you are connecting to a local computer, "WinNT://**\/\**". -- Connect to a user on a computer. For example, "WinNT://**\/\/\**". If you are connecting to a local computer, "WinNT://**\/\**". +- Connect to a user on a computer. For example, "WinNT://**\/\/\**". If you are connecting to a local computer, "WinNT://**\/\**". -- Connect to services on a computer. For example, "WinNT://**\/\/\**". If you are connecting to a local computer, "WinNT://**\/\**". +- Connect to services on a computer. For example, "WinNT://**\/\/\**". If you are connecting to a local computer, "WinNT://**\/\**". -- Discover all domains on the network. For example, "WinNT:" The domains can be found by enumerating the children of this entry. +- Discover all domains on the network. For example, "WinNT:" The domains can be found by enumerating the children of this entry. LDAP -- Connect to a group in a domain. For example, "LDAP://CN=\, CN =\, DC=\, DC=\,...". +- Connect to a group in a domain. For example, "LDAP://CN=\, CN =\, DC=\, DC=\,...". -- Connect to a user in a domain. For example, "LDAP://CN=\, CN=\, DC=\, DC=\,...". +- Connect to a user in a domain. For example, "LDAP://CN=\, CN=\, DC=\, DC=\,...". -- Connect to computers in a domain. For example, "LDAP://CN=\, CN=\, DC=\, DC=\,...". +- Connect to computers in a domain. For example, "LDAP://CN=\, CN=\, DC=\, DC=\,...". IIS -- Connect to a Web directory. For example, "IIS://LocalHost/W3SVC/1/ROOT/\". +- Connect to a Web directory. For example, "IIS://LocalHost/W3SVC/1/ROOT/\". To bind to the current domain using LDAP, use the path "LDAP://RootDSE", then get the default naming context and rebind the entry. For example: diff --git a/xml/System.DirectoryServices/DirectorySearcher.xml b/xml/System.DirectoryServices/DirectorySearcher.xml index fe8100e5c13..67a33b3e59d 100644 --- a/xml/System.DirectoryServices/DirectorySearcher.xml +++ b/xml/System.DirectoryServices/DirectorySearcher.xml @@ -31,31 +31,31 @@ Performs queries against Active Directory Domain Services. - object to search and perform queries against an Active Directory Domain Services hierarchy using Lightweight Directory Access Protocol (LDAP). LDAP is the only system-supplied Active Directory Service Interfaces (ADSI) provider that supports directory searching. An administrator can make, alter, and delete objects that are found in the hierarchy. For more information, see [Using System.DirectoryServices](https://learn.microsoft.com/previous-versions/ms180832(v=vs.90)). - - When you create an instance of , you specify the root you want to retrieve, and an optional list of properties to retrieve. The property enables you to set additional properties to do the following tasks: - -- Cache the search results on the local computer. Set the property to `true` to store directory information on the local computer. Updates are made to this local cache and committed to Active Directory Domain Services only when the method is called. - -- Specify the length of time to search, using the property. - -- Retrieve attribute names only. Set the property to `true` to retrieve only the names of attributes to which values have been assigned. - -- Perform a paged search. Set the property to specify the maximum number of objects that are returned in a paged search. If you do not want to perform a paged search, set the property to its default of zero. - -- Specify the maximum number of entries to return, using the property. If you set the property to its default of zero, the server-determined default is 1000 entries. - + object to search and perform queries against an Active Directory Domain Services hierarchy using Lightweight Directory Access Protocol (LDAP). LDAP is the only system-supplied Active Directory Service Interfaces (ADSI) provider that supports directory searching. An administrator can make, alter, and delete objects that are found in the hierarchy. For more information, see [Using System.DirectoryServices](https://learn.microsoft.com/previous-versions/ms180832(v=vs.90)). + + When you create an instance of , you specify the root you want to retrieve, and an optional list of properties to retrieve. The property enables you to set additional properties to do the following tasks: + +- Cache the search results on the local computer. Set the property to `true` to store directory information on the local computer. Updates are made to this local cache and committed to Active Directory Domain Services only when the method is called. + +- Specify the length of time to search, using the property. + +- Retrieve attribute names only. Set the property to `true` to retrieve only the names of attributes to which values have been assigned. + +- Perform a paged search. Set the property to specify the maximum number of objects that are returned in a paged search. If you do not want to perform a paged search, set the property to its default of zero. + +- Specify the maximum number of entries to return, using the property. If you set the property to its default of zero, the server-determined default is 1000 entries. + > [!NOTE] -> If the maximum number of returned entries and time limits exceed the limitations that are set on the server, the server settings override the component settings. - - For a list of initial property values for an instance of the class, see the constructor. - +> If the maximum number of returned entries and time limits exceed the limitations that are set on the server, the server settings override the component settings. + + For a list of initial property values for an instance of the class, see the constructor. + > [!NOTE] -> It is assumed that you have a general understanding of Active Directory Domain Services before using this class. For more information, see the overview. - +> It is assumed that you have a general understanding of Active Directory Domain Services before using this class. For more information, see the overview. + ]]> @@ -103,18 +103,18 @@ Initializes a new instance of the class with default values. - object. - -|Property|Initial value| -|--------------|-------------------| -||A null reference (`Nothing` in Visual Basic)| -||"(objectClass=*)"| -||An empty object| -||| - + object. + +|Property|Initial value| +|--------------|-------------------| +||A null reference (`Nothing` in Visual Basic)| +||"(objectClass=*)"| +||An empty object| +||| + ]]> @@ -148,17 +148,17 @@ The node in the Active Directory Domain Services hierarchy where the search starts. The property is initialized to this value. Initializes a new instance of the class using the specified search root. - object. - -|Property|Initial value| -|--------------|-------------------| -||"(objectClass=*)"| -||An empty object| -||| - + object. + +|Property|Initial value| +|--------------|-------------------| +||"(objectClass=*)"| +||An empty object| +||| + ]]> @@ -192,17 +192,17 @@ The search filter string in Lightweight Directory Access Protocol (LDAP) format. The property is initialized to this value. Initializes a new instance of the class with the specified search filter. - object. - -|Property|Initial value| -|--------------|-------------------| -||A null reference (`Nothing` in Visual Basic)| -||An empty object| -||| - + object. + +|Property|Initial value| +|--------------|-------------------| +||A null reference (`Nothing` in Visual Basic)| +||An empty object| +||| + ]]> @@ -238,16 +238,16 @@ The search filter string in Lightweight Directory Access Protocol (LDAP) format. The property is initialized to this value. Initializes a new instance of the class with the specified search root and search filter. - object. - -|Property|Initial value| -|--------------|-------------------| -||An empty object.| -||| - + object. + +|Property|Initial value| +|--------------|-------------------| +||An empty object.| +||| + ]]> @@ -290,16 +290,16 @@ The set of properties to retrieve during the search. The property is initialized to this value. Initializes a new instance of the class with the specified search filter and properties to retrieve. - object. - -|Property|Initial value| -|--------------|-------------------| -||A null reference (`Nothing` in Visual Basic)| -||| - + object. + +|Property|Initial value| +|--------------|-------------------| +||A null reference (`Nothing` in Visual Basic)| +||| + ]]> @@ -344,15 +344,15 @@ The set of properties that are retrieved during the search. The property is initialized to this value. Initializes a new instance of the class with the specified search root, search filter, and properties to retrieve. - object. - -|Property|Initial value| -|--------------|-------------------| -||| - + object. + +|Property|Initial value| +|--------------|-------------------| +||| + ]]> @@ -397,15 +397,15 @@ The scope of the search that is observed by the server. The property is initialized to this value. Initializes a new instance of the class with the specified search filter, properties to retrieve, and search scope. - object. - -|Property|Initial value| -|--------------|-------------------| -||A null reference (`Nothing` in Visual Basic)| - + object. + +|Property|Initial value| +|--------------|-------------------| +||A null reference (`Nothing` in Visual Basic)| + ]]> @@ -496,32 +496,32 @@ if the search is asynchronous; otherwise. - @@ -575,41 +575,41 @@ SearchResultCollection res = src.FindAll(); Gets or sets the LDAP display name of the distinguished name attribute to search in. Only one attribute can be used for this type of search. The LDAP display name of the attribute to perform the search against, or an empty string of no attribute scope query is set. - is set to "member," then the search will be performed against all objects that are members of the group. For more information, see the [Group class](/windows/desktop/adschema/c-group) article. - - When the property is used, the property must be set to . If the property is set to any other value, setting the property will throw an . - - For more information, see the [Performing an Attribute Scope Query](/windows/desktop/adsi/performing-an-attribute-scoped-query). - - - -## Examples - The following example shows how to use the property with the member attribute to get the members of a group. It then prints out the first and last names of the members and their telephone numbers. - -```csharp + + When the property is used, the property must be set to . If the property is set to any other value, setting the property will throw an . + + For more information, see the [Performing an Attribute Scope Query](/windows/desktop/adsi/performing-an-attribute-scoped-query). + + + +## Examples + The following example shows how to use the property with the member attribute to get the members of a group. It then prints out the first and last names of the members and their telephone numbers. + +```csharp using System; -using System.DirectoryServices; +using System.DirectoryServices; public class Example { public static void Main() { - DirectoryEntry group = new DirectoryEntry("LDAP://CN=MyGroup", …); - DirectorySearcher src = new DirectorySearcher("(&(objectClass=user)(objectCategory=Person))"); + DirectoryEntry group = new DirectoryEntry("LDAP://CN=MyGroup", …); + DirectorySearcher src = new DirectorySearcher("(&(objectClass=user)(objectCategory=Person))"); src.SearchRoot = group; - src.AttributeScopeQuery = "member"; + src.AttributeScopeQuery = "member"; src.PropertiesToLoad.Add("sn"); - src.PropertiesToLoad.Add("givenName"); - src.PropertiesToLoad.Add("telephoneNumber"); + src.PropertiesToLoad.Add("givenName"); + src.PropertiesToLoad.Add("telephoneNumber"); - foreach(SearchResult res in src.FindAll()) - { - Console.WriteLine("…"); + foreach(SearchResult res in src.FindAll()) + { + Console.WriteLine("…"); } } } @@ -655,11 +655,11 @@ public class Example if the result is cached on the client computer; otherwise, . The default is . - object creates a new enumerator object each time it is called. - + object creates a new enumerator object each time it is called. + ]]> @@ -692,17 +692,17 @@ public class Example Gets or sets the maximum amount of time that the client waits for the server to return results. If the server does not respond within this time, the search is aborted and no results are returned. - A structure that contains the maximum amount of time for the client to wait for the server to return results. - + A structure that contains the maximum amount of time for the client to wait for the server to return results. + The default value is -1 second, which means to wait indefinitely. - is reached before the client times out, the server returns its results and the client stops waiting. The maximum server time limit is 120 seconds. - + is reached before the client times out, the server returns its results and the client stops waiting. The maximum server time limit is 120 seconds. + ]]> @@ -745,25 +745,25 @@ public class Example Gets or sets a value indicating how the aliases of objects that are found during a search should be resolved. A value that specifies the behavior in which aliases are dereferenced. The default setting for this property is . - property to , so that it dereferences aliases when both searching subordinates and locating base objects. - -``` -using System.DirectoryServices; -... -// Bind to the users container. -DirectoryEntry entry = new DirectoryEntry("LDAP://CN=users,DC=fabrikam,DC=com"); -// Create a DirectorySearcher object. -DirectorySearcher mySearcher = new DirectorySearcher(entry); -// Set DerefAlias to Always. -src.DerefAlias = DereferenceAlias.Always; -//Use the FindAll method to get search results. -SearchResultCollection res = src.FindAll(); - -``` - + property to , so that it dereferences aliases when both searching subordinates and locating base objects. + +``` +using System.DirectoryServices; +... +// Bind to the users container. +DirectoryEntry entry = new DirectoryEntry("LDAP://CN=users,DC=fabrikam,DC=com"); +// Create a DirectorySearcher object. +DirectorySearcher mySearcher = new DirectorySearcher(entry); +// Set DerefAlias to Always. +src.DerefAlias = DereferenceAlias.Always; +//Use the FindAll method to get search results. +SearchResultCollection res = src.FindAll(); + +``` + ]]> @@ -811,13 +811,13 @@ SearchResultCollection res = src.FindAll(); Gets or sets an object that represents the directory synchronization control to use with the search. The object for the search. if the directory synchronization control should not be used. - @@ -889,21 +889,21 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value that indicates the format of the distinguished names. One of the values. - @@ -963,23 +963,23 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value indicating the Lightweight Directory Access Protocol (LDAP) format filter string. The search filter string in LDAP format, such as "(objectClass=user)". The default is "(objectClass=*)", which retrieves all objects. - =, and >. An example is "(objectClass=user)". Another example is "(lastName>=Davis)". - -3. Compound expressions are formed with the prefix operators & and |. An example is "(&(objectClass=user)(lastName= Davis))". Another example is "(&(objectClass=printer)(|(building=42)(building=43)))". - - When the filter contains an attribute of ADS_UTC_TIME type, its value must be of the yyyymmddhhmmssZ format where y, m, d, h, m, and s stand for year, month, day, hour, minute, and second, respectively. The seconds (ss) value is optional. The final letter Z means there is no time differential. In this format, "10:20:00 A.M. May 13, 1999" becomes "19990513102000Z". Note that Active Directory Domain Services stores date and time as Coordinated Universal Time (Greenwich Mean Time). If you specify a time with no time differential, you are specifying the time in GMT time. - - If you are not in the Coordinated Universal Time time zone, you can add a differential value to the Coordinated Universal Time (instead of specifying Z) to specify a time according to your time zone. The differential is based on the following: differential = Coordinated Universal Time- Local. To specify a differential, use the following format: yyyymmddhhmmss[+/-]hhmm. For example, "8:52:58 P.M. March 23, 1999" New Zealand Standard Time (the differential is 12 hours) is specified as "19990323205258.0+1200". - - For more information about the LDAP search string format, see [Search Filter Syntax](/windows/desktop/adsi/search-filter-syntax). - + =, and >. An example is "(objectClass=user)". Another example is "(lastName>=Davis)". + +3. Compound expressions are formed with the prefix operators & and |. An example is "(&(objectClass=user)(lastName= Davis))". Another example is "(&(objectClass=printer)(|(building=42)(building=43)))". + + When the filter contains an attribute of ADS_UTC_TIME type, its value must be of the yyyymmddhhmmssZ format where y, m, d, h, m, and s stand for year, month, day, hour, minute, and second, respectively. The seconds (ss) value is optional. The final letter Z means there is no time differential. In this format, "10:20:00 A.M. May 13, 1999" becomes "19990513102000Z". Note that Active Directory Domain Services stores date and time as Coordinated Universal Time (Greenwich Mean Time). If you specify a time with no time differential, you are specifying the time in GMT time. + + If you are not in the Coordinated Universal Time time zone, you can add a differential value to the Coordinated Universal Time (instead of specifying Z) to specify a time according to your time zone. The differential is based on the following: differential = Coordinated Universal Time- Local. To specify a differential, use the following format: yyyymmddhhmmss[+/-]hhmm. For example, "8:52:58 P.M. March 23, 1999" New Zealand Standard Time (the differential is 12 hours) is specified as "19990323205258.0+1200". + + For more information about the LDAP search string format, see [Search Filter Syntax](/windows/desktop/adsi/search-filter-syntax). + ]]> @@ -1009,11 +1009,11 @@ SearchResultCollection res = src.FindAll(); Executes the search and returns a collection of the entries that are found. A object that contains the results of the search. - class cannot release all of its unmanaged resources when it is garbage collected. To prevent a memory leak, you must call the method when the object is no longer needed. - + class cannot release all of its unmanaged resources when it is garbage collected. To prevent a memory leak, you must call the method when the object is no longer needed. + ]]> The specified is not a container. @@ -1047,11 +1047,11 @@ SearchResultCollection res = src.FindAll(); Executes the search and returns only the first entry that is found. A object that contains the first entry that is found during the search. - @@ -1091,11 +1091,11 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value indicating the page size in a paged search. The maximum number of objects the server can return in a paged search. The default is zero, which means do not do a paged search. - property, it will stop searching and return the results to the client. When the client requests more data, the server will restart the search where it left off. - + property, it will stop searching and return the results to the client. When the client requests more data, the server will restart the search where it left off. + ]]> The new value is less than zero. @@ -1149,17 +1149,17 @@ SearchResultCollection res = src.FindAll(); Gets a value indicating the list of properties to retrieve during the search. - A object that contains the set of properties to retrieve during the search. - + A object that contains the set of properties to retrieve during the search. + The default is an empty , which retrieves all properties. - @@ -1236,11 +1236,11 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value indicating how referrals are chased. One of the values. The default is . - The value is not one of the values. @@ -1282,31 +1282,31 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value indicating the node in the Active Directory Domain Services hierarchy where the search starts. The object in the Active Directory Domain Services hierarchy where the search starts. The default is a null reference ( in Visual Basic). - is a null reference (`Nothing` in Visual Basic), the search root is set to the root of the domain that your server is currently using. - - There are several ways to search in the global catalog: - -- Enumerate the global catalog and pick the first child. - -- Specify the server name. Use the DsGetDcName function to find the global catalog. For more information on the DsGetDcName function, see the [DsGetDcName](/windows/win32/api/dsgetdc/nf-dsgetdc-dsgetdcnamea). - -- Get the RootDSE of the global catalog and ask for "rootNamingContext". - -- Use the global catalog, specifying a search path as if using LDAP. For example, "GC://OU=..., DC=..., DC=...". - -- The following C# code shows how to enumerate the global catalog and pick the first child. - - ```csharp - DirectoryEntry entry = new DirectoryEntry("GC://forestname"); - IEnumerator ie = entry.Children.GetEnumerator(); - ie.MoveNext(); - entry = (DirectoryEntry)ie.Current; - DirectorySearcher search = new DirectorySearcher(entry); - ``` - + is a null reference (`Nothing` in Visual Basic), the search root is set to the root of the domain that your server is currently using. + + There are several ways to search in the global catalog: + +- Enumerate the global catalog and pick the first child. + +- Specify the server name. Use the DsGetDcName function to find the global catalog. For more information on the DsGetDcName function, see the [DsGetDcName](/windows/win32/api/dsgetdc/nf-dsgetdc-dsgetdcnamea). + +- Get the RootDSE of the global catalog and ask for "rootNamingContext". + +- Use the global catalog, specifying a search path as if using LDAP. For example, "GC://OU=..., DC=..., DC=...". + +- The following C# code shows how to enumerate the global catalog and pick the first child. + + ```csharp + DirectoryEntry entry = new DirectoryEntry("GC://forestname"); + IEnumerator ie = entry.Children.GetEnumerator(); + ie.MoveNext(); + entry = (DirectoryEntry)ie.Current; + DirectorySearcher search = new DirectorySearcher(entry); + ``` + ]]> @@ -1394,20 +1394,20 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value indicating which security access information for the specified attributes should be returned by the search. One of the values. - @@ -1441,20 +1441,20 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value indicating the maximum amount of time the server should search for an individual page of results. This is not the same as the time limit for the entire search. - A that represents the amount of time the server should search for a page of results. - + A that represents the amount of time the server should search for a page of results. + The default value is -1 seconds, which means to search indefinitely. - [!NOTE] -> This property only applies to searches where is set to a value that is not the default of 0. - +> This property only applies to searches where is set to a value that is not the default of 0. + ]]> @@ -1489,22 +1489,22 @@ SearchResultCollection res = src.FindAll(); The property gets or sets a value indicating the maximum amount of time the server spends searching. If the time limit is reached, only entries that are found up to that point are returned. - A that represents the amount of time that the server should search. - + A that represents the amount of time that the server should search. + The default value is -1 seconds, which means to use the server-determined default of 120 seconds. - property, the property indicates the total amount of time that the server will spend on a search. When the time limit is reached, the server stops searching and returns the results that have accumulated up to that point. - - Set to -1 second to use the server-determined default. - + property, the property indicates the total amount of time that the server will spend on a search. When the time limit is reached, the server stops searching and returns the results that have accumulated up to that point. + + Set to -1 second to use the server-determined default. + > [!NOTE] -> If you set to a value that is larger than the server-determined default of 120 seconds, the server-determined default is used. After the server time limit is reached, you cannot continue a search from where it left off. - +> If you set to a value that is larger than the server-determined default of 120 seconds, the server-determined default is used. After the server time limit is reached, you cannot continue a search from where it left off. + ]]> @@ -1545,14 +1545,14 @@ SearchResultCollection res = src.FindAll(); Gets or sets a value indicating the maximum number of objects that the server returns in a search. The maximum number of objects that the server returns in a search. The default value is zero, which means to use the server-determined default size limit of 1000 entries. - [!NOTE] -> If you set to a value that is larger than the server-determined default of 1000 entries, the server-determined default is used. - +> If you set to a value that is larger than the server-determined default of 1000 entries, the server-determined default is used. + ]]> The new value is less than zero. @@ -1642,23 +1642,23 @@ SearchResultCollection res = src.FindAll(); if deleted objects should be included in the search; otherwise. The default value is . - property to `true`. - -```csharp -using System.DirectoryServices; -... -// Create a DirectorySearcher object. -DirectorySearcher src = new DirectorySearcher("(isDeleted=true)"); -//Set the Tombstone property to true. -src.Tombstone = true; -//Use the FindAll method to get search results. -SearchResultCollection res = src.FindAll(); - -``` - + property to `true`. + +```csharp +using System.DirectoryServices; +... +// Create a DirectorySearcher object. +DirectorySearcher src = new DirectorySearcher("(isDeleted=true)"); +//Set the Tombstone property to true. +src.Tombstone = true; +//Use the FindAll method to get search results. +SearchResultCollection res = src.FindAll(); + +``` + ]]> diff --git a/xml/System.Drawing.Design/IToolboxService.xml b/xml/System.Drawing.Design/IToolboxService.xml index a7c5c4cdef4..8f9433883b6 100644 --- a/xml/System.Drawing.Design/IToolboxService.xml +++ b/xml/System.Drawing.Design/IToolboxService.xml @@ -36,68 +36,68 @@ Provides methods and properties to manage and query the toolbox in the development environment. - interface provides properties and methods for adding and removing toolbox items and toolbox creator callback delegates, serializing and deserializing toolbox items, and retrieving toolbox state information and managing toolbox state. - - You can retrieve information about the contents of the toolbox with the following methods: - -- The property indicates the categories currently available on the toolbox. - -- The property indicates the currently selected toolbox category. - -- The method retrieves the items on the toolbox, optionally filtered by a specified toolbox category. - -- The method retrieves the currently selected . - -- The method selects the specified as the current toolbox item. - -- The method indicates whether the specified serialized object, if it is a , is supported by the specified designer host, or whether it matches the specified attributes. - -- The method indicates whether the specified serialized object is a . - - You can add and remove toolbox items with the following methods: - -- The method adds a to the toolbox, creating the optionally specified category if it does not exist. - -- The method adds a that is only enabled for the current project to the toolbox. - -- The method removes the specified . - -- The method adds a delegate capable of converting some type of data stored on the toolbox to a . - -- The method removes any delegates for the specified data type. - - You can refresh the toolbox, mark a toolbox item as used, or set the mouse cursor to a cursor that represents the current toolbox item using the following methods: - -- The method refreshes the toolbox display to reflect the current state of the toolbox items. - -- The method signals the toolbox that the selected toolbox item has been used. - -- The method sets the mouse cursor to a cursor that represents the current toolbox item. - - You can use the toolbox to serialize or deserialize a toolbox item using the following methods: - -- The method attempts to return a from the specified serialized toolbox item object. - -- The method returns a serialized object representing the specified . - - - -## Examples - The following code example demonstrates the use of the in design mode to list and select toolbox categories and items, and to create components or controls from toolbox items and add them to a . To use the example, compile the code to an assembly, and add a reference to the assembly in a Windows Forms application. If you are using Visual Studio, the `IToolboxServiceControl` is automatically added to the **Toolbox**. Create an instance of the `IToolboxServiceControl` on a form to test its behavior. - + interface provides properties and methods for adding and removing toolbox items and toolbox creator callback delegates, serializing and deserializing toolbox items, and retrieving toolbox state information and managing toolbox state. + + You can retrieve information about the contents of the toolbox with the following methods: + +- The property indicates the categories currently available on the toolbox. + +- The property indicates the currently selected toolbox category. + +- The method retrieves the items on the toolbox, optionally filtered by a specified toolbox category. + +- The method retrieves the currently selected . + +- The method selects the specified as the current toolbox item. + +- The method indicates whether the specified serialized object, if it is a , is supported by the specified designer host, or whether it matches the specified attributes. + +- The method indicates whether the specified serialized object is a . + + You can add and remove toolbox items with the following methods: + +- The method adds a to the toolbox, creating the optionally specified category if it does not exist. + +- The method adds a that is only enabled for the current project to the toolbox. + +- The method removes the specified . + +- The method adds a delegate capable of converting some type of data stored on the toolbox to a . + +- The method removes any delegates for the specified data type. + + You can refresh the toolbox, mark a toolbox item as used, or set the mouse cursor to a cursor that represents the current toolbox item using the following methods: + +- The method refreshes the toolbox display to reflect the current state of the toolbox items. + +- The method signals the toolbox that the selected toolbox item has been used. + +- The method sets the mouse cursor to a cursor that represents the current toolbox item. + + You can use the toolbox to serialize or deserialize a toolbox item using the following methods: + +- The method attempts to return a from the specified serialized toolbox item object. + +- The method returns a serialized object representing the specified . + + + +## Examples + The following code example demonstrates the use of the in design mode to list and select toolbox categories and items, and to create components or controls from toolbox items and add them to a . To use the example, compile the code to an assembly, and add a reference to the assembly in a Windows Forms application. If you are using Visual Studio, the `IToolboxServiceControl` is automatically added to the **Toolbox**. Create an instance of the `IToolboxServiceControl` on a form to test its behavior. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/IToolboxServiceExample1/CPP/itoolboxservicecontrol.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Design/IToolboxService/Overview/itoolboxservicecontrol.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/IToolboxServiceExample1/VB/itoolboxservicecontrol.vb" id="Snippet1"::: - - The following code example provides a component that uses the to add a "Text" data format handler, or , to the toolbox. The data creator callback delegate passes any text data pasted to the toolbox and dragged onto a form to a custom that creates a containing the text. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/IToolboxServiceExample1/VB/itoolboxservicecontrol.vb" id="Snippet1"::: + + The following code example provides a component that uses the to add a "Text" data format handler, or , to the toolbox. The data creator callback delegate passes any text data pasted to the toolbox and dragged onto a form to a custom that creates a containing the text. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/ToolboxCreatorCallbackSample/CPP/textdatatextboxcomponent.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Design/IToolboxService/Overview/textdatatextboxcomponent.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ToolboxCreatorCallbackSample/VB/textdatatextboxcomponent.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ToolboxCreatorCallbackSample/VB/textdatatextboxcomponent.vb" id="Snippet1"::: + ]]> @@ -147,11 +147,11 @@ The data format that the creator handles. Adds a new toolbox item creator for a specified data format. - . If a creator handles more than one format, call more than once. Unexpected behavior may result if you add more than one creator for the same format. - + . If a creator handles more than one format, call more than once. Unexpected behavior may result if you add more than one creator for the same format. + ]]> @@ -195,13 +195,13 @@ The that represents the designer host to associate with the creator. Adds a new toolbox item creator for a specified data format and designer host. - . If a creator handles more than one format, call more than once. Unexpected behavior may result if you add more than one creator for the same format. - - If the `host` parameter is set to `null`, the creator will be available to all designers. If a designer host is supplied, the creator will only be available to designers using the specified host. - + . If a creator handles more than one format, call more than once. Unexpected behavior may result if you add more than one creator for the same format. + + If the `host` parameter is set to `null`, the creator will be available to all designers. If a designer host is supplied, the creator will only be available to designers using the specified host. + ]]> @@ -252,11 +252,11 @@ The for the current design document. Adds the specified project-linked toolbox item to the toolbox. - @@ -299,11 +299,11 @@ The for the current design document. Adds the specified project-linked toolbox item to the toolbox in the specified category. - @@ -588,11 +588,11 @@ Gets the currently selected toolbox item if it is available to all designers, or if it supports the specified designer. The that is currently selected, or if no toolbox item is currently selected. - if it is not designer specific, and only returns a designer-specific currently selected if the type of the designer host specified in the `host` parameter matches the type of designer that the currently selected supports. - + if it is not designer specific, and only returns a designer-specific currently selected if the type of the designer host specified in the `host` parameter matches the type of designer that the currently selected supports. + ]]> @@ -960,11 +960,11 @@ Refreshes the state of the toolbox items. - method is used to indicate to the toolbox service that the user wants to update the cache of toolbox items. If the toolbox service maintains a live list of toolbox item containers, then this method will do nothing. If it maintains a snapshot of toolbox item containers, calling this method should ensure that the snapshot is up to date. - + method is used to indicate to the toolbox service that the user wants to update the cache of toolbox items. If the toolbox service maintains a live list of toolbox item containers, then this method will do nothing. If it maintains a snapshot of toolbox item containers, calling this method should ensure that the snapshot is up to date. + ]]> @@ -1236,11 +1236,11 @@ Gets a serializable object that represents the specified toolbox item. An object that represents the specified . - to an object that can be persisted. The returned object can be stored in a stream or passed around in a drag-and-drop or clipboard operation. - + to an object that can be persisted. The returned object can be stored in a stream or passed around in a drag-and-drop or clipboard operation. + ]]> @@ -1278,11 +1278,11 @@ if the cursor is set by the currently selected tool, if there is no tool selected and the cursor is set to the standard windows cursor. - diff --git a/xml/System.Drawing.Design/ToolboxItem.xml b/xml/System.Drawing.Design/ToolboxItem.xml index b24aa25d446..35eab18831c 100644 --- a/xml/System.Drawing.Design/ToolboxItem.xml +++ b/xml/System.Drawing.Design/ToolboxItem.xml @@ -43,53 +43,53 @@ Provides a base implementation of a toolbox item. - is a base class for toolbox items that can be displayed in the toolbox of a design-time environment. A toolbox item typically represents a component to create when invoked on a design mode document. The class provides the methods and properties needed to provide the toolbox with the display properties for the toolbox item, to create a component or components when used, and to serialize and deserialize itself for persistence within the toolbox database. - - An instance of the class can be configured with a name, bitmap, and type to create, without creating a class that derives from . The class also provides a base class for custom toolbox item implementations. A custom can create multiple components. To implement a custom toolbox item, you must derive from and override the , , and methods. - - The following properties and methods must be configured for a to function correctly: - -- The property specifies the label for the toolbox item when displayed in a toolbox. - -- The property specifies the fully qualified name of the type of the component that the item creates. If a derived class creates multiple components, the property may or may not be used, contingent on whether a method override depends on the value of this property. - -- The property specifies the assembly that contains the type of a component that the item creates. - -- The property optionally specifies a bitmap image to display next to the display name for the toolbox item in the toolbox. - -- The property optionally contains any objects that determine whether the toolbox item can be used on a particular component. - -- The method returns the component instance or instances to insert where this tool is used. - -- The method saves the toolbox item to a specified . - -- The method configures the toolbox item from the state information contained in the specified . - -- The method configures the toolbox item to create the specified type of component, if the method has not been overridden to behave differently. - -- The property indicates whether the properties of the toolbox item can be changed. A toolbox item is typically locked after it is added to a toolbox. - -- The method locks a toolbox item. - -- The method throws an exception if the property is `true`. - - - -## Examples - The following code example provides a component that uses the interface to add a text data format handler, or , to the toolbox. The data creator callback delegate passes any text data pasted to the toolbox and dragged onto a form to a custom that creates a containing the text. - + is a base class for toolbox items that can be displayed in the toolbox of a design-time environment. A toolbox item typically represents a component to create when invoked on a design mode document. The class provides the methods and properties needed to provide the toolbox with the display properties for the toolbox item, to create a component or components when used, and to serialize and deserialize itself for persistence within the toolbox database. + + An instance of the class can be configured with a name, bitmap, and type to create, without creating a class that derives from . The class also provides a base class for custom toolbox item implementations. A custom can create multiple components. To implement a custom toolbox item, you must derive from and override the , , and methods. + + The following properties and methods must be configured for a to function correctly: + +- The property specifies the label for the toolbox item when displayed in a toolbox. + +- The property specifies the fully qualified name of the type of the component that the item creates. If a derived class creates multiple components, the property may or may not be used, contingent on whether a method override depends on the value of this property. + +- The property specifies the assembly that contains the type of a component that the item creates. + +- The property optionally specifies a bitmap image to display next to the display name for the toolbox item in the toolbox. + +- The property optionally contains any objects that determine whether the toolbox item can be used on a particular component. + +- The method returns the component instance or instances to insert where this tool is used. + +- The method saves the toolbox item to a specified . + +- The method configures the toolbox item from the state information contained in the specified . + +- The method configures the toolbox item to create the specified type of component, if the method has not been overridden to behave differently. + +- The property indicates whether the properties of the toolbox item can be changed. A toolbox item is typically locked after it is added to a toolbox. + +- The method locks a toolbox item. + +- The method throws an exception if the property is `true`. + + + +## Examples + The following code example provides a component that uses the interface to add a text data format handler, or , to the toolbox. The data creator callback delegate passes any text data pasted to the toolbox and dragged onto a form to a custom that creates a containing the text. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/ToolboxCreatorCallbackSample/CPP/textdatatextboxcomponent.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Design/IToolboxService/Overview/textdatatextboxcomponent.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ToolboxCreatorCallbackSample/VB/textdatatextboxcomponent.vb" id="Snippet1"::: - - The following code example demonstrates the use of the class as a base class for a custom toolbox item implementation. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/ToolboxCreatorCallbackSample/VB/textdatatextboxcomponent.vb" id="Snippet1"::: + + The following code example demonstrates the use of the class as a base class for a custom toolbox item implementation. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ToolboxItemAttribute/Overview/Form1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet1"::: + ]]> @@ -108,14 +108,14 @@ Initializes a new instance of the class. - constructor in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. - + constructor in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ToolboxItemAttribute/Overview/Form1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet3"::: + ]]> @@ -153,14 +153,14 @@ Initializes a new instance of the class. - constructor in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. - + constructor in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ToolboxItemAttribute/Overview/Form1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet3"::: + ]]> @@ -197,14 +197,14 @@ The type of that the toolbox item creates. Initializes a new instance of the class that creates the specified type of component. - constructor in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. - + constructor in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ToolboxItemAttribute/Overview/Form1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet3"::: + ]]> The was locked. @@ -242,11 +242,11 @@ Gets or sets the name of the assembly that contains the type or types that the toolbox item creates. An that indicates the assembly containing the type or types to create. - property specifies the assembly that contains the types of the components to create. - + property specifies the assembly that contains the types of the components to create. + ]]> @@ -321,11 +321,11 @@ Throws an exception if the toolbox item is currently locked. - method throws an if the property of the is set to `true`. - + method throws an if the property of the is set to `true`. + ]]> The is locked. @@ -396,13 +396,13 @@ Occurs immediately after components are created. - event is raised each time components of this toolbox item are created. - - For more information about handling events, see [Handling and Raising Events](/dotnet/standard/events/). - + event is raised each time components of this toolbox item are created. + + For more information about handling events, see [Handling and Raising Events](/dotnet/standard/events/). + ]]> @@ -439,13 +439,13 @@ Occurs when components are about to be created. - event is raised each time components of the toolbox item are about to be created. - - For more information about handling events, see [Handling and Raising Events](/dotnet/standard/events/). - + event is raised each time components of the toolbox item are about to be created. + + For more information about handling events, see [Handling and Raising Events](/dotnet/standard/events/). + ]]> @@ -537,11 +537,11 @@ Creates the components that the toolbox item is configured to create. An array of created objects. - method calls the method to retrieve an array of type containing the components to create. - + method calls the method to retrieve an array of type containing the components to create. + ]]> @@ -582,11 +582,11 @@ Creates the components that the toolbox item is configured to create, using the specified designer host. An array of created objects. - method calls the method to retrieve an array of type containing the components to create. - + method calls the method to retrieve an array of type containing the components to create. + ]]> @@ -629,11 +629,11 @@ Creates the components that the toolbox item is configured to create, using the specified designer host and default values. An array of created objects. - method calls the method to retrieve an array of type containing the components to create. - + method calls the method to retrieve an array of type containing the components to create. + ]]> @@ -683,11 +683,11 @@ Creates a component or an array of components when the toolbox item is invoked. An array of created objects. - method adds the new components to the designer. - + method adds the new components to the designer. + ]]> @@ -733,19 +733,19 @@ Creates an array of components when the toolbox item is invoked. An array of created objects. - method adds the new components to the designer. - - - -## Examples - The following code example demonstrates the use of the method in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. - + method adds the new components to the designer. + + + +## Examples + The following code example demonstrates the use of the method in a class derived from for a custom toolbox item implementation. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ToolboxItemAttribute/Overview/Form1.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet5"::: + ]]> @@ -787,11 +787,11 @@ Gets or sets the for the toolbox item. An array of objects. - @@ -865,14 +865,14 @@ A that indicates the stream characteristics. Loads the state of the toolbox item from the specified serialization information object. - class. - + class. + :::code language="csharp" source="~/snippets/csharp/System.ComponentModel/ToolboxItemAttribute/Overview/Form1.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Design.ToolboxItem/VB/Form1.vb" id="Snippet4"::: + ]]> @@ -917,13 +917,13 @@ Gets or sets the display name for the toolbox item. The display name for the toolbox item. - property indicates the string that is displayed for the toolbox item in the toolbox. - - By default, the base class sets its property to a short form of the fully qualified type name specified by the property. - + property indicates the string that is displayed for the toolbox item in the toolbox. + + By default, the base class sets its property to a short form of the fully qualified type name specified by the property. + ]]> @@ -1004,13 +1004,13 @@ Gets or sets the filter that determines whether the toolbox item can be used on a destination component. An of objects. - property collection contains objects that specify the policy that the design-time environment uses to determine whether a toolbox item can be used on the destination component. - - For more information on restricting the scope in which a can be used, see the documentation for the class. - + property collection contains objects that specify the policy that the design-time environment uses to determine whether a toolbox item can be used on the destination component. + + For more information on restricting the scope in which a can be used, see the documentation for the class. + ]]> @@ -1060,11 +1060,11 @@ Filters a property value before returning it. A filtered property value. - method enables a property to always clone values, or to provide a default value when none exists. - + method enables a property to always clone values, or to provide a default value when none exists. + ]]> @@ -1147,11 +1147,11 @@ Enables access to the type associated with the toolbox item. The type associated with the toolbox item. - interface. However, the loaded type is not added to the list of references in the designer host. - + interface. However, the loaded type is not added to the list of references in the designer host. + ]]> @@ -1251,19 +1251,19 @@ The that the toolbox item creates. Initializes the current toolbox item with the specified type to create. - method configures the toolbox item to create the specified type, if the method has not been overridden to behave differently. - - This method performs the following operations: - -- Sets the property to an indicating the assembly of the specified type. - -- Sets the property to a short type name based on the name of the specified type. - -- Adds any attributes found on the specified type to the property collection. - + method configures the toolbox item to create the specified type, if the method has not been overridden to behave differently. + + This method performs the following operations: + +- Sets the property to an indicating the assembly of the specified type. + +- Sets the property to a short type name based on the name of the specified type. + +- Adds any attributes found on the specified type to the property collection. + ]]> The was locked. @@ -1300,11 +1300,11 @@ , if this toolbox item should not be stored in any toolbox database when an application that is providing a toolbox closes; otherwise, . - property defaults to `false`. - + property defaults to `false`. + ]]> @@ -1345,11 +1345,11 @@ Locks the toolbox item and prevents changes to its properties. - @@ -1395,11 +1395,11 @@ if the toolbox item is locked; otherwise, . - is locked, you cannot adjust its properties. - + is locked, you cannot adjust its properties. + ]]> @@ -1440,15 +1440,15 @@ A that provides data for the event. Raises the event. - method raises the event. This method is called after a toolbox item is invoked to create components and the method has returned. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + method raises the event. This method is called after a toolbox item is invoked to create components and the method has returned. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -1492,15 +1492,15 @@ A that provides data for the event. Raises the event. - method raises the event. This method is called after a toolbox item is invoked to create components, just before the method is called. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + method raises the event. This method is called after a toolbox item is invoked to create components, just before the method is called. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -1539,11 +1539,11 @@ Gets or sets the original bitmap that will be used in the toolbox for this item. A that represents the toolbox item in the toolbox. - @@ -1584,13 +1584,13 @@ Gets a dictionary of properties. A dictionary of name/value pairs (the names are property names and the values are property values). - property dictionary becomes read-only after the toolbox item has been locked. - - Values in the properties dictionary are validated through the method, and default values are obtained from the method. - + property dictionary becomes read-only after the toolbox item has been locked. + + Values in the properties dictionary are validated through the method, and default values are obtained from the method. + ]]> @@ -1675,11 +1675,11 @@ The destination (see ) for this serialization. For a description of this member, see the method. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1761,11 +1761,11 @@ Gets or sets the fully qualified name of the type of that the toolbox item creates when invoked. The fully qualified type name of the type of component that this toolbox item creates. - property specifies the fully qualified type name of the type of component to create. - + property specifies the fully qualified type name of the type of component to create. + ]]> @@ -1821,11 +1821,11 @@ to allow ; otherwise, . Validates that an object is of a given type. - method is called as a helper method to the method. - + method is called as a helper method to the method. + ]]> @@ -1878,11 +1878,11 @@ Validates a property before it is assigned to the property dictionary. The value used to perform validation. - method is called whenever a value is set in the property dictionary. With this method, you can change the value of an object before committing it, or reject it by throwing an exception. - + method is called whenever a value is set in the property dictionary. With this method, you can change the value of an object before committing it, or reject it by throwing an exception. + ]]> diff --git a/xml/System.Drawing.Design/ToolboxService.xml b/xml/System.Drawing.Design/ToolboxService.xml index f68efdf8336..56f165d6741 100644 --- a/xml/System.Drawing.Design/ToolboxService.xml +++ b/xml/System.Drawing.Design/ToolboxService.xml @@ -410,15 +410,15 @@ ## Remarks The method scans the assembly for all types that support toolbox items, and return items for those types. To support a toolbox item, a type must have the following characteristics: -- Be public. +- Be public. -- Implement . +- Implement . -- Not be abstract. +- Not be abstract. -- Not have a set to `false` on its type. +- Not have a set to `false` on its type. -- Not contain generic parameters. +- Not contain generic parameters. Assemblies are locked for the duration of a process, so enumerating various files through can cause many assemblies to be loaded. The methods that take an assembly name create a separate to search assemblies. When you are finished enumerating objects for a set of assemblies, you can call the method, which unloads the and frees the file references on the loaded assemblies. @@ -470,15 +470,15 @@ ## Remarks The method scans the assembly for all types that support toolbox items, and return items for those types. To support a toolbox item, a type must have the following characteristics: -- Be public. +- Be public. -- Implement . +- Implement . -- Not be abstract. +- Not be abstract. -- Not have a set to `false` on its type. +- Not have a set to `false` on its type. -- Not contain generic parameters. +- Not contain generic parameters. Assemblies are locked for the duration of a process, so enumerating various files through can cause many assemblies to be loaded. The methods that take an assembly name create a separate to search assemblies. When you are finished enumerating objects for a set of assemblies, you can call the method, which unloads the and frees the file references on the loaded assemblies. @@ -522,15 +522,15 @@ ## Remarks The method scans the assembly for all types that support toolbox items, and return items for those types. To support a toolbox item, a type must have the following characteristics: -- Be public. +- Be public. -- Implement . +- Implement . -- Not be abstract. +- Not be abstract. -- Not have a set to `false` on its type. +- Not have a set to `false` on its type. -- Not contain generic parameters. +- Not contain generic parameters. Assemblies are locked for the duration of a process, so enumerating various files through can cause many assemblies to be loaded. The methods that take an assembly name create a separate to search assemblies. When you are finished enumerating objects for a set of assemblies, you can call the method, which unloads the and frees the file references on the loaded assemblies. @@ -574,15 +574,15 @@ ## Remarks The method scans the assembly for all types that support toolbox items, and return items for those types. To support a toolbox item, a type must have the following characteristics: -- Be public. +- Be public. -- Implement . +- Implement . -- Not be abstract. +- Not be abstract. -- Not have a set to `false` on its type. +- Not have a set to `false` on its type. -- Not contain generic parameters. +- Not contain generic parameters. Assemblies are locked for the duration of a process, so enumerating various files through can cause many assemblies to be loaded. The methods that take an assembly name create a separate to search assemblies. When you are finished enumerating objects for a set of assemblies, you can call the method, which unloads the and frees the file references on the loaded assemblies. diff --git a/xml/System.Drawing.Design/UITypeEditor.xml b/xml/System.Drawing.Design/UITypeEditor.xml index 8cfdf2886c6..15bc1214498 100644 --- a/xml/System.Drawing.Design/UITypeEditor.xml +++ b/xml/System.Drawing.Design/UITypeEditor.xml @@ -34,43 +34,43 @@ Provides a base class that can be used to design value editors that can provide a user interface (UI) for representing and editing the values of objects of the supported data types. - class provides a base class that you can derive from and extend to implement a custom type editor for the design-time environment. Typically, your custom type editor interacts with the control. - - Custom type editors are useful in situations where a text-box value editor is insufficient to effectively select the values of certain types. - - To implement a custom design-time UI type editor, you must perform the following steps: - -- Define a class that derives from . - -- Override the method to handle the user interface, user input processing, and value assignment. - -- Override the method to inform the Properties window of the type of editor style that the editor will use. - - You can add additional support for painting a value's representation in the Properties window by performing the following steps: - -- Override the method to indicate that the editor supports displaying the value's representation. - -- Override the method to implement the display of the value's representation. - -- Override the constructor method if the editor should have initialization behavior. - + class provides a base class that you can derive from and extend to implement a custom type editor for the design-time environment. Typically, your custom type editor interacts with the control. + + Custom type editors are useful in situations where a text-box value editor is insufficient to effectively select the values of certain types. + + To implement a custom design-time UI type editor, you must perform the following steps: + +- Define a class that derives from . + +- Override the method to handle the user interface, user input processing, and value assignment. + +- Override the method to inform the Properties window of the type of editor style that the editor will use. + + You can add additional support for painting a value's representation in the Properties window by performing the following steps: + +- Override the method to indicate that the editor supports displaying the value's representation. + +- Override the method to implement the display of the value's representation. + +- Override the constructor method if the editor should have initialization behavior. + > [!NOTE] -> The class does not support right-to-left (RTL) layouts. - - For more information about enhancing design-time support, see [Extending Design-Time Support](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2010/37899azc(v=vs.100)). For more information on implementing a , see [User Interface Type Editors Overview](https://msdn.microsoft.com/library/f068b4ea-6e8c-4c0b-aefd-188b337240da). - - - -## Examples - The following code example demonstrates that a can be associated with an integer, double, or float property using an to provide an angle selection interface from the Properties window in design mode. This example uses the interface to display a drop-down control in the Properties window in design mode. Compile the code and add the assembly to the Toolbox using the **Customize Toolbox** command on the **Tools** menu of Visual Studio. Create an instance of the `AngleTestControl` and click the drop-down button next to the Angle property in the Properties window to configure the property using the editor. - +> The class does not support right-to-left (RTL) layouts. + + For more information about enhancing design-time support, see [Extending Design-Time Support](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2010/37899azc(v=vs.100)). For more information on implementing a , see [User Interface Type Editors Overview](https://msdn.microsoft.com/library/f068b4ea-6e8c-4c0b-aefd-188b337240da). + + + +## Examples + The following code example demonstrates that a can be associated with an integer, double, or float property using an to provide an angle selection interface from the Properties window in design mode. This example uses the interface to display a drop-down control in the Properties window in design mode. Compile the code and add the assembly to the Toolbox using the **Customize Toolbox** command on the **Tools** menu of Visual Studio. Create an instance of the `AngleTestControl` and click the drop-down button next to the Angle property in the Properties window to configure the property using the editor. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/AngleEditor/CPP/angleeditor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Design/UITypeEditor/Overview/angleeditor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/AngleEditor/VB/angleeditor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/AngleEditor/VB/angleeditor.vb" id="Snippet1"::: + ]]> @@ -175,11 +175,11 @@ Edits the value of the specified object using the editor style indicated by the method. The new value of the object. - @@ -232,11 +232,11 @@ Edits the specified object's value using the editor style indicated by the method. The new value of the object. If the value of the object has not changed, this should return the same object it was passed. - @@ -290,11 +290,11 @@ Gets the editor style used by the method. A enumeration value that indicates the style of editor used by the current . By default, this method will return . - does not override and implement this method, will return by default. - + does not override and implement this method, will return by default. + ]]> @@ -508,20 +508,20 @@ A that indicates what to paint and where to paint it. Paints a representation of the value of an object using the specified . - will be resized based on the system DPI setting when the app.config file contains the following entry: - -``` - - - -``` - + will be resized based on the system DPI setting when the app.config file contains the following entry: + +``` + + + +``` + ]]> @@ -573,20 +573,20 @@ A within whose boundaries to paint the value. Paints a representation of the value of the specified object to the specified canvas. - will be resized based on the system DPI setting when the app.config file contains the following entry: - -``` - - - -``` - + will be resized based on the system DPI setting when the app.config file contains the following entry: + +``` + + + +``` + ]]> diff --git a/xml/System.Drawing.Drawing2D/AdjustableArrowCap.xml b/xml/System.Drawing.Drawing2D/AdjustableArrowCap.xml index 6f06435ef70..7e941408da7 100644 --- a/xml/System.Drawing.Drawing2D/AdjustableArrowCap.xml +++ b/xml/System.Drawing.Drawing2D/AdjustableArrowCap.xml @@ -98,11 +98,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an object named `myArrow`. +- Creates an object named `myArrow`. -- Creates a object named `capPen`, and sets its and properties equal to `myArrow`. +- Creates a object named `capPen`, and sets its and properties equal to `myArrow`. -- Uses the method to draw to screen a line capped by two arrows. +- Uses the method to draw to screen a line capped by two arrows. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicMisc/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/AdjustableArrowCap/.ctor/form1.cs" id="Snippet1"::: @@ -154,11 +154,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an object named `myArrow`. +- Creates an object named `myArrow`. -- Creates a object named `capPen`, and sets its and properties equal to `myArrow`. +- Creates a object named `capPen`, and sets its and properties equal to `myArrow`. -- Uses the method to draw to screen a line capped by two arrows. +- Uses the method to draw to screen a line capped by two arrows. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicMisc/CPP/form1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/AdjustableArrowCap/.ctor/form1.cs" id="Snippet2"::: diff --git a/xml/System.Drawing.Drawing2D/CustomLineCap.xml b/xml/System.Drawing.Drawing2D/CustomLineCap.xml index ce012cd1ef4..38e45ce59be 100644 --- a/xml/System.Drawing.Drawing2D/CustomLineCap.xml +++ b/xml/System.Drawing.Drawing2D/CustomLineCap.xml @@ -366,13 +366,13 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a custom line cap by using the object. +- Creates a custom line cap by using the object. -- Creates a object, `firstCap`,using the object just created. +- Creates a object, `firstCap`,using the object just created. -- Creates a clone of `firstCap` by using the method. +- Creates a clone of `firstCap` by using the method. -- Sets up the and properties of the object, and uses that pen to draw a line and the custom caps to the screen. +- Sets up the and properties of the object, and uses that pen to draw a line and the custom caps to the screen. ```vb Public Sub CloneExample(e As PaintEventArgs) diff --git a/xml/System.Drawing.Drawing2D/GraphicsPath.xml b/xml/System.Drawing.Drawing2D/GraphicsPath.xml index bf1b51c6f70..9b7eec0ad46 100644 --- a/xml/System.Drawing.Drawing2D/GraphicsPath.xml +++ b/xml/System.Drawing.Drawing2D/GraphicsPath.xml @@ -434,13 +434,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a rectangle, from which the arc is defined. +- Creates a rectangle, from which the arc is defined. -- Creates a path, `myPath`. +- Creates a path, `myPath`. -- Defines a 180-degree elliptical arc that sweeps from 0 degrees to 180 degrees and appends it to a path. +- Defines a 180-degree elliptical arc that sweeps from 0 degrees to 180 degrees and appends it to a path. -- Draws the path to screen. +- Draws the path to screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet1"::: @@ -811,13 +811,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Adds a cubic Bézier curve defined by the points (50, 50), (70, 0), (100, 120), and (150, 50) to the path. +- Adds a cubic Bézier curve defined by the points (50, 50), (70, 0), (100, 120), and (150, 50) to the path. -- Closes the curve. +- Closes the curve. -- Draws the path to screen. +- Draws the path to screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet2"::: @@ -958,11 +958,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an array of seven points (representing two connected Bézier curves). +- Creates an array of seven points (representing two connected Bézier curves). -- Creates a path and adds the series of Bézier curve points to the path. +- Creates a path and adds the series of Bézier curve points to the path. -- Draws the path to screen. +- Draws the path to screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet3"::: @@ -1372,11 +1372,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an array of six points (representing a cardinal spline). +- Creates an array of six points (representing a cardinal spline). -- Creates a path and adds the closed cardinal spline curves to the path (closed from the endpoint to the starting point). +- Creates a path and adds the closed cardinal spline curves to the path (closed from the endpoint to the starting point). -- Draws the path to screen. +- Draws the path to screen. Notice that a tension of 0.5 is used. @@ -1920,11 +1920,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an array of four points (representing a cardinal spline). +- Creates an array of four points (representing a cardinal spline). -- Creates a path and using the array of points, adds the curve to the path. +- Creates a path and using the array of points, adds the curve to the path. -- Draws the path to the screen. +- Draws the path to the screen. Notice that while the array holds four points, there are only three segments, which is the number specified in the third argument of the call to . @@ -2490,11 +2490,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an array of four points that describe a triangle. +- Creates an array of four points that describe a triangle. -- Creates a path and adds the array of lines. +- Creates a path and adds the array of lines. -- Draws the path to screen. +- Draws the path to screen. Notice that each line after the first point uses the previous point as the starting point and the new point as the endpoint. @@ -2689,11 +2689,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates two paths one a right-side-up triangle and the other an up-side-down triangle. +- Creates two paths one a right-side-up triangle and the other an up-side-down triangle. -- Adds the second path to the first. +- Adds the second path to the first. -- Draws the resultant path to the screen. +- Draws the resultant path to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet9"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet9"::: @@ -2951,11 +2951,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an array of points that defines a polygon. +- Creates an array of points that defines a polygon. -- Creates a path and adds the polygon to the path. +- Creates a path and adds the polygon to the path. -- Draws the path to the screen. +- Draws the path to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet11"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet11"::: @@ -3154,11 +3154,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Creates a rectangle and adds the rectangle to the path. +- Creates a rectangle and adds the rectangle to the path. -- Draws the path to the screen. +- Draws the path to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet12"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet12"::: @@ -3271,11 +3271,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Creates an array of rectangles and adds the rectangles to the path. +- Creates an array of rectangles and adds the rectangles to the path. -- Draws the path to the screen. +- Draws the path to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet13"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet13"::: @@ -3548,13 +3548,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Sets up string and font arguments. +- Sets up string and font arguments. -- Adds the string to the path. +- Adds the string to the path. -- Draws the string to the screen. +- Draws the string to the screen. There are two important things to be pointed out. First, notice that the `fontStyle` argument is cast as an integer. The method requires this so that two or more members can be combined to create the desired font style (in this case, and ). Secondly, notice that the method is used rather than the method. If is used, solid text is rendered, whereas if is used, the text will be an outline style. @@ -3796,15 +3796,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Adds several objects to the path. +- Adds several objects to the path. -- Adds markers to the path. +- Adds markers to the path. -- Clears all markers from the path. +- Clears all markers from the path. -- Draws the path to the screen. +- Draws the path to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet15"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet15"::: @@ -3855,15 +3855,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Adds several figures to the path. +- Adds several figures to the path. -- Draws the path to the screen. +- Draws the path to the screen. -- Clones a copy of that path. +- Clones a copy of that path. -- Draws the new path to the screen. +- Draws the new path to the screen. Notice that the call the method must be cast as a . @@ -3912,13 +3912,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Adds several open figures to the path. +- Adds several open figures to the path. -- Closes all figures in the path. +- Closes all figures in the path. -- Draws the path to the screen. +- Draws the path to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet17"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet17"::: @@ -4235,15 +4235,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path and a translation matrix. +- Creates a graphics path and a translation matrix. -- Adds a curve to the path using four points. +- Adds a curve to the path using four points. -- Draws the path (curve) to the screen, using a black pen. +- Draws the path (curve) to the screen, using a black pen. -- Shifts the curve down 10 pixels and flattens it. +- Shifts the curve down 10 pixels and flattens it. -- Draws the curve to the screen using, a red pen. +- Draws the curve to the screen using, a red pen. Notice that the red curve has flattened lines connecting the points. @@ -4313,23 +4313,23 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path. +- Creates a graphics path. -- Adds an ellipse (circle) to it and draws it to the screen. +- Adds an ellipse (circle) to it and draws it to the screen. -- Retrieves the bounding rectangle for the circle with a call to and draws the rectangle to the screen. +- Retrieves the bounding rectangle for the circle with a call to and draws the rectangle to the screen. -- Creates a second graphics path. +- Creates a second graphics path. -- Adds a circle and widens the path to a width of 10. +- Adds a circle and widens the path to a width of 10. -- Draws the path to the screen. +- Draws the path to the screen. -- Retrieves the bounding rectangle for the second circle. +- Retrieves the bounding rectangle for the second circle. -- Draws the bounding rectangle to the screen. +- Draws the bounding rectangle to the screen. -- Displays the rectangle size in a dialog box. +- Displays the rectangle size in a dialog box. Notice that the bounding rectangle on the right is larger (to account for the extra width of the line). @@ -4972,13 +4972,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event. The code performs the following actions: -- Creates a path. +- Creates a path. -- Adds a rectangle to the path. +- Adds a rectangle to the path. -- Creates a wide pen and widens the path with that pen (to make the example clearer), +- Creates a wide pen and widens the path with that pen (to make the example clearer), -- Tests a point (100, 50) to see if it lies within (under) one of the edges of the rectangle by calling . +- Tests a point (100, 50) to see if it lies within (under) one of the edges of the rectangle by calling . The result is shown in the message box (in this case, true). In other words the edge is rendered over that point. @@ -5416,11 +5416,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path and adds an ellipse to the path. +- Creates a path and adds an ellipse to the path. -- Tests whether the specified point is contained within the path. +- Tests whether the specified point is contained within the path. -- Displays the result in a dialog box. +- Displays the result in a dialog box. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet23"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet23"::: @@ -5680,17 +5680,17 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Adds several primitives to it. +- Adds several primitives to it. -- Draws the path's points array to the screen. +- Draws the path's points array to the screen. -- Resets the path to an empty state. +- Resets the path to an empty state. -- Re-acquires the points array (if it exists). +- Re-acquires the points array (if it exists). -- Draws the array to the screen. +- Draws the array to the screen. Notice that it finds no array following the reset call. @@ -5739,11 +5739,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path and adds several primitives to the path. +- Creates a path and adds several primitives to the path. -- Draws the path's points array to the screen. +- Draws the path's points array to the screen. -- Draws the reversed points array to the screen. +- Draws the reversed points array to the screen. Notice that the second listing of points is in reverse order from the first. @@ -5851,11 +5851,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path. +- Creates a path. -- Adds two sets of figures. The first set of figures combines four primitives into two figures. The second set of figures combines the same four primitives (except that they are offset in the y-axis) into three figures. +- Adds two sets of figures. The first set of figures combines four primitives into two figures. The second set of figures combines the same four primitives (except that they are offset in the y-axis) into three figures. -- Draws all the figures to the screen. +- Draws all the figures to the screen. Notice the difference in the appearance between the two sets of figures. @@ -5912,13 +5912,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path and adds an ellipse to the path. +- Creates a path and adds an ellipse to the path. -- Draws path to the screen. +- Draws path to the screen. -- Creates a transform matrix to translate the path 100 units in the x-axis direction. +- Creates a transform matrix to translate the path 100 units in the x-axis direction. -- Draws the transformed path to the screen. +- Draws the transformed path to the screen. Notice that the original ellipse is drawn in black and the transformed ellipse is drawn in red. @@ -6176,13 +6176,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path and adds a rectangle to the path. +- Creates a path and adds a rectangle to the path. -- Draws that rectangle to the screen in black. +- Draws that rectangle to the screen in black. -- Warps the path with a perspective warp. +- Warps the path with a perspective warp. -- Draws the warped rectangle (path) to the screen in red. +- Draws the warped rectangle (path) to the screen in red. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathExamples/CPP/form1.cpp" id="Snippet29"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPath/AddArc/form1.cs" id="Snippet29"::: @@ -6422,13 +6422,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a path and adds two ellipses to the path. +- Creates a path and adds two ellipses to the path. -- Draws the path in black. +- Draws the path in black. -- Widens the path. +- Widens the path. -- Draws the path in red. +- Draws the path in red. Notice that the second rendering uses instead of , and hence the rendered figure has the outline filled. diff --git a/xml/System.Drawing.Drawing2D/GraphicsPathIterator.xml b/xml/System.Drawing.Drawing2D/GraphicsPathIterator.xml index 28ba28dda0c..cf967822f7a 100644 --- a/xml/System.Drawing.Drawing2D/GraphicsPathIterator.xml +++ b/xml/System.Drawing.Drawing2D/GraphicsPathIterator.xml @@ -141,19 +141,19 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path. +- Creates a graphics path. -- Populates it with several primitives and some markers. +- Populates it with several primitives and some markers. -- Lists the path data on the left side of the screen. +- Lists the path data on the left side of the screen. -- Creates a and rewinds it. +- Creates a and rewinds it. -- Increments the path data index to the second marker. +- Increments the path data index to the second marker. -- Calls the method to copy the path data contained between the start and end indexes to the points and types arrays. +- Calls the method to copy the path data contained between the start and end indexes to the points and types arrays. -- Lists this copied data on the right side of the screen. +- Lists this copied data on the right side of the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathIterator/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPathIterator/CopyData/form1.cs" id="Snippet1"::: @@ -320,19 +320,19 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path. +- Creates a graphics path. -- Populates it with several primitives and some markers. +- Populates it with several primitives and some markers. -- Lists the path data on the left side of the screen. +- Lists the path data on the left side of the screen. -- Creates a and rewinds it. +- Creates a and rewinds it. -- Increments the path data index to the second marker. +- Increments the path data index to the second marker. -- Calls the method to copy the path data to the `points` and `types` arrays. +- Calls the method to copy the path data to the `points` and `types` arrays. -- Lists this copied data on the right side of the screen. +- Lists this copied data on the right side of the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathIterator/CPP/form1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPathIterator/CopyData/form1.cs" id="Snippet2"::: @@ -456,15 +456,15 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a object, `myPath`. +- Creates a object, `myPath`. -- Adds three lines, a rectangle, and an ellipse. +- Adds three lines, a rectangle, and an ellipse. -- Creates a object for `myPath`. +- Creates a object for `myPath`. -- Tests to see if the current path `myPath` contains a curve. +- Tests to see if the current path `myPath` contains a curve. -- Shows the result of the test in a message box. +- Shows the result of the test in a message box. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathIterator/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPathIterator/CopyData/form1.cs" id="Snippet3"::: @@ -529,21 +529,21 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a object. +- Creates a object. -- Adds three lines, a rectangle, an ellipse, and two markers. +- Adds three lines, a rectangle, an ellipse, and two markers. -- Lists the values of all the path's points to the left side of the screen. +- Lists the values of all the path's points to the left side of the screen. -- Creates a object. +- Creates a object. -- Creates a object, `myPathSection`, to receive copied points. +- Creates a object, `myPathSection`, to receive copied points. -- Calls the method, which iterates to the first marker and copies all the points contained between that marker and the next to `myPathSection`. +- Calls the method, which iterates to the first marker and copies all the points contained between that marker and the next to `myPathSection`. -- Returns the number of points copied to `markerPoints`. +- Returns the number of points copied to `markerPoints`. -- Lists the marker number (the first marker) and number of points it contains to the right side of the screen. +- Lists the marker number (the first marker) and number of points it contains to the right side of the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathIterator/CPP/form1.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPathIterator/CopyData/form1.cs" id="Snippet4"::: @@ -601,19 +601,19 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a object. +- Creates a object. -- Adds three lines, a rectangle, and an ellipse ¾ with markers between each. +- Adds three lines, a rectangle, and an ellipse ¾ with markers between each. -- Draws the values for the array of points to the screen. +- Draws the values for the array of points to the screen. -- Creates a object. +- Creates a object. -- Calls the method. +- Calls the method. -- Uses the values returned from the iterative calls to to draw the start and stop points for each marker to the screen. +- Uses the values returned from the iterative calls to to draw the start and stop points for each marker to the screen. -- Draws the value for the total number of points to the screen. +- Draws the value for the total number of points to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathIterator/CPP/form1.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPathIterator/CopyData/form1.cs" id="Snippet5"::: @@ -668,19 +668,19 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a object. +- Creates a object. -- Adds three lines, a rectangle, and an ellipse. +- Adds three lines, a rectangle, and an ellipse. -- Lists the values of all the points to the left side of the screen. +- Lists the values of all the points to the left side of the screen. -- Creates a and rewinds it. +- Creates a and rewinds it. -- In a `for` loop, iterates through the points using the and methods. +- In a `for` loop, iterates through the points using the and methods. -- Uses the values returned from the iterative calls to list the subpath number, the number of points in it, and the type of the path points to the right side of the screen. +- Uses the values returned from the iterative calls to list the subpath number, the number of points in it, and the type of the path points to the right side of the screen. -- Displays the value for the total number of points to the screen. +- Displays the value for the total number of points to the screen. Note that `ListPathPoints` is a helper function that separates most (not all) of the display code from the graphics path code. @@ -744,19 +744,19 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a object. +- Creates a object. -- Adds three lines, a rectangle, an ellipse, and two markers. +- Adds three lines, a rectangle, an ellipse, and two markers. -- Lists the values of all the path's points to the left side of the screen. +- Lists the values of all the path's points to the left side of the screen. -- Creates a object. +- Creates a object. -- Creates a object, `myPathSection`, to receive copied points. +- Creates a object, `myPathSection`, to receive copied points. -- Calls the method, which iterates to the third subpath (figure) and copies all the points contained in that subpath to the `myPathSection` path, and also returns the number of points copied to `subpathPoints`. +- Calls the method, which iterates to the third subpath (figure) and copies all the points contained in that subpath to the `myPathSection` path, and also returns the number of points copied to `subpathPoints`. -- Lists the subpath number and number of points it contains to the right side of the screen. +- Lists the subpath number and number of points it contains to the right side of the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathIterator/CPP/form1.cpp" id="Snippet7"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPathIterator/CopyData/form1.cs" id="Snippet7"::: @@ -811,19 +811,19 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a object. +- Creates a object. -- Adds three lines, a rectangle, and an ellipse. +- Adds three lines, a rectangle, and an ellipse. -- Draws the values for the array of points to the screen. +- Draws the values for the array of points to the screen. -- Creates a object. +- Creates a object. -- Calls the method. +- Calls the method. -- Uses the values returned from the iterative calls to to draw the start and stop values for each subpath to the screen. +- Uses the values returned from the iterative calls to to draw the start and stop values for each subpath to the screen. -- Draws the value for the total number of subpaths to the screen. +- Draws the value for the total number of subpaths to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicGraphicsPathIterator/CPP/form1.cpp" id="Snippet8"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/GraphicsPathIterator/CopyData/form1.cs" id="Snippet8"::: diff --git a/xml/System.Drawing.Drawing2D/LinearGradientBrush.xml b/xml/System.Drawing.Drawing2D/LinearGradientBrush.xml index 7931b961c67..12f50a70e0d 100644 --- a/xml/System.Drawing.Drawing2D/LinearGradientBrush.xml +++ b/xml/System.Drawing.Drawing2D/LinearGradientBrush.xml @@ -549,13 +549,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a new . +- Creates a new . -- Draws an ellipse to the screen using this brush. +- Draws an ellipse to the screen using this brush. -- Clones the (`clonedLGBrush`). +- Clones the (`clonedLGBrush`). -- Draws an ellipse to the screen directly below the first ellipse, using the cloned brush. +- Draws an ellipse to the screen directly below the first ellipse, using the cloned brush. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicLinearGradientBrush/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/LinearGradientBrush/Clone/form1.cs" id="Snippet1"::: @@ -793,13 +793,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a new . +- Creates a new . -- Draws an ellipse to the screen using this brush. +- Draws an ellipse to the screen using this brush. -- Calls the method, to transform the . +- Calls the method, to transform the . -- Draws an ellipse to the screen directly below the first ellipse, using the transformed brush. +- Draws an ellipse to the screen directly below the first ellipse, using the transformed brush. Notice that the lower ellipse is stretched in the horizontal direction, and that the gradient is stretched to match the new shape. @@ -895,17 +895,17 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a new . +- Creates a new . -- Draws an ellipse to the screen using this brush. +- Draws an ellipse to the screen using this brush. -- Calls the method to transform the . +- Calls the method to transform the . -- Draws an ellipse to the screen directly below the first ellipse, using the transformed brush. +- Draws an ellipse to the screen directly below the first ellipse, using the transformed brush. -- Resets the transform. +- Resets the transform. -- Draws a third ellipse to the screen below the first two. +- Draws a third ellipse to the screen below the first two. Notice that the lowest ellipse is drawn the same size as the first, and that, due to the call to the method, the gradient has been reduced to match. @@ -1018,13 +1018,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code -- Creates a new . +- Creates a new . -- Draws an ellipse to the screen using this brush. +- Draws an ellipse to the screen using this brush. -- Rotates the 45 degrees by calling the method. +- Rotates the 45 degrees by calling the method. -- Draws an ellipse to the screen directly below the first ellipse, using the rotated brush. +- Draws an ellipse to the screen directly below the first ellipse, using the rotated brush. Notice that the gradient of the lower ellipse is at a 45 degree angle to the x-axis of the top ellipse. Also notice that a call to the method is used to justify the left edge of the gradient fill with the left edge of the lower ellipse. @@ -1141,13 +1141,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a new . +- Creates a new . -- Draw an ellipse to the screen using this brush. +- Draw an ellipse to the screen using this brush. -- Scales the by a factor of two in the x-axis. +- Scales the by a factor of two in the x-axis. -- Draws an ellipse to the screen directly below the first ellipse, using the scaled brush. +- Draws an ellipse to the screen directly below the first ellipse, using the scaled brush. Notice that the gradient of the lower ellipse is stretched by a factor of two. Also notice that a call to the method is used to justify the left edge of the gradient fill with the left edge of ellipse. @@ -1270,13 +1270,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a new . +- Creates a new . -- Uses this brush to draw an ellipse to the screen that has a linear, left-to-right transition of colors. +- Uses this brush to draw an ellipse to the screen that has a linear, left-to-right transition of colors. -- Transforms the into a triangular shape with its peak in the center. +- Transforms the into a triangular shape with its peak in the center. -- Draws a second ellipse to the screen using the transformed brush. +- Draws a second ellipse to the screen using the transformed brush. Notice that the gradient of the lower ellipse transitions from blue to red and then back to blue. @@ -1399,13 +1399,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a new . +- Creates a new . -- Uses this brush to draw an ellipse to the screen that has a linear, left-to-right transition of colors. +- Uses this brush to draw an ellipse to the screen that has a linear, left-to-right transition of colors. -- Transforms the to have a bell shaped curve with its peak in the center. +- Transforms the to have a bell shaped curve with its peak in the center. -- Draws a second ellipse to the screen using the bell-shaped brush. +- Draws a second ellipse to the screen using the bell-shaped brush. Notice that the gradient of the lower ellipse transitions from blue to red and then back to blue. @@ -1573,17 +1573,17 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a new . +- Creates a new . -- Uses this brush to draw a rectangle to the screen that has a linear, left-to-right transition of colors. +- Uses this brush to draw a rectangle to the screen that has a linear, left-to-right transition of colors. -- Rotates the by 90 degrees and scales the gradient. +- Rotates the by 90 degrees and scales the gradient. -- Draws the rectangle, with the rotated and scaled gradient, to the screen. +- Draws the rectangle, with the rotated and scaled gradient, to the screen. -- Translates the rectangle so that it has a linear gradient running from top to bottom. +- Translates the rectangle so that it has a linear gradient running from top to bottom. -- Draws the translated rectangle to the screen. +- Draws the translated rectangle to the screen. Notice that there are three rectangles displayed the top one showing the left-to-right gradient, the middle one showing the rotated and scaled gradient, and the bottom one showing the final, translated gradient. diff --git a/xml/System.Drawing.Drawing2D/Matrix.xml b/xml/System.Drawing.Drawing2D/Matrix.xml index 2769f144ee2..052193f062d 100644 --- a/xml/System.Drawing.Drawing2D/Matrix.xml +++ b/xml/System.Drawing.Drawing2D/Matrix.xml @@ -753,23 +753,23 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates three matrices. +- Creates three matrices. -- Lists the contents of matrix 1 to the screen. +- Lists the contents of matrix 1 to the screen. -- Multiplies matrix 1 by matrix 2 and stores the result in matrix 1. +- Multiplies matrix 1 by matrix 2 and stores the result in matrix 1. -- Lists the contents of matrix 1 to the screen. +- Lists the contents of matrix 1 to the screen. -- Multiplies the result stored in matrix 1 by matrix 3, and again stores the result in matrix 1. +- Multiplies the result stored in matrix 1 by matrix 3, and again stores the result in matrix 1. -- Lists the contents of matrix 1 to the screen. +- Lists the contents of matrix 1 to the screen. -- Draws a rectangle to the screen prior to applying the matrix 1 transform (the blue rectangle). +- Draws a rectangle to the screen prior to applying the matrix 1 transform (the blue rectangle). -- Applies the transform to the rectangle. +- Applies the transform to the rectangle. -- Draws the transformed rectangle to the screen (the red rectangle), using the same coordinates as the previous rectangle. +- Draws the transformed rectangle to the screen (the red rectangle), using the same coordinates as the previous rectangle. Notice that the red rectangle has been scaled by a factor of two in the horizontal direction, then rotated 90 degrees, and then moved (translated) 250 points in the x direction and 50 points in the y direction. @@ -891,23 +891,23 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a scaling matrix. +- Creates a scaling matrix. -- Lists the matrix elements to the screen. +- Lists the matrix elements to the screen. -- Resets the matrix to identity. +- Resets the matrix to identity. -- Lists the elements to the screen. +- Lists the elements to the screen. -- Translates the matrix by 50 points in the x-axis and 40 points in the y-axis. +- Translates the matrix by 50 points in the x-axis and 40 points in the y-axis. -- Lists the elements of the translated matrix to the screen. +- Lists the elements of the translated matrix to the screen. -- Draws a rectangle is drawn to the screen prior to applying the matrix transform (the blue rectangle). +- Draws a rectangle is drawn to the screen prior to applying the matrix transform (the blue rectangle). -- Applies the transform to the rectangle. +- Applies the transform to the rectangle. -- Draws the transformed rectangle is drawn to the screen (the red rectangle), using the same coordinates as the previous rectangle. +- Draws the transformed rectangle is drawn to the screen (the red rectangle), using the same coordinates as the previous rectangle. Notice that the red rectangle was not scaled (because of the reset) but was translated in the x-axis and y-axis. @@ -1020,13 +1020,13 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Draws a rectangle to the screen prior to applying a rotation transform (the blue rectangle). +- Draws a rectangle to the screen prior to applying a rotation transform (the blue rectangle). -- Creates a matrix and rotates it 45 degrees. +- Creates a matrix and rotates it 45 degrees. -- Applies this matrix transform to the rectangle. +- Applies this matrix transform to the rectangle. -- Draws the transformed rectangle to the screen (the red rectangle). +- Draws the transformed rectangle to the screen (the red rectangle). Notice that the red rectangle has been rotated around the 0, 0 screen coordinates. @@ -1147,13 +1147,13 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Draws a rectangle to the screen prior to applying a rotation transform (the blue rectangle). +- Draws a rectangle to the screen prior to applying a rotation transform (the blue rectangle). -- Creates a matrix and rotates it 45 degrees around a specified point. +- Creates a matrix and rotates it 45 degrees around a specified point. -- Applies this matrix transform is to the rectangle. +- Applies this matrix transform is to the rectangle. -- Draws the transformed rectangle to the screen (the red rectangle). +- Draws the transformed rectangle to the screen (the red rectangle). Notice that the red rectangle has been rotated around the upper left-hand corner of the rectangle (the rotation point specified the method). @@ -1270,13 +1270,13 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Draws a rectangle to the screen prior to applying a scaling transform (the blue rectangle). +- Draws a rectangle to the screen prior to applying a scaling transform (the blue rectangle). -- Creates a matrix and scales it by 3 in the x-axis and 2 in the y-axis. +- Creates a matrix and scales it by 3 in the x-axis and 2 in the y-axis. -- Applies this matrix transform to the rectangle. +- Applies this matrix transform to the rectangle. -- Draws the transformed rectangle to the screen (the red rectangle). +- Draws the transformed rectangle to the screen (the red rectangle). Notice that the red rectangle has been scaled by a factor of 3 in the x-axis and by 2 in the y-axis, including the upper left-hand corner of the rectangle (the beginning point of the rectangle). @@ -1344,13 +1344,13 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following action: -- Draws a rectangle to the screen, using a green pen, prior to applying a scaling transform. +- Draws a rectangle to the screen, using a green pen, prior to applying a scaling transform. -- Creates a and uses it to set a world-coordinate transform for the . +- Creates a and uses it to set a world-coordinate transform for the . -- Draws another rectangle using a red pen. +- Draws another rectangle using a red pen. -- Draws an ellipse using a blue pen. +- Draws an ellipse using a blue pen. The result is a green rectangle, a red parallelogram and a transformed, blue ellipse. Notice that the green rectangle (drawn prior to setting the transform) directly uses the coordinates supplied in the call. The other two figures are transformed prior to drawing. The rectangle is transformed to a parallelogram (red), and the ellipse (blue) is transformed to fit into the transformed parallelogram. Notice the bottom of the rectangle is moved (sheared) in the x-axis by a factor of two times the height of the rectangle, thus forming the parallelogram. @@ -1474,15 +1474,15 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an array of points that form a rectangle. +- Creates an array of points that form a rectangle. -- Draws this array of points (to the screen prior to applying a scaling transform (the blue rectangle). +- Draws this array of points (to the screen prior to applying a scaling transform (the blue rectangle). -- Creates a matrix and scales it by 3 in the x-axis and 2 in the y-axis. +- Creates a matrix and scales it by 3 in the x-axis and 2 in the y-axis. -- Applies this matrix transform to the array of points. +- Applies this matrix transform to the array of points. -- Draws the transformed array to the screen (the red rectangle). +- Draws the transformed array to the screen (the red rectangle). Notice that the red rectangle has been scaled by a factor of 3 in the x-axis and by 2 in the y-axis, including the upper left-hand corner of the rectangle (the beginning point of the rectangle). @@ -1688,17 +1688,17 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates an array of points that form a rectangle. +- Creates an array of points that form a rectangle. -- Draws this array of points to the screen prior to applying a scaling transform (the blue rectangle). +- Draws this array of points to the screen prior to applying a scaling transform (the blue rectangle). -- Creates a matrix and scales it by 3 in the x-axis and 2 in the y-axis, and translates it by 100 in both axes. +- Creates a matrix and scales it by 3 in the x-axis and 2 in the y-axis, and translates it by 100 in both axes. -- Lists the matrix elements to the screen. +- Lists the matrix elements to the screen. -- Applies this matrix transform to the array of points. +- Applies this matrix transform to the array of points. -- Draws the transformed array to the screen (the red rectangle). +- Draws the transformed array to the screen (the red rectangle). Notice that the red rectangle has been scaled by a factor of 3 in the x-axis and by 2 in the y-axis, including the upper left-hand corner of the rectangle (the beginning point of the rectangle) but the translation vector (the last two elements of the matrix) is ignored. @@ -1950,13 +1950,13 @@ Matrix myMatrix = new Matrix(3, 5, 1, 2, 2, 4); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Draws a rectangle to the screen prior to applying a translate transform (the blue rectangle). +- Draws a rectangle to the screen prior to applying a translate transform (the blue rectangle). -- Creates a matrix and translates it by 100 in both axes. +- Creates a matrix and translates it by 100 in both axes. -- Applies this matrix transform to the rectangle, +- Applies this matrix transform to the rectangle, -- Draws the transformed rectangle to the screen (the red rectangle). +- Draws the transformed rectangle to the screen (the red rectangle). Notice that the beginning of the red rectangle is located 100 points in both axes from the beginning of the blue triangle. diff --git a/xml/System.Drawing.Drawing2D/PathGradientBrush.xml b/xml/System.Drawing.Drawing2D/PathGradientBrush.xml index 208d3a82d9d..9e1833adbd3 100644 --- a/xml/System.Drawing.Drawing2D/PathGradientBrush.xml +++ b/xml/System.Drawing.Drawing2D/PathGradientBrush.xml @@ -769,19 +769,19 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path and adds a rectangle to it. +- Creates a graphics path and adds a rectangle to it. -- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). +- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). -- Sets the center color to red and the surrounding color to blue. +- Sets the center color to red and the surrounding color to blue. -- Draws the to the screen prior to applying the multiply transform. +- Draws the to the screen prior to applying the multiply transform. -- Creates s matrix that rotates the brush 90 degrees and translates it by 100 in both axes. +- Creates s matrix that rotates the brush 90 degrees and translates it by 100 in both axes. -- Applies this matrix to the brush by using the method. +- Applies this matrix to the brush by using the method. -- Draws the brush to the screen. +- Draws the brush to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.Drawing2D.ClassicPathGradientBrush/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing.Drawing2D/PathGradientBrush/MultiplyTransform/form1.cs" id="Snippet1"::: @@ -978,17 +978,17 @@ PathGradientBrush pgBrush = new PathGradientBrush(myPath); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path and adds a rectangle to it. +- Creates a graphics path and adds a rectangle to it. -- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). +- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). -- Sets the center color to red and the surrounding color to blue. +- Sets the center color to red and the surrounding color to blue. -- Draws the to the screen prior to applying the rotate transform. +- Draws the to the screen prior to applying the rotate transform. -- Applies the rotate transform to the brush by using its method. +- Applies the rotate transform to the brush by using its method. -- Draws the rotated brush (rectangle) to the screen. +- Draws the rotated brush (rectangle) to the screen. Notice that the bottom rectangle is rotated 45 degrees as compared to the one drawn prior to the translation. @@ -1105,19 +1105,19 @@ PathGradientBrush pgBrush = new PathGradientBrush(myPath); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code -- Creates a graphics path and adds a rectangle to it. +- Creates a graphics path and adds a rectangle to it. -- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). +- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). -- Sets the center color to red and the surrounding color to blue. +- Sets the center color to red and the surrounding color to blue. -- Draws the to the screen prior to applying the scale transform. +- Draws the to the screen prior to applying the scale transform. -- Applies the scale transform to the brush by using its method. +- Applies the scale transform to the brush by using its method. -- Calls the method to move the brush rectangle such that it does not overlay the one drawn to the screen earlier. +- Calls the method to move the brush rectangle such that it does not overlay the one drawn to the screen earlier. -- Draws the translated brush rectangle to the screen. +- Draws the translated brush rectangle to the screen. Notice that the bottom rectangle is twice as long in the x-axis as is the one drawn prior to the translation. @@ -1242,19 +1242,19 @@ PathGradientBrush pgBrush = new PathGradientBrush(myPath); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path and adds a rectangle to it. +- Creates a graphics path and adds a rectangle to it. -- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). +- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). -- Sets the center color to red and the surrounding color to blue. +- Sets the center color to red and the surrounding color to blue. -- Draws the to the screen prior to applying the blend transform. +- Draws the to the screen prior to applying the blend transform. -- Applies the blend transform to the brush by using its method. +- Applies the blend transform to the brush by using its method. -- Calls the method to move the brush rectangle such that it does not overlay the one drawn to the screen earlier. +- Calls the method to move the brush rectangle such that it does not overlay the one drawn to the screen earlier. -- Draws the transformed-brush rectangle is drawn to the screen. +- Draws the transformed-brush rectangle is drawn to the screen. Notice that the maximum center color (red) is located half way from the center of the path to the path boundary. @@ -1381,19 +1381,19 @@ PathGradientBrush pgBrush = new PathGradientBrush(myPath); ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, an event object. The code performs the following actions: -- Creates a graphics path and adds a rectangle to it. +- Creates a graphics path and adds a rectangle to it. -- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). +- Creates a from the path points (in this example, the points form a rectangle, but it could be most any shape). -- Sets the center color to red and the surrounding color to blue. +- Sets the center color to red and the surrounding color to blue. -- Draws the to the screen prior to applying the blend transform. +- Draws the to the screen prior to applying the blend transform. -- Applies the blend transform to the brush by using its method. +- Applies the blend transform to the brush by using its method. -- Calls the method to move the brush rectangle such that it does not overlay the one drawn to the screen earlier. +- Calls the method to move the brush rectangle such that it does not overlay the one drawn to the screen earlier. -- Draws the transformed-brush rectangle to the screen. +- Draws the transformed-brush rectangle to the screen. Notice that the maximum center color (red) is located half way from the center of the path to the path boundary. diff --git a/xml/System.Drawing.Drawing2D/RegionData.xml b/xml/System.Drawing.Drawing2D/RegionData.xml index 52b33cc4c8a..cc38702afaf 100644 --- a/xml/System.Drawing.Drawing2D/RegionData.xml +++ b/xml/System.Drawing.Drawing2D/RegionData.xml @@ -40,23 +40,23 @@ Encapsulates the data that makes up a object. This class cannot be inherited. - `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: - -- Creates a rectangle and draw its to the screen in black. - -- Creates a region using the rectangle. - -- Gets the RegionData. - -- Draws the region data (an array of bytes) to the screen, by using the DisplayRegionData helper function. - + `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: + +- Creates a rectangle and draw its to the screen in black. + +- Creates a region using the rectangle. + +- Gets the RegionData. + +- Draws the region data (an array of bytes) to the screen, by using the DisplayRegionData helper function. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicRegionExamples/CPP/form1.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Region/Complement/form1.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.ClassicRegionExamples/VB/form1.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.ClassicRegionExamples/VB/form1.vb" id="Snippet6"::: + ]]> @@ -103,16 +103,16 @@ Gets or sets an array of bytes that specify the object. An array of bytes that specify the object. - `e`, which is a parameter of the `Paint` event handler. The code example demonstrates how to use the from one object to set the for another . - + `e`, which is a parameter of the `Paint` event handler. The code example demonstrates how to use the from one object to set the for another . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.MiscExamples/CPP/form1.cpp" id="Snippet13"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/.ctor/form12.cs" id="Snippet13"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.MiscExamples/VB/form1.vb" id="Snippet13"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.MiscExamples/VB/form1.vb" id="Snippet13"::: + ]]> diff --git a/xml/System.Drawing.Printing/PageSettings.xml b/xml/System.Drawing.Printing/PageSettings.xml index a81ce42ff0f..d82bd7cb077 100644 --- a/xml/System.Drawing.Printing/PageSettings.xml +++ b/xml/System.Drawing.Printing/PageSettings.xml @@ -471,11 +471,11 @@ ## Examples The following code example sets a document's default page orientation to landscape through the property, and prints the document. The example has three prerequisites: -- A variable named `filePath` has been set to the path of the file to print. +- A variable named `filePath` has been set to the path of the file to print. -- A method named `pd_PrintPage`, which handles the event, has been defined. +- A method named `pd_PrintPage`, which handles the event, has been defined. -- A variable named `printer` has been set to the printer's name. +- A variable named `printer` has been set to the printer's name. Use the , , and namespaces for this example. @@ -543,11 +543,11 @@ ## Examples The following code example sets the default page settings for a document to margins to 1 inch on each side. The example has three prerequisites: -- A variable named `filePath` has been set to the path of the file to print. +- A variable named `filePath` has been set to the path of the file to print. -- A method named `pd_PrintPage`, which handles the event, has been defined. +- A method named `pd_PrintPage`, which handles the event, has been defined. -- A variable named `printer` has been set to the printer's name. +- A variable named `printer` has been set to the printer's name. Use the , , and namespaces for this example. diff --git a/xml/System.Drawing.Printing/PrinterSettings.xml b/xml/System.Drawing.Printing/PrinterSettings.xml index 8962c3eb986..700d6c86f60 100644 --- a/xml/System.Drawing.Printing/PrinterSettings.xml +++ b/xml/System.Drawing.Printing/PrinterSettings.xml @@ -65,11 +65,11 @@ ## Examples The following code example prints a document on the specified printer. The example has three prerequisites: -- A variable named `filePath` has been set to the path of the file to print. +- A variable named `filePath` has been set to the path of the file to print. -- A method named `pd_PrintPage`, which handles the event, has been defined. +- A method named `pd_PrintPage`, which handles the event, has been defined. -- A variable named `printer` has been set to the printer's name. +- A variable named `printer` has been set to the printer's name. Use the , , and namespaces for this example. @@ -1075,11 +1075,11 @@ ## Examples The following code example specifies the target printer by setting the property, and if the is `true`, prints the document on the specified printer. The example has three prerequisites: -- A variable named `filePath` has been set to the path of the file to print. +- A variable named `filePath` has been set to the path of the file to print. -- A method named `pd_PrintPage`, which handles the event, has been defined. +- A method named `pd_PrintPage`, which handles the event, has been defined. -- A variable named `printer` has been set to the printer's name. +- A variable named `printer` has been set to the printer's name. Use the , , and namespaces for this example. @@ -1443,11 +1443,11 @@ ## Examples The following code example specifies the target printer by setting the property, and if the is `true`, prints the document on the specified printer. The example has three prerequisites: -- A variable named `filePath` has been set to the path of the file to print. +- A variable named `filePath` has been set to the path of the file to print. -- A method named `pd_PrintPage`, which handles the event, has been defined. +- A method named `pd_PrintPage`, which handles the event, has been defined. -- A variable named `printer` has been set to the printer's name. +- A variable named `printer` has been set to the printer's name. Use the , , and namespaces for this example. diff --git a/xml/System.Drawing/Bitmap.xml b/xml/System.Drawing/Bitmap.xml index 0eb095f2ac7..6630c869f8a 100644 --- a/xml/System.Drawing/Bitmap.xml +++ b/xml/System.Drawing/Bitmap.xml @@ -759,11 +759,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a from a file. +- Creates a from a file. -- Clones a portion of that . +- Clones a portion of that . -- Draws the cloned portion to the screen. +- Draws the cloned portion to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicBitmapExamples/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/Clone/form1.cs" id="Snippet1"::: @@ -823,11 +823,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a from a file. +- Creates a from a file. -- Clones a portion of that . +- Clones a portion of that . -- Draws the cloned portion to the screen. +- Draws the cloned portion to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicBitmapExamples/CPP/form1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/Clone/form1.cs" id="Snippet2"::: @@ -905,25 +905,25 @@ For , is not supported. - For , pass when the conversion does not reduce the bit depth of the pixel data. - This must be or if the is + For , pass when the conversion does not reduce the bit depth of the pixel data. + This must be or if the is or . is ignored for non-indexed pixel formats. - The (called the actual palette) does not have to have the type specified by the parameter. - The parameter specifies a standard palette that can be used by any of the ordered or spiral dithering algorithms. - If the actual palette has a type other than that specified by the parameter, - then + The (called the actual palette) does not have to have the type specified by the parameter. + The parameter specifies a standard palette that can be used by any of the ordered or spiral dithering algorithms. + If the actual palette has a type other than that specified by the parameter, + then performs a nearest-color conversion from the standard palette to the actual palette. - For , a value of 0 specifies that none of the source pixels map to the transparent color. - A value of 100 specifies that any pixel that is not fully opaque will map to the transparent color. - A value of t specifies that any source pixel less than t percent of fully opaque will map to the transparent color. - Note that for the alpha threshold to be effective, the palette must have a transparent color. If the palette does not have a transparent color, + For , a value of 0 specifies that none of the source pixels map to the transparent color. + A value of 100 specifies that any pixel that is not fully opaque will map to the transparent color. + A value of t specifies that any source pixel less than t percent of fully opaque will map to the transparent color. + Note that for the alpha threshold to be effective, the palette must have a transparent color. If the palette does not have a transparent color, pixels with alpha values below the threshold will map to color that most closely matches (0, 0, 0, 0), usually black. @@ -973,11 +973,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Gets the handle to an existing icon image. +- Gets the handle to an existing icon image. -- Creates a from the handle. +- Creates a from the handle. -- Draws the to the screen. +- Draws the to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicBitmapExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/Clone/form1.cs" id="Snippet3"::: @@ -1213,13 +1213,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Draws that object to the screen. +- Draws that object to the screen. -- Gets an icon handle for the . +- Gets an icon handle for the . -- Sets the attribute of the form to an icon created from the handle. +- Sets the attribute of the form to an icon created from the handle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicBitmapExamples/CPP/form1.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/Clone/form1.cs" id="Snippet6"::: @@ -1534,11 +1534,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Gets the color of a pixel in a . +- Gets the color of a pixel in a . -- Makes that color transparent for the bitmap. +- Makes that color transparent for the bitmap. -- Draws the to the screen. +- Draws the to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicBitmapExamples/CPP/form1.cpp" id="Snippet9"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/Clone/form1.cs" id="Snippet9"::: @@ -1599,11 +1599,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Sets the color of each pixel in the bitmap to black. +- Sets the color of each pixel in the bitmap to black. -- Draws the bitmap. +- Draws the bitmap. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicBitmapExamples/CPP/form1.cpp" id="Snippet10"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/Clone/form1.cs" id="Snippet10"::: diff --git a/xml/System.Drawing/BufferedGraphics.xml b/xml/System.Drawing/BufferedGraphics.xml index cda54bced29..006e46b5672 100644 --- a/xml/System.Drawing/BufferedGraphics.xml +++ b/xml/System.Drawing/BufferedGraphics.xml @@ -66,11 +66,11 @@ ## Examples The following code example demonstrates using a object to draw graphics using several types of buffering implementations. Clicking the form alternately starts and stops a timer that causes draw updates. The draw updates allow you to observe the effect of double buffering. Right-clicking the form cycles through the following drawing modes: -- Drawing directly to the for a . +- Drawing directly to the for a . -- Drawing by overriding the method using the control style. +- Drawing by overriding the method using the control style. -- Drawing by overriding the method for the form method without using the control style. +- Drawing by overriding the method for the form method without using the control style. In each mode, text is drawn that identifies the current mode and describes the behavior that occurs when each mouse button is pressed. diff --git a/xml/System.Drawing/Color.xml b/xml/System.Drawing/Color.xml index 693b8a8fa80..a66c10a2207 100644 --- a/xml/System.Drawing/Color.xml +++ b/xml/System.Drawing/Color.xml @@ -2421,11 +2421,11 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates three brushes, each a different color. Each structure that is used to create a brush is created from a 32-bit ARGB value. +- Creates three brushes, each a different color. Each structure that is used to create a brush is created from a 32-bit ARGB value. -- Uses an imaginary triangle to position three circles. +- Uses an imaginary triangle to position three circles. -- Paints three overlapping circles, each centered on one vertex of the triangle, using a different brush for each circle. +- Paints three overlapping circles, each centered on one vertex of the triangle, using a different brush for each circle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicColorExamples/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Color/FromArgb/form1.cs" id="Snippet1"::: @@ -2653,11 +2653,11 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates three brushes, each a different color. Each structure that is used to create a brush is created from four component values (alpha, red, green, blue). +- Creates three brushes, each a different color. Each structure that is used to create a brush is created from four component values (alpha, red, green, blue). -- Uses an imaginary triangle to position three circles. +- Uses an imaginary triangle to position three circles. -- Paints three overlapping circles, each centered on one vertex of the triangle, using a different brush for each circle. +- Paints three overlapping circles, each centered on one vertex of the triangle, using a different brush for each circle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicColorExamples/CPP/form1.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Color/FromArgb/form1.cs" id="Snippet4"::: @@ -2723,13 +2723,13 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an instance of a structure, `redShade`, to be used for comparisons. +- Creates an instance of a structure, `redShade`, to be used for comparisons. -- Iterates through the enumeration elements to find all known colors that have the same lightness as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. +- Iterates through the enumeration elements to find all known colors that have the same lightness as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. -- During each iteration, saves the element - if it matches the criteria - in an array. +- During each iteration, saves the element - if it matches the criteria - in an array. -- Uses a brush to paint rectangles. +- Uses a brush to paint rectangles. The first rectangle is painted the color represented by `redShade`. Each of the other rectangles is painted a that matches the lightness of the `redShade`. @@ -3006,13 +3006,13 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an instance of a structure, `redShade`, to be used for comparisons. +- Creates an instance of a structure, `redShade`, to be used for comparisons. -- Iterates through the enumeration elements to find all known colors that have the same lightness as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. +- Iterates through the enumeration elements to find all known colors that have the same lightness as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. -- During each iteration, saves the element - if it matches the criteria - in an array. +- During each iteration, saves the element - if it matches the criteria - in an array. -- Uses a brush to paint rectangles. +- Uses a brush to paint rectangles. The first rectangle is painted the color represented by `redShade`. Each of the other rectangles is painted a that matches the lightness of the `redShade`. @@ -3115,13 +3115,13 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an instance of a structure, `redShade`, to be used for comparisons. +- Creates an instance of a structure, `redShade`, to be used for comparisons. -- Iterates through the enumeration elements to find all known colors that have the same hue as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. +- Iterates through the enumeration elements to find all known colors that have the same hue as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. -- During each iteration, saves the element - if it matches the criteria - in an array. +- During each iteration, saves the element - if it matches the criteria - in an array. -- Uses a brush to paint rectangles. +- Uses a brush to paint rectangles. The first rectangle is painted the color represented by `redShade`. Each of the other rectangles is painted a that matches the hue of the `redShade`. @@ -3180,13 +3180,13 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an instance of a structure, `redShade`, to be used for comparisons. +- Creates an instance of a structure, `redShade`, to be used for comparisons. -- Iterates through the enumeration elements to find all known colors that have the same saturation as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. +- Iterates through the enumeration elements to find all known colors that have the same saturation as `redShade`. The iterations are terminated when 15 matches are found or the value of the loop counter is greater than the last element. -- During each iteration, saves the element - if it matches the criteria - in an array. +- During each iteration, saves the element - if it matches the criteria - in an array. -- Uses a brush to paint rectangles. +- Uses a brush to paint rectangles. The first rectangle is painted the color represented by `redShade`. Each of the other rectangles is painted a that matches the saturation of the `redShade`. @@ -7408,11 +7408,11 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Iterates through the enumeration elements to find all known colors that have a non-zero green component and a zero-value red component, and that are not system colors. +- Iterates through the enumeration elements to find all known colors that have a non-zero green component and a zero-value red component, and that are not system colors. -- During each iteration, saves the element - if it matches the criteria - in an array. +- During each iteration, saves the element - if it matches the criteria - in an array. -- Uses a brush to paint rectangles. +- Uses a brush to paint rectangles. Each of the rectangles is painted a that matches the criteria stated in the first bullet. The name of the and its component values are also displayed. @@ -7571,11 +7571,11 @@ This example is designed to be used with a Windows Form. Paste the code into the ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Iterates through the enumeration elements to find all known colors that have a non-zero green component and a zero-value red component and that are not system colors. +- Iterates through the enumeration elements to find all known colors that have a non-zero green component and a zero-value red component and that are not system colors. -- During each iteration, saves the element - if it matches the criteria - in an array. +- During each iteration, saves the element - if it matches the criteria - in an array. -- Uses a brush to paint rectangles. Each of the rectangles is painted a that matches the criteria stated in the first step. The name of the and its component values are also displayed. +- Uses a brush to paint rectangles. Each of the rectangles is painted a that matches the criteria stated in the first step. The name of the and its component values are also displayed. This example displays certain known colors and uses to display the names of the colors and their four component values. diff --git a/xml/System.Drawing/Font.xml b/xml/System.Drawing/Font.xml index 7da88ccafd5..35e22d4891e 100644 --- a/xml/System.Drawing/Font.xml +++ b/xml/System.Drawing/Font.xml @@ -1171,11 +1171,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Gets a handle to a GDI font. +- Gets a handle to a GDI font. -- Creates a from that handle. +- Creates a from that handle. -- Draws text to the screen, using the new . +- Draws text to the screen, using the new . :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontsExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Font/Clone/form1.cs" id="Snippet3"::: @@ -1547,11 +1547,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets the hash code for that font. +- Gets the hash code for that font. -- Displays a message box with the value of the hash code. +- Displays a message box with the value of the hash code. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontsExamples/CPP/form1.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Font/Clone/form1.cs" id="Snippet4"::: @@ -1670,13 +1670,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Draws a line of text to the screen, using the new . +- Draws a line of text to the screen, using the new . -- Gets the height of the font. +- Gets the height of the font. -- Draws a second line of text directly below the first line. +- Draws a second line of text directly below the first line. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontsExamples/CPP/form1.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Font/Clone/form1.cs" id="Snippet5"::: @@ -2576,11 +2576,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets a string that represents the font. +- Gets a string that represents the font. -- Displays the string in a message box. +- Displays the string in a message box. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontsExamples/CPP/form1.cpp" id="Snippet7"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Font/Clone/form1.cs" id="Snippet7"::: diff --git a/xml/System.Drawing/FontFamily.xml b/xml/System.Drawing/FontFamily.xml index 06b1a2090aa..7411da954bb 100644 --- a/xml/System.Drawing/FontFamily.xml +++ b/xml/System.Drawing/FontFamily.xml @@ -309,11 +309,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates two objects. +- Creates two objects. -- Tests whether they are equivalent. +- Tests whether they are equivalent. -- Displays the result of the test in a message box. +- Displays the result of the test in a message box. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet1"::: @@ -545,11 +545,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets the cell ascent for that font family. +- Gets the cell ascent for that font family. -- Draws the value of the cell ascent to the screen as text. +- Draws the value of the cell ascent to the screen as text. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet2"::: @@ -601,11 +601,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets the cell descent for that font family. +- Gets the cell descent for that font family. -- Draws the value of the cell descent to the screen as text. +- Draws the value of the cell descent to the screen as text. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet3"::: @@ -662,11 +662,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets the em square height for that font family. +- Gets the em square height for that font family. -- Draws the value of the em height to the screen as text. +- Draws the value of the em height to the screen as text. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet4"::: @@ -765,11 +765,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets the hash code for the font family. +- Gets the hash code for the font family. -- Draws the value of the hash code to the screen as text. +- Draws the value of the hash code to the screen as text. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet6"::: @@ -820,11 +820,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets the line spacing for the font family. +- Gets the line spacing for the font family. -- Draws the value of the line spacing to the screen as text. +- Draws the value of the line spacing to the screen as text. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet7"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet7"::: @@ -881,11 +881,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Gets the name of the font family. +- Gets the name of the font family. -- Draws the name of the font family to the screen as text. +- Draws the name of the font family to the screen as text. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet8"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet8"::: @@ -937,11 +937,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Tests whether the font family is available in an italic font. +- Tests whether the font family is available in an italic font. -- If it is, draws text to the screen. +- If it is, draws text to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicFontFamilyExamples/CPP/form1.cpp" id="Snippet9"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/FontFamily/Equals/form1.cs" id="Snippet9"::: diff --git a/xml/System.Drawing/Graphics.xml b/xml/System.Drawing/Graphics.xml index 009eb4086ac..6362363675c 100644 --- a/xml/System.Drawing/Graphics.xml +++ b/xml/System.Drawing/Graphics.xml @@ -75,11 +75,11 @@ ## Examples The following code example is designed for use with Windows Forms and requires a object. The object is named `e` and is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file. The file is named SampImag.jpg and is located in the folder of the example. +- Creates an image from a JPEG file. The file is named SampImag.jpg and is located in the folder of the example. -- Creates a point at which to draw the upper-left corner of the image. +- Creates a point at which to draw the upper-left corner of the image. -- Draws the unscaled image to the screen by using a object. +- Draws the unscaled image to the screen by using a object. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet40"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet40"::: @@ -137,29 +137,29 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler, as well as `thisForm`, the for the example. The code performs the following actions: -- Creates a temporary for creating the metafile and gets an `hdc`, a handle to its device context. +- Creates a temporary for creating the metafile and gets an `hdc`, a handle to its device context. -- Creates a new metafile using the `hdc`. +- Creates a new metafile using the `hdc`. -- Creates a for display of the metafile from the . +- Creates a for display of the metafile from the . -- Draws a rectangle to the metafile. +- Draws a rectangle to the metafile. -- Adds a comment to the metafile. +- Adds a comment to the metafile. -- Disposes the for the metafile-which closes the metafile. +- Disposes the for the metafile-which closes the metafile. -- Disposes the metafile. +- Disposes the metafile. -- Releases the temporary `hdc`. +- Releases the temporary `hdc`. -- Disposes the temporary . +- Disposes the temporary . -- Creates a second metafile from the previously created file. +- Creates a second metafile from the previously created file. -- Draws the metafile to the screen. +- Draws the metafile to the screen. -- Disposes the metafile. +- Disposes the metafile. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet1"::: @@ -231,15 +231,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Opens a new graphics container and saves the old container. +- Opens a new graphics container and saves the old container. -- Translates the world coordinates in the container. +- Translates the world coordinates in the container. -- Fills a red rectangle in the (translated coordinates of the) new container. +- Fills a red rectangle in the (translated coordinates of the) new container. -- Closes the new container and restores the saved container. +- Closes the new container and restores the saved container. -- Fills a green rectangle (to the untranslated coordinates) of the saved container. +- Fills a green rectangle (to the untranslated coordinates) of the saved container. The result is a green rectangle that overlies a red rectangle of the same size. @@ -315,15 +315,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates two rectangles to specify a scale transformation for the new container. +- Creates two rectangles to specify a scale transformation for the new container. -- Opens the new graphics container and saves the old container. +- Opens the new graphics container and saves the old container. -- Fills a red rectangle in the (scaled coordinates of the) new container. +- Fills a red rectangle in the (scaled coordinates of the) new container. -- Closes the new container and restores the saved container. +- Closes the new container and restores the saved container. -- Fills a green rectangle (to the unscaled coordinates) of the saved container. +- Fills a green rectangle (to the unscaled coordinates) of the saved container. The result is a green rectangle that overlies a smaller red rectangle. @@ -399,15 +399,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates two rectangles to specify a scale transformation for the new container. +- Creates two rectangles to specify a scale transformation for the new container. -- Opens the new graphics container and saves the old container. +- Opens the new graphics container and saves the old container. -- Fills a red rectangle in the (scaled coordinates of the) new container. +- Fills a red rectangle in the (scaled coordinates of the) new container. -- Closes the new container and restores the saved container. +- Closes the new container and restores the saved container. -- Fills a green rectangle (to the unscaled coordinates) of the saved container. +- Fills a green rectangle (to the unscaled coordinates) of the saved container. The result is a green rectangle that overlies a smaller red rectangle. @@ -966,15 +966,15 @@ The following code example is designed for use with Windows Forms, and it requir ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an from a graphics file SampImag.jpg in the example directory. +- Creates an from a graphics file SampImag.jpg in the example directory. -- Creates a from the . +- Creates a from the . -- Alters the image by filling a rectangle within it. +- Alters the image by filling a rectangle within it. -- Draws the to the screen. +- Draws the to the screen. -- Releases the created . +- Releases the created . :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet6"::: @@ -1152,13 +1152,13 @@ The following code example is designed for use with Windows Forms, and it requir ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates a rectangle to bound an ellipse. +- Creates a rectangle to bound an ellipse. -- Defines the start (45 degrees) and sweep (270 degrees) angles. +- Defines the start (45 degrees) and sweep (270 degrees) angles. -- Draws the elliptical arc to the screen. +- Draws the elliptical arc to the screen. The result is a partial ellipse missing a segment between + and - 45 degrees of the x axis. @@ -1225,13 +1225,13 @@ The following code example is designed for use with Windows Forms, and it requir ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates a rectangle to bound an ellipse. +- Creates a rectangle to bound an ellipse. -- Defines the start (45 degrees) and sweep (270 degrees) angles. +- Defines the start (45 degrees) and sweep (270 degrees) angles. -- Draws the elliptical arc to the screen. +- Draws the elliptical arc to the screen. The result is a partial ellipse missing a segment between + and - 45 degrees of the x axis. @@ -1303,13 +1303,13 @@ The following code example is designed for use with Windows Forms, and it requir ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle to bound an ellipse. +- Creates the position and size of a rectangle to bound an ellipse. -- Defines the start (45 degrees) and sweep (270 degrees) angles. +- Defines the start (45 degrees) and sweep (270 degrees) angles. -- Draws the elliptical arc to the screen. +- Draws the elliptical arc to the screen. The result is a partial ellipse missing a segment between + and - 45 degrees of the x axis. @@ -1381,13 +1381,13 @@ The following code example is designed for use with Windows Forms, and it requir ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle to bound an ellipse. +- Creates the position and size of a rectangle to bound an ellipse. -- Defines the start (45 degrees) and sweep (270 degrees) angles. +- Defines the start (45 degrees) and sweep (270 degrees) angles. -- Draws the elliptical arc to the screen. +- Draws the elliptical arc to the screen. The result is a partial ellipse missing a segment between + and - 45 degrees of the x axis. @@ -1467,11 +1467,11 @@ The Bézier curve is drawn from the first point to the fourth point. The second ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the start, end, and two control points for the curve. +- Creates the start, end, and two control points for the curve. -- Draws the Bézier curve to the screen. +- Draws the Bézier curve to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet11"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet11"::: @@ -1540,11 +1540,11 @@ The Bézier spline is drawn from the first point to the fourth point. The second ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the start, end, and two control points for the curve. +- Creates the start, end, and two control points for the curve. -- Draws the Bézier curve to the screen. +- Draws the Bézier curve to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet12"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet12"::: @@ -1617,11 +1617,11 @@ The Bézier spline is drawn from the first point to the fourth point. The second ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the coordinates of the start, end, and two control points for the curve. +- Creates the coordinates of the start, end, and two control points for the curve. -- Draws the Bézier curve to the screen. +- Draws the Bézier curve to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet13"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet13"::: @@ -1699,11 +1699,11 @@ The number of points in the array should be a multiple of 3 plus 1 because the f ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the start, end, and two control points for a first curve and endpoint and two control points for a second curve. +- Creates the start, end, and two control points for a first curve and endpoint and two control points for a second curve. -- Draws the successive Bézier curves to the screen. +- Draws the successive Bézier curves to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet14"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet14"::: @@ -1776,11 +1776,11 @@ The number of points in the array should be a multiple of 3 plus 1 because the f ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the start, end, and two control points for a first curve and endpoint and two control points for a second curve. +- Creates the start, end, and two control points for a first curve and endpoint and two control points for a second curve. -- Draws the successive Bézier curves to the screen. +- Draws the successive Bézier curves to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet15"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet15"::: @@ -2009,13 +2009,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define a curve. +- Creates seven points to define a curve. -- Draws seven red straight lines between the seven points to form a closed polygon. +- Draws seven red straight lines between the seven points to form a closed polygon. -- Draws a green closed curve through the seven points. +- Draws a green closed curve through the seven points. The method uses a default tension of 0.5. @@ -2096,13 +2096,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define a curve. +- Creates seven points to define a curve. -- Draws seven red straight lines between the seven points to form a closed polygon. +- Draws seven red straight lines between the seven points to form a closed polygon. -- Draws a green closed curve through the seven points. +- Draws a green closed curve through the seven points. The method uses a default tension of 0.5. @@ -2275,15 +2275,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define the curve. +- Creates seven points to define the curve. -- Draws seven red straight lines between the seven points to form a polygon. +- Draws seven red straight lines between the seven points to form a polygon. -- Creates tension and fill mode settings. +- Creates tension and fill mode settings. -- Draws a green closed curve through the seven points. +- Draws a green closed curve through the seven points. The method uses a tension of 1.0 and sets the fill mode to `FillMode.Alternate`. @@ -2358,15 +2358,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define the curve. +- Creates seven points to define the curve. -- Draws seven red straight lines between the seven points to form a polygon. +- Draws seven red straight lines between the seven points to form a polygon. -- Creates tension and fill mode settings. +- Creates tension and fill mode settings. -- Draws a green closed curve through the seven points. +- Draws a green closed curve through the seven points. The method uses a tension of 1.0 and sets the fill mode to `FillMode.Alternate`. @@ -2539,13 +2539,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define a curve. +- Creates seven points to define a curve. -- Draws six red straight lines between the seven points to form an incomplete polygon. +- Draws six red straight lines between the seven points to form an incomplete polygon. -- Draws an open green curve through the seven points. +- Draws an open green curve through the seven points. The method uses a default tension of 0.5. @@ -2626,13 +2626,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define a curve. +- Creates seven points to define a curve. -- Draws six red straight lines between the seven points to form an incomplete polygon. +- Draws six red straight lines between the seven points to form an incomplete polygon. -- Draws an open green curve through the seven points. +- Draws an open green curve through the seven points. The method uses a default tension of 0.5. @@ -2803,15 +2803,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define the curve. +- Creates seven points to define the curve. -- Draws six red straight lines between the seven points to form an incomplete polygon. +- Draws six red straight lines between the seven points to form an incomplete polygon. -- Creates a tension setting. +- Creates a tension setting. -- Draws an open green closed curve through the seven points. +- Draws an open green closed curve through the seven points. The method uses a tension of 1.0. @@ -2884,15 +2884,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define the curve. +- Creates seven points to define the curve. -- Draws six red straight lines between the seven points to form an incomplete polygon. +- Draws six red straight lines between the seven points to form an incomplete polygon. -- Creates a tension setting. +- Creates a tension setting. -- Draws an open green closed curve through the seven points. +- Draws an open green closed curve through the seven points. The method uses a tension of 1.0. @@ -3057,15 +3057,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define a curve. +- Creates seven points to define a curve. -- Draws six red straight lines between the seven points to form an incomplete polygon. +- Draws six red straight lines between the seven points to form an incomplete polygon. -- Defines the starting point offset and number of segments. +- Defines the starting point offset and number of segments. -- Draws an open green curve (starting at the third point) through the last five points. +- Draws an open green curve (starting at the third point) through the last five points. The method uses a default tension of 0.5. @@ -3188,17 +3188,17 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define a curve. +- Creates seven points to define a curve. -- Draws six red straight lines between the seven points to form an incomplete polygon. +- Draws six red straight lines between the seven points to form an incomplete polygon. -- Defines the starting point offset and number of segments. +- Defines the starting point offset and number of segments. -- Defines the tension. +- Defines the tension. -- Draws an open green curve (starting at the third point) through the last five points. +- Draws an open green curve (starting at the third point) through the last five points. The method sets the tension to 1.0. @@ -3278,17 +3278,17 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates red and green pens. +- Creates red and green pens. -- Creates seven points to define a curve. +- Creates seven points to define a curve. -- Draws six red straight lines between the seven points to form an incomplete polygon. +- Draws six red straight lines between the seven points to form an incomplete polygon. -- Defines the starting point offset and number of segments. +- Defines the starting point offset and number of segments. -- Defines the tension. +- Defines the tension. -- Draws an open green curve (starting at the third point) through the last five points. +- Draws an open green curve (starting at the third point) through the last five points. The method sets the tension to 1.0. @@ -3453,11 +3453,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates a rectangle to bound an ellipse. +- Creates a rectangle to bound an ellipse. -- Draws the ellipse to the screen. +- Draws the ellipse to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet27"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet27"::: @@ -3518,11 +3518,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates a rectangle to bound an ellipse. +- Creates a rectangle to bound an ellipse. -- Draws the ellipse to the screen. +- Draws the ellipse to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet28"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet28"::: @@ -3588,11 +3588,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle to bound an ellipse. +- Creates the position and size of a rectangle to bound an ellipse. -- Draws the ellipse to the screen. +- Draws the ellipse to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet29"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet29"::: @@ -3658,11 +3658,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle to bound an ellipse. +- Creates the position and size of a rectangle to bound an ellipse. -- Draws the ellipse to the screen. +- Draws the ellipse to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet30"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet30"::: @@ -3727,11 +3727,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an icon from a standard Windows icon file SampIcon.ico in the example folder. +- Creates an icon from a standard Windows icon file SampIcon.ico in the example folder. -- Creates a rectangle in which to draw the icon. +- Creates a rectangle in which to draw the icon. -- Draws the icon to the screen. +- Draws the icon to the screen. The position of the rectangle locates the icon on the screen, and the size of the rectangle determines the scaling of the drawn icon. @@ -3790,11 +3790,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an icon from a standard Windows icon file SampIcon.ico in the example folder. +- Creates an icon from a standard Windows icon file SampIcon.ico in the example folder. -- Creates the coordinates of the upper-left corner at which to draw the icon. +- Creates the coordinates of the upper-left corner at which to draw the icon. -- Draws the icon to the screen. +- Draws the icon to the screen. The drawn icon is unscaled. @@ -3852,11 +3852,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an icon from a standard Windows icon file SampIcon.ico in the example folder. +- Creates an icon from a standard Windows icon file SampIcon.ico in the example folder. -- Creates a rectangle in which to draw the icon. +- Creates a rectangle in which to draw the icon. -- Draws the icon to the screen. +- Draws the icon to the screen. The position of the rectangle locates the icon on the screen, and the drawn icon is unscaled and unclipped. @@ -3961,11 +3961,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a point at which to draw the upper-left corner of the image. +- Creates a point at which to draw the upper-left corner of the image. -- Draws the unscaled image to the screen. +- Draws the unscaled image to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet34"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet34"::: @@ -4028,11 +4028,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Draws the image to the screen. +- Draws the image to the screen. The position of the parallelogram locates the image on the screen, and the size of the original image and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -4098,11 +4098,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a point at which to draw the upper-left corner of the image. +- Creates a point at which to draw the upper-left corner of the image. -- Draws the unscaled image to the screen. +- Draws the unscaled image to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet40"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet40"::: @@ -4165,11 +4165,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Draws the image to the screen. +- Draws the image to the screen. The position of the parallelogram locates the image on the screen, and the size of the original image and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -4233,11 +4233,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a rectangle in which to draw the image. +- Creates a rectangle in which to draw the image. -- Draws the image to the screen. +- Draws the image to the screen. The position of the rectangle locates the image on the screen, and the size of the original image and the size of the rectangle determines the scaling of the drawn image. @@ -4301,11 +4301,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a rectangle in which to draw the image. +- Creates a rectangle in which to draw the image. -- Draws the image to the screen. +- Draws the image to the screen. The position of the rectangle locates the image on the screen, and the original size of the image and the size of the rectangle determines the scaling of the drawn image. @@ -4372,11 +4372,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example SampImag.jpg in the folder of the example. -- Creates the coordinates of a point at which to draw the upper-left corner of the image. +- Creates the coordinates of a point at which to draw the upper-left corner of the image. -- Draws the unscaled image. +- Draws the unscaled image. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet58"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet58"::: @@ -4441,11 +4441,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates the coordinates of a point at which to draw the upper-left corner of the image. +- Creates the coordinates of a point at which to draw the upper-left corner of the image. -- Draws the unscaled image to the screen. +- Draws the unscaled image to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet61"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet61"::: @@ -4519,15 +4519,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Creates a rectangle to select the portion of the image to draw. +- Creates a rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the image to the screen. +- Draws the image to the screen. The position of the parallelogram locates the image on the screen, and the size of the rectangle and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -4597,15 +4597,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a destination parallelogram in which to draw the image. +- Creates points that define a destination parallelogram in which to draw the image. -- Creates a source rectangle from which to extract a portion of the image. +- Creates a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the image to the screen. +- Draws the image to the screen. The position of the destination parallelogram locates the image on the screen, the size of the source rectangle and the size and shape of the destination parallelogram determines the scaling and shearing of the drawn image, and the size of the rectangle determines what portion of the original image is drawn to the screen. @@ -4674,15 +4674,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a destination rectangle in which to draw the image. +- Creates a destination rectangle in which to draw the image. -- Creates a source rectangle from which to extract a portion of the image. +- Creates a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the image to the screen. +- Draws the image to the screen. The position of the destination rectangle locates the image on the screen, the sizes of the source and destination rectangles determine the scaling of the drawn image, and the size of the source rectangle determines what portion of the original image is drawn to the screen. @@ -4751,15 +4751,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a destination rectangle in which to draw the image. +- Creates a destination rectangle in which to draw the image. -- Creates a source rectangle from which to extract a portion of the image. +- Creates a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the image to the screen. +- Draws the image to the screen. The position of the destination rectangle locates the image on the screen, the sizes of the source and destination rectangles determine the scaling of the drawn image, and the size of the source rectangle determines what portion of the original image is drawn to the screen. @@ -4846,21 +4846,21 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Creates a rectangle to select the portion of the image to draw. +- Creates a rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional parallelogram in which to draw an adjusted image. +- Creates an additional parallelogram in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted parallelogram, the position locates the image on the screen, and the size of the rectangle and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -4947,21 +4947,21 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a destination parallelogram in which to draw the image. +- Creates points that define a destination parallelogram in which to draw the image. -- Creates a source rectangle from which to extract a portion of the image. +- Creates a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional parallelogram in which to draw an adjusted image. +- Creates an additional parallelogram in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted destination parallelogram, the position locates the image on the screen, the size of the source rectangle and the size and shape of the destination parallelogram determines the scaling and shearing of the drawn image, and the size of the rectangle determines what portion of the original image is drawn to the screen. @@ -5033,15 +5033,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates the coordinates at which to draw the upper-left corner of the image. +- Creates the coordinates at which to draw the upper-left corner of the image. -- Creates a source rectangle from which to extract a portion of the image. +- Creates a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the image to the screen. +- Draws the image to the screen. The size of the source rectangle determines what portion of the unscaled original image is drawn to the screen. @@ -5110,11 +5110,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates the position and size of a rectangle in which to draw the image. +- Creates the position and size of a rectangle in which to draw the image. -- Draws the image to the screen. +- Draws the image to the screen. The position of the rectangle locates the image on the screen, and the size of the original image and the size of the rectangle determines the scaling of the drawn image. @@ -5186,15 +5186,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates the coordinates at which to draw the upper-left corner of the image. +- Creates the coordinates at which to draw the upper-left corner of the image. -- Creates a source rectangle from which to extract a portion of the image. +- Creates a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the image to the screen. +- Draws the image to the screen. The size of the source rectangle determines what portion of the unscaled original image is drawn to the screen. @@ -5263,11 +5263,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates the position and size of a rectangle in which to draw the image. +- Creates the position and size of a rectangle in which to draw the image. -- Draws the image to the screen. +- Draws the image to the screen. The position of the rectangle locates the image on the screen, and the size of the original image and the size of the rectangle determines the scaling of the drawn image. @@ -5418,23 +5418,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method: +- Creates an instance of the callback method: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Creates a rectangle to select the portion of the image to draw. +- Creates a rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional parallelogram in which to draw an adjusted image. +- Creates an additional parallelogram in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted parallelogram, the position locates the image on the screen, and the size of the rectangle and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -5535,23 +5535,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method. +- Creates an instance of the callback method. -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Creates a rectangle to select the portion of the image to draw. +- Creates a rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional parallelogram in which to draw an adjusted image. +- Creates an additional parallelogram in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted parallelogram, the position locates the image on the screen, and the size of the rectangle and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -5648,23 +5648,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method. +- Creates an instance of the callback method. -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Creates a rectangle to select the portion of the image to draw. +- Creates a rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional parallelogram in which to draw an adjusted image. +- Creates an additional parallelogram in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted parallelogram, the position locates the image on the screen, and the size of the rectangle and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -5759,23 +5759,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Pa` event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method. +- Creates an instance of the callback method. -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a parallelogram in which to draw the image. +- Creates points that define a parallelogram in which to draw the image. -- Creates a rectangle to select the portion of the image to draw. +- Creates a rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional parallelogram in which to draw an adjusted image. +- Creates an additional parallelogram in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted parallelogram, the position locates the image on the screen, and the size of the rectangle and the size and shape of the parallelogram determines the scaling and shearing of the drawn image. @@ -5857,15 +5857,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a destination rectangle in which to draw the image. +- Creates a destination rectangle in which to draw the image. -- Creates the coordinates of a source rectangle from which to extract a portion of the image. +- Creates the coordinates of a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the image to the screen. +- Draws the image to the screen. The position of the destination rectangle locates the image on the screen, and the sizes of the source and destination rectangles determine the scaling of the drawn image, and the size of the source rectangle determines what portion of the original image is drawn to the screen. @@ -5945,15 +5945,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates the coordinates of a destination rectangle in which to draw the image. +- Creates the coordinates of a destination rectangle in which to draw the image. -- Creates a source rectangle from which to extract a portion of the image. +- Creates a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the image to the screen. +- Draws the image to the screen. The position of the destination rectangle locates the image on the screen, the sizes of the source and destination rectangles determine the scaling of the drawn image, and the size of the source rectangle determines what portion of the original image is drawn to the screen. @@ -6044,21 +6044,21 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a destination rectangle in which to draw the image. +- Creates a destination rectangle in which to draw the image. -- Creates the coordinates of a source rectangle from which to extract a portion of the image. +- Creates the coordinates of a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional rectangle in which to draw an adjusted image. +- Creates an additional rectangle in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted destination rectangle, the position locates the image on the screen, and the sizes of the source and destination rectangles determine the scaling of the drawn image, and the size of the source rectangle determines what portion of the original image is drawn to the screen. @@ -6149,21 +6149,21 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a destination rectangle in which to draw the image. +- Creates a destination rectangle in which to draw the image. -- Creates the coordinates of a source rectangle from which to extract a portion of the image. +- Creates the coordinates of a source rectangle from which to extract a portion of the image. -- Sets the unit of measure of the source rectangle to pixels. +- Sets the unit of measure of the source rectangle to pixels. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional rectangle in which to draw an adjusted image. +- Creates an additional rectangle in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted destination rectangle, the position locates the image on the screen, and the sizes of the source and destination rectangles determine the scaling of the drawn image, and the size of the source rectangle determines what portion of the original image is drawn to the screen. @@ -6253,23 +6253,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method. +- Creates an instance of the callback method. -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a destination rectangle in which to draw the image. +- Creates points that define a destination rectangle in which to draw the image. -- Creates a source rectangle to select the portion of the image to draw. +- Creates a source rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional destination rectangle in which to draw an adjusted image. +- Creates an additional destination rectangle in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted destination rectangle, the position locates the image on the screen, and the size of the source rectangle and the size and shape of the destination rectangle determines the scaling of the drawn image. @@ -6361,23 +6361,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method. +- Creates an instance of the callback method. -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a destination rectangle in which to draw the image. +- Creates points that define a destination rectangle in which to draw the image. -- Creates a source rectangle to select the portion of the image to draw. +- Creates a source rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional destination rectangle in which to draw an adjusted image. +- Creates an additional destination rectangle in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted destination rectangle, the position locates the image on the screen, and the size of the source rectangle and the size and shape of the destination rectangle determines the scaling of the drawn image. @@ -6471,23 +6471,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method. +- Creates an instance of the callback method. -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a destination rectangle in which to draw the image. +- Creates points that define a destination rectangle in which to draw the image. -- Creates a source rectangle to select the portion of the image to draw. +- Creates a source rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional destination rectangle in which to draw an adjusted image. +- Creates an additional destination rectangle in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted destination rectangle, the position locates the image on the screen, and the size of the source rectangle and the size and shape of the destination rectangle determines the scaling of the drawn image. @@ -6581,23 +6581,23 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code first defines a callback method for the delegate; the definition is simplistic and merely tests to see whether the method calls it with a null `callBackData` parameter. The main body of the example performs the following actions: -- Creates an instance of the callback method. +- Creates an instance of the callback method. -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates points that define a destination rectangle in which to draw the image. +- Creates points that define a destination rectangle in which to draw the image. -- Creates a source rectangle to select the portion of the image to draw. +- Creates a source rectangle to select the portion of the image to draw. -- Sets the graphics drawing unit to pixel. +- Sets the graphics drawing unit to pixel. -- Draws the original image to the screen. +- Draws the original image to the screen. -- Creates an additional destination rectangle in which to draw an adjusted image. +- Creates an additional destination rectangle in which to draw an adjusted image. -- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. +- Creates and sets the attributes of the adjusted image to have a larger-than-usual gamma value. -- Draws the adjusted image to the screen. +- Draws the adjusted image to the screen. For the original, unadjusted destination rectangle, the position locates the image on the screen, and the size of the source rectangle and the size and shape of the destination rectangle determines the scaling of the drawn image. @@ -6674,11 +6674,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file SampImag.jpg in the folder of the example. +- Creates an image from a JPEG file SampImag.jpg in the folder of the example. -- Creates a point at which to draw the upper-left corner of the image. +- Creates a point at which to draw the upper-left corner of the image. -- Draws the entire image using its physical size. +- Draws the entire image using its physical size. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet64"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet64"::: @@ -6800,11 +6800,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an image from a JPEG file, SampImag.jpg, in the folder of the example. +- Creates an image from a JPEG file, SampImag.jpg, in the folder of the example. -- Creates a point at which to draw the upper-left corner of the image. +- Creates a point at which to draw the upper-left corner of the image. -- Draws the entire image using its physical size. +- Draws the entire image using its physical size. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet65"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet65"::: @@ -6985,11 +6985,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates points for the endpoints of the line. +- Creates points for the endpoints of the line. -- Draws the line to the screen. +- Draws the line to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet66"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet66"::: @@ -7054,11 +7054,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates points for the endpoints of the line. +- Creates points for the endpoints of the line. -- Draws the line to the screen. +- Draws the line to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet67"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet67"::: @@ -7125,11 +7125,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the coordinates of the endpoints of the line. +- Creates the coordinates of the endpoints of the line. -- Draws the line to the screen. +- Draws the line to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet68"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet68"::: @@ -7196,11 +7196,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the coordinates of the endpoints of the line. +- Creates the coordinates of the endpoints of the line. -- Draws the line to the screen. +- Draws the line to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet69"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet69"::: @@ -7280,11 +7280,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates an array of points of segments of the line. +- Creates an array of points of segments of the line. -- Draws the connected line segments to the screen. +- Draws the connected line segments to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet70"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet70"::: @@ -7358,11 +7358,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Code creates a black pen. +- Code creates a black pen. -- Creates an array of points of segments of the line. +- Creates an array of points of segments of the line. -- Draws the connected line segments to the screen. +- Draws the connected line segments to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet71"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet71"::: @@ -7526,11 +7526,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a graphics path object and adds an ellipse to it. +- Creates a graphics path object and adds an ellipse to it. -- Creates a black pen. +- Creates a black pen. -- Draws the graphics path to the screen. +- Draws the graphics path to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet72"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet72"::: @@ -7610,13 +7610,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates a rectangle that bounds a complete ellipse. +- Creates a rectangle that bounds a complete ellipse. -- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). +- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). -- Draws the pie segment to the screen. +- Draws the pie segment to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet73"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet73"::: @@ -7683,13 +7683,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates a rectangle that bounds a complete ellipse. +- Creates a rectangle that bounds a complete ellipse. -- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). +- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). -- Draws the pie segment to the screen. +- Draws the pie segment to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet74"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet74"::: @@ -7761,13 +7761,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle that bounds a complete ellipse. +- Creates the position and size of a rectangle that bounds a complete ellipse. -- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). +- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). -- Draws the pie shape to the screen. +- Draws the pie shape to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet75"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet75"::: @@ -7839,13 +7839,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle that bounds a complete ellipse. +- Creates the position and size of a rectangle that bounds a complete ellipse. -- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). +- Defines the angles at which to start drawing (relative to the x axis) and through which to draw (both in a clockwise direction). -- Draws the pie segment to the screen. +- Draws the pie segment to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet76"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet76"::: @@ -7924,11 +7924,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates an array of seven points for the vertices of the polygon. +- Creates an array of seven points for the vertices of the polygon. -- Draws the polygon to the screen. +- Draws the polygon to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet78"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet78"::: @@ -7998,11 +7998,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates an array of seven points for the vertices of the polygon. +- Creates an array of seven points for the vertices of the polygon. -- Draws the polygon to the screen. +- Draws the polygon to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet77"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet77"::: @@ -8173,11 +8173,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates a rectangle. +- Creates a rectangle. -- Draws the rectangle to the screen. +- Draws the rectangle to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet79"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet79"::: @@ -8275,11 +8275,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle. +- Creates the position and size of a rectangle. -- Draws the rectangle to the screen. +- Draws the rectangle to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet80"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet80"::: @@ -8344,11 +8344,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates the position and size of a rectangle. +- Creates the position and size of a rectangle. -- Draws the rectangle to the screen. +- Draws the rectangle to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet81"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet81"::: @@ -8422,11 +8422,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates an array of three rectangles. +- Creates an array of three rectangles. -- Draws the rectangles to the screen. +- Draws the rectangles to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet82"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet82"::: @@ -8497,11 +8497,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a black pen. +- Creates a black pen. -- Creates an array of three rectangles. +- Creates an array of three rectangles. -- Draws the rectangles to the screen. +- Draws the rectangles to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet83"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet83"::: @@ -8839,15 +8839,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a text string to draw. +- Creates a text string to draw. -- Defines the font as Arial (16pt). +- Defines the font as Arial (16pt). -- Creates a solid, black brush to draw with. +- Creates a solid, black brush to draw with. -- Creates a point for the upper-left corner at which to draw the text. +- Creates a point for the upper-left corner at which to draw the text. -- Draws the string to the screen using the font, brush, and destination point. +- Draws the string to the screen using the font, brush, and destination point. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet84"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet84"::: @@ -8933,17 +8933,17 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a text string to draw. +- Creates a text string to draw. -- Defines the font as Arial (16pt). +- Defines the font as Arial (16pt). -- Creates a solid, black brush to draw with. +- Creates a solid, black brush to draw with. -- Creates a rectangle in which to draw the text. +- Creates a rectangle in which to draw the text. -- Draws the rectangle to the screen. +- Draws the rectangle to the screen. -- Draws the string to the screen using the font, brush, and destination rectangle. +- Draws the string to the screen using the font, brush, and destination rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet86"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet86"::: @@ -9177,17 +9177,17 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a text string to draw. +- Creates a text string to draw. -- Defines the font as Arial (16pt). +- Defines the font as Arial (16pt). -- Creates a solid, black brush to draw with. +- Creates a solid, black brush to draw with. -- Creates a point for the upper-left corner at which to draw the text. +- Creates a point for the upper-left corner at which to draw the text. -- Sets the format of the string to draw vertically. +- Sets the format of the string to draw vertically. -- Draws the string to the screen using the font, brush, destination point, and format. +- Draws the string to the screen using the font, brush, destination point, and format. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet85"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet85"::: @@ -9277,19 +9277,19 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a text string to draw. +- Creates a text string to draw. -- Defines the font as Arial (16pt). +- Defines the font as Arial (16pt). -- Creates a solid, black brush to draw with. +- Creates a solid, black brush to draw with. -- Creates a rectangle in which to draw the text. +- Creates a rectangle in which to draw the text. -- Draws the rectangle to the screen. +- Draws the rectangle to the screen. -- Sets the format of the string to center it within the rectangle. +- Sets the format of the string to center it within the rectangle. -- Draws the string to the screen using the font, brush, and destination rectangle. +- Draws the string to the screen using the font, brush, and destination rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet87"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet87"::: @@ -9365,15 +9365,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a text string to draw. +- Creates a text string to draw. -- Defines the font as Arial (16pt). +- Defines the font as Arial (16pt). -- Creates a solid black brush to draw with. +- Creates a solid black brush to draw with. -- Creates a point for the upper-left corner at which to draw the text. +- Creates a point for the upper-left corner at which to draw the text. -- Draws the string to the screen using the font, brush, and destination point. +- Draws the string to the screen using the font, brush, and destination point. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet88"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet88"::: @@ -9513,17 +9513,17 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a text string to draw. +- Creates a text string to draw. -- Defines the font as Arial (16pt). +- Defines the font as Arial (16pt). -- Creates a solid, black brush to draw with. +- Creates a solid, black brush to draw with. -- Creates the coordinates of a point for the upper-left corner at which to draw the text. +- Creates the coordinates of a point for the upper-left corner at which to draw the text. -- Sets the format of the string to draw vertically +- Sets the format of the string to draw vertically -- Draws the string to the screen using the font, brush, destination point, and format. +- Draws the string to the screen using the font, brush, destination point, and format. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet89"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet89"::: @@ -9595,15 +9595,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Opens a new graphics container and saves the old container. +- Opens a new graphics container and saves the old container. -- Translates the world coordinates in the container. +- Translates the world coordinates in the container. -- Fills a red rectangle in the (translated coordinates of the) new container. +- Fills a red rectangle in the (translated coordinates of the) new container. -- Closes the new container and restores the saved container. +- Closes the new container and restores the saved container. -- Fills a green rectangle (to the untranslated coordinates) of the saved container. +- Fills a green rectangle (to the untranslated coordinates) of the saved container. The result is a green rectangle that overlies a red rectangle of the same size. @@ -12194,13 +12194,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a 100 pixel by 100 pixel rectangle whose upper-left corner is at the coordinate (100, 100). +- Creates a 100 pixel by 100 pixel rectangle whose upper-left corner is at the coordinate (100, 100). -- Creates a region defined by the rectangle. +- Creates a region defined by the rectangle. -- Sets the clipping region to exclude the rectangular region. +- Sets the clipping region to exclude the rectangular region. -- Fills a 300 pixel by 300 pixel rectangle whose upper-left corner is at the coordinate (0, 0) with a solid blue brush. +- Fills a 300 pixel by 300 pixel rectangle whose upper-left corner is at the coordinate (0, 0) with a solid blue brush. The result is a blue rectangle with a square region toward its lower-right corner missing. @@ -12258,11 +12258,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a 100 pixel by 100 pixel rectangle whose upper-left corner is at the coordinate (100, 100). +- Creates a 100 pixel by 100 pixel rectangle whose upper-left corner is at the coordinate (100, 100). -- Sets the clipping region to exclude the rectangle. +- Sets the clipping region to exclude the rectangle. -- Fills a 300 pixel by 300 pixel rectangle whose upper-left corner is at the coordinate (0, 0) with a solid blue brush. +- Fills a 300 pixel by 300 pixel rectangle whose upper-left corner is at the coordinate (0, 0) with a solid blue brush. The result is a blue rectangle with a square area toward its lower-right corner missing. @@ -12345,11 +12345,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates an array of four points to define a spline. +- Creates an array of four points to define a spline. -- Fills the curve on the screen. +- Fills the curve on the screen. The curve has a default tension of 0.5. @@ -12430,11 +12430,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates an array of four points to define a spline. +- Creates an array of four points to define a spline. -- Fills the curve on the screen. +- Fills the curve on the screen. The curve has a default tension of 0.5. @@ -12611,13 +12611,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates an array of four points to define a spline. +- Creates an array of four points to define a spline. -- Sets the fill mode to . +- Sets the fill mode to . -- Fills the curve on the screen. +- Fills the curve on the screen. The curve has a default tension of 0.5. @@ -12696,13 +12696,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates an array of four points to define a spline. +- Creates an array of four points to define a spline. -- Sets the fill mode to . +- Sets the fill mode to . -- Fills the curve on the screen. +- Fills the curve on the screen. The curve has a default tension of 0.5. @@ -12857,15 +12857,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates an array of four points to define a spline. +- Creates an array of four points to define a spline. -- Sets the fill mode to . +- Sets the fill mode to . -- Sets the tension to 1.0. +- Sets the tension to 1.0. -- Fills the curve on the screen. +- Fills the curve on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet95"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet95"::: @@ -12937,15 +12937,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates an array of four points to define a spline. +- Creates an array of four points to define a spline. -- Sets the fill mode to . +- Sets the fill mode to . -- Sets the tension to 1.0. +- Sets the tension to 1.0. -- Fills the curve on the screen. +- Fills the curve on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet98"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet98"::: @@ -13103,11 +13103,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates a rectangle that bounds an ellipse. +- Creates a rectangle that bounds an ellipse. -- Fills the ellipse on the screen. +- Fills the ellipse on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet99"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet99"::: @@ -13168,11 +13168,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates a rectangle that bounds an ellipse. +- Creates a rectangle that bounds an ellipse. -- Fills the ellipse on the screen. +- Fills the ellipse on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet100"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet100"::: @@ -13238,11 +13238,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates the location and size of a rectangle that bounds an ellipse. +- Creates the location and size of a rectangle that bounds an ellipse. -- Fills the ellipse on the screen. +- Fills the ellipse on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet101"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet101"::: @@ -13308,11 +13308,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates the location and size of a rectangle that bounds an ellipse. +- Creates the location and size of a rectangle that bounds an ellipse. -- Fills the ellipse on the screen. +- Fills the ellipse on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet102"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet102"::: @@ -13373,13 +13373,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates a graphics path object. +- Creates a graphics path object. -- Adds an ellipse to the graphics path. +- Adds an ellipse to the graphics path. -- Fills the path on the screen. +- Fills the path on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet103"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet103"::: @@ -13459,13 +13459,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates a rectangle that bounds an ellipse. +- Creates a rectangle that bounds an ellipse. -- Defines the start angle (relative to the x axis) and the sweep angle (both in a clockwise direction). +- Defines the start angle (relative to the x axis) and the sweep angle (both in a clockwise direction). -- Fills the pie-shaped area of the ellipse on the screen. +- Fills the pie-shaped area of the ellipse on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet104"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet104"::: @@ -13573,13 +13573,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates the location and size of a rectangle that bounds an ellipse. +- Creates the location and size of a rectangle that bounds an ellipse. -- Defines the start angle (relative to the x axis) and the sweep angle (both in a clockwise direction). +- Defines the start angle (relative to the x axis) and the sweep angle (both in a clockwise direction). -- Fills the pie-shaped area of the ellipse on the screen. +- Fills the pie-shaped area of the ellipse on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet105"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet105"::: @@ -13651,13 +13651,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid red brush. +- Creates a solid red brush. -- Creates the location and size of a rectangle that bounds an ellipse. +- Creates the location and size of a rectangle that bounds an ellipse. -- Defines the start angle (relative to the x axis) and the sweep angle (both in a clockwise direction). +- Defines the start angle (relative to the x axis) and the sweep angle (both in a clockwise direction). -- Fills the pie-shaped area of the ellipse on the screen. +- Fills the pie-shaped area of the ellipse on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet106"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet106"::: @@ -13732,11 +13732,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates an array of seven points to define a polygon. +- Creates an array of seven points to define a polygon. -- Fills the polygonal area on the screen. +- Fills the polygonal area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet107"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet107"::: @@ -13817,11 +13817,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates an array of seven points to define a polygon. +- Creates an array of seven points to define a polygon. -- Fills the polygonal area on the screen. +- Fills the polygonal area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet109"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet109"::: @@ -13986,13 +13986,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates an array of seven points to define a polygon. +- Creates an array of seven points to define a polygon. -- Sets the fill mode to . +- Sets the fill mode to . -- Fills the polygonal area on the screen. +- Fills the polygonal area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet108"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet108"::: @@ -14058,13 +14058,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates an array of seven points to define a polygon. +- Creates an array of seven points to define a polygon. -- Sets the fill mode to . +- Sets the fill mode to . -- Fills the polygonal area on the screen. +- Fills the polygonal area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples2/CPP/form1.cpp" id="Snippet110"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/DrawImage/form1.cs" id="Snippet110"::: @@ -14219,11 +14219,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates a rectangle. +- Creates a rectangle. -- Fills the rectangular area on the screen. +- Fills the rectangular area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet111"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet111"::: @@ -14284,11 +14284,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates a rectangle. +- Creates a rectangle. -- Fills the rectangular area on the screen. +- Fills the rectangular area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet112"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet112"::: @@ -14354,11 +14354,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates the location and size of a rectangle. +- Creates the location and size of a rectangle. -- Fills the rectangular area on the screen. +- Fills the rectangular area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet113"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet113"::: @@ -14424,11 +14424,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates the location and size of a rectangle. +- Creates the location and size of a rectangle. -- Fills the rectangular area on the screen. +- Fills the rectangular area on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet114"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet114"::: @@ -14502,11 +14502,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates an array of three rectangles. +- Creates an array of three rectangles. -- Fills the three rectangular areas on the screen. +- Fills the three rectangular areas on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet115"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet115"::: @@ -14745,13 +14745,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates a solid blue brush. +- Creates a solid blue brush. -- Creates a rectangle. +- Creates a rectangle. -- Creates a rectangular region. +- Creates a rectangular region. -- Fills the rectangular region on the screen. +- Fills the rectangular region on the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet117"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet117"::: @@ -15031,13 +15031,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates an internal pointer type variable `hdc` and sets it to the handle to the device context of the graphics object of the form. +- Creates an internal pointer type variable `hdc` and sets it to the handle to the device context of the graphics object of the form. -- Creates a new graphics object using `hdc`. +- Creates a new graphics object using `hdc`. -- Draws a rectangle with the new graphics object (on the screen). +- Draws a rectangle with the new graphics object (on the screen). -- Releases the new graphics object using `hdc`. +- Releases the new graphics object using `hdc`. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet118"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet118"::: @@ -15209,13 +15209,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler, as well as `thisForm`, the for the example. The code performs the following actions: -- Creates a new internal pointer variable `hwnd` and sets it to the handle of the example's form. +- Creates a new internal pointer variable `hwnd` and sets it to the handle of the example's form. -- Creates a new from the handle. +- Creates a new from the handle. -- Draws a rectangle to the new using a red pen. +- Draws a rectangle to the new using a red pen. -- Disposes the new . +- Disposes the new . :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet119"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet119"::: @@ -15343,15 +15343,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following action: -- Creates an from a graphics file SampImag.jpg in the example folder. +- Creates an from a graphics file SampImag.jpg in the example folder. -- Creates a from the . +- Creates a from the . -- Alters the image by filling a rectangle within it. +- Alters the image by filling a rectangle within it. -- Draws the to the screen. +- Draws the to the screen. -- Releases the created . +- Releases the created . :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet120"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet120"::: @@ -15550,21 +15550,21 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Defines interoperability attributes for the Windows DLL file gdi32.dll, which contains the necessary GDI functions. +- Defines interoperability attributes for the Windows DLL file gdi32.dll, which contains the necessary GDI functions. -- Defines the `SelectPalette` and `RealizePalette` functions in that DLL as external. +- Defines the `SelectPalette` and `RealizePalette` functions in that DLL as external. -- Creates an image from an existing image file SampImag.jpg (which must be in the same folder as the example code file) and draws the image to the screen. +- Creates an image from an existing image file SampImag.jpg (which must be in the same folder as the example code file) and draws the image to the screen. -- Creates internal pointer type variables and sets their values to the handle to the graphics object and to the current Windows halftone palette, respectively. +- Creates internal pointer type variables and sets their values to the handle to the graphics object and to the current Windows halftone palette, respectively. -- Selects and realizes the halftone palette. +- Selects and realizes the halftone palette. -- Creates a new graphics object using the `hdc` parameter. +- Creates a new graphics object using the `hdc` parameter. -- Draws the image again. +- Draws the image again. -- Releases the handle to the device context. +- Releases the handle to the device context. The result is two renderings of the sample image: one with the 16-bit palette and one with the 8-bit palette. @@ -15633,19 +15633,19 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The example illustrates calling a Windows GDI function to perform the same task as a GDI+ method. The code performs the following actions: -- Defines the interoperability attribute for the Windows DLL file gdi32.dll. This DLL contains the desired GDI function. +- Defines the interoperability attribute for the Windows DLL file gdi32.dll. This DLL contains the desired GDI function. -- Defines the function in that DLL as external. +- Defines the function in that DLL as external. -- Creates a red pen. +- Creates a red pen. -- With the pen, draws a rectangle to the screen using the GDI+ method. +- With the pen, draws a rectangle to the screen using the GDI+ method. -- Defines an internal pointer type variable `hdc` and sets its value to the handle to the device context of the form. +- Defines an internal pointer type variable `hdc` and sets its value to the handle to the device context of the form. -- Draws a rectangle to the screen using the GDI function. +- Draws a rectangle to the screen using the GDI function. -- Releases the device context represented by the `hdc` parameter. +- Releases the device context represented by the `hdc` parameter. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet122"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet122"::: @@ -15697,15 +15697,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates an arbitrary color with ARGB coordinates (255, 165, 63, 136). +- Creates an arbitrary color with ARGB coordinates (255, 165, 63, 136). -- Creates a solid brush and sets its color to the specified color. +- Creates a solid brush and sets its color to the specified color. -- Fills an ellipse using the arbitrary color. +- Fills an ellipse using the arbitrary color. -- Creates a second color and sets its value to the nearest system ARGB color. +- Creates a second color and sets its value to the nearest system ARGB color. -- Fills a second ellipse with this color. +- Fills a second ellipse with this color. The result is two ellipses: the first drawn with the arbitrary specified color and the second drawn with the system color nearest the specified color. @@ -15813,15 +15813,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle with upper-left corner at (0, 0) and sets the clipping region to this rectangle. +- Creates a rectangle with upper-left corner at (0, 0) and sets the clipping region to this rectangle. -- Creates a second rectangle with upper-left corner at (100, 100) and sets the clipping region to the intersection of this rectangle and the current clipping region (the first rectangle). +- Creates a second rectangle with upper-left corner at (100, 100) and sets the clipping region to the intersection of this rectangle and the current clipping region (the first rectangle). -- Fills a large rectangle that includes both previous rectangles with a solid blue brush. +- Fills a large rectangle that includes both previous rectangles with a solid blue brush. -- Resets the clipping region to infinite. +- Resets the clipping region to infinite. -- Draws rectangles around the two clipping regions. It uses a black pen for the first clipping rectangle and a red pen for the second clipping region. +- Draws rectangles around the two clipping regions. It uses a black pen for the first clipping rectangle and a red pen for the second clipping region. The result is that only the intersection of the two rectangles is filled with blue. @@ -15879,15 +15879,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle with upper-left corner at (0, 0) and sets the clipping region to this rectangle. +- Creates a rectangle with upper-left corner at (0, 0) and sets the clipping region to this rectangle. -- Creates a second rectangle with upper-left corner at (100, 100) and sets the clipping region to the intersection of this rectangle and the current clipping region (the first rectangle). +- Creates a second rectangle with upper-left corner at (100, 100) and sets the clipping region to the intersection of this rectangle and the current clipping region (the first rectangle). -- Fills a large rectangle that includes both previous rectangles with a solid blue brush. +- Fills a large rectangle that includes both previous rectangles with a solid blue brush. -- Resets the clipping region to infinite. +- Resets the clipping region to infinite. -- Draws rectangles around the two clipping regions. It uses a black pen for the first clipping rectangle and a red pen for the second clipping region. +- Draws rectangles around the two clipping regions. It uses a black pen for the first clipping rectangle and a red pen for the second clipping region. The result is that only the intersection of the two rectangles is filled with blue. @@ -15945,19 +15945,19 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle with upper-left corner at (0, 0). +- Creates a rectangle with upper-left corner at (0, 0). -- Creates a region and sets it to the rectangle, and sets the clipping region to this region. +- Creates a region and sets it to the rectangle, and sets the clipping region to this region. -- Creates a second rectangle with upper-left corner at (100, 100). +- Creates a second rectangle with upper-left corner at (100, 100). -- Creates a region and sets it to the second rectangle, and sets the clipping region to the intersection of this region and the current clipping region (the first rectangle) using a combine mode of . +- Creates a region and sets it to the second rectangle, and sets the clipping region to the intersection of this region and the current clipping region (the first rectangle) using a combine mode of . -- Fills a large rectangle that includes both previous regions with a solid blue brush. +- Fills a large rectangle that includes both previous regions with a solid blue brush. -- Resets the clipping region to infinite. +- Resets the clipping region to infinite. -- Draws rectangles around the two clipping regions. It uses a black pen for the first clipping region and a red pen for the second clipping region. +- Draws rectangles around the two clipping regions. It uses a black pen for the first clipping region and a red pen for the second clipping region. The result is that only the intersection of the two regions is filled with blue. @@ -16056,11 +16056,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . -- Creates two points, one inside the clipping region and one outside. +- Creates two points, one inside the clipping region and one outside. -- Tests each of the points for visibility and draws only the visible one. +- Tests each of the points for visibility and draws only the visible one. The result is one small red circle, which is within the clip region. @@ -16115,11 +16115,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics of the form using . -- Creates two points, one inside the clipping region and one outside. +- Creates two points, one inside the clipping region and one outside. -- Tests each of the points for visibility and draws only the visible one. +- Tests each of the points for visibility and draws only the visible one. The result is one small red circle, which is within the clip region. @@ -16174,11 +16174,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . -- Creates the location and size of two rectangles, one inside the clipping region and one outside. +- Creates the location and size of two rectangles, one inside the clipping region and one outside. -- Tests each of the rectangles for visibility and draws only the visible one. +- Tests each of the rectangles for visibility and draws only the visible one. The result is one small red rectangle, which is within the clip region. @@ -16233,11 +16233,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . -- Creates two rectangles, one inside the clipping region and one outside. +- Creates two rectangles, one inside the clipping region and one outside. -- Tests each of the rectangles for visibility and draws only the visible one. +- Tests each of the rectangles for visibility and draws only the visible one. The result is one small red rectangle, which is within the clip region. @@ -16293,11 +16293,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . -- Creates two points, one inside the clipping region and one outside. +- Creates two points, one inside the clipping region and one outside. -- Tests each of the points for visibility and draws only the visible one. +- Tests each of the points for visibility and draws only the visible one. The result is one small red circle, which is within the clip region. @@ -16353,11 +16353,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . -- Creates two points, one inside the clipping region and one outside. +- Creates two points, one inside the clipping region and one outside. -- Tests each of the points for visibility and draws only the visible one. +- Tests each of the points for visibility and draws only the visible one. The result is one small red circle, which is within the clip region. @@ -16417,11 +16417,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . -- Creates the location and size of two rectangles, one inside the clipping region and one outside. +- Creates the location and size of two rectangles, one inside the clipping region and one outside. -- Tests each of the rectangles for visibility and draws only the visible one. +- Tests each of the rectangles for visibility and draws only the visible one. The result is one small red rectangle, which is within the clip region. @@ -16481,11 +16481,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . +- Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form using . -- Creates the location and size of two rectangles, one inside the clipping region and one outside. +- Creates the location and size of two rectangles, one inside the clipping region and one outside. -- Tests each of the rectangles for visibility and draws only the visible one. +- Tests each of the rectangles for visibility and draws only the visible one. The result is one small red rectangle, which is within the clip region. @@ -16660,19 +16660,19 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Sets a string "First and Second ranges" and a font for display of the string ("Times New Roman", 16 point). +- Sets a string "First and Second ranges" and a font for display of the string ("Times New Roman", 16 point). -- Sets two character ranges within the string (which correspond to the words "First" and "Second"). +- Sets two character ranges within the string (which correspond to the words "First" and "Second"). -- Creates a rectangle in which to display the string. +- Creates a rectangle in which to display the string. -- Sets the formatting of the string ¾ including the two character ranges. +- Sets the formatting of the string ¾ including the two character ranges. -- Draws the string to the screen. +- Draws the string to the screen. -- Measures the character ranges, determines rectangles that bound the two specified ranges. +- Measures the character ranges, determines rectangles that bound the two specified ranges. -- Draws the two rectangles to the screen. +- Draws the two rectangles to the screen. The result is the displayed string with the first range ("First") bounded by a red rectangle and the second range ("Second") bounded by a blue rectangle. @@ -16794,15 +16794,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a string to measure. +- Creates a string to measure. -- Creates a font object and sets it to Arial (16 point). +- Creates a font object and sets it to Arial (16 point). -- Creates a size object and uses it and the font object to measure the size of the string. +- Creates a size object and uses it and the font object to measure the size of the string. -- Draws a red rectangle using the measured size of the string. +- Draws a red rectangle using the measured size of the string. -- Draws the string within the drawn rectangle. +- Draws the string within the drawn rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet136"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet136"::: @@ -16969,15 +16969,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a string to measure and a font object set to Arial (16 point). +- Creates a string to measure and a font object set to Arial (16 point). -- Sets the maximum layout size of the string. +- Sets the maximum layout size of the string. -- Creates a size object and uses it, the font object, and the maximum layout size to measure the size of the string. +- Creates a size object and uses it, the font object, and the maximum layout size to measure the size of the string. -- Draws a red rectangle using the measured size of the string. +- Draws a red rectangle using the measured size of the string. -- Draws the string within the drawn rectangle. +- Draws the string within the drawn rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet138"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet138"::: @@ -17054,15 +17054,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a string to measure and a font object set to Arial (16 point). +- Creates a string to measure and a font object set to Arial (16 point). -- Sets the maximum width of the string. +- Sets the maximum width of the string. -- Creates a size object and uses it, the font object, and the maximum string width to measure the size of the string. +- Creates a size object and uses it, the font object, and the maximum string width to measure the size of the string. -- Draws a red rectangle using the measured size of the string. +- Draws a red rectangle using the measured size of the string. -- Draws the string within the drawn rectangle. +- Draws the string within the drawn rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet141"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet141"::: @@ -17294,19 +17294,19 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a string to measure and a font object set to Arial (16 point) +- Creates a string to measure and a font object set to Arial (16 point) -- Creates a point to locate the upper-left corner of the string. +- Creates a point to locate the upper-left corner of the string. -- Creates a string format object and sets its format flags to . +- Creates a string format object and sets its format flags to . -- Creates a size object to measure the string. +- Creates a size object to measure the string. -- Measures the size of the string, using the string, the font object, the locating point, and the string format. +- Measures the size of the string, using the string, the font object, the locating point, and the string format. -- Draws a red rectangle using the locating point and the measured size of the string. +- Draws a red rectangle using the locating point and the measured size of the string. -- Draws the string within the drawn rectangle. +- Draws the string within the drawn rectangle. The result is a vertical rectangle enclosing a vertical string. @@ -17387,17 +17387,17 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a string to measure and a font object set to Arial (16 point). +- Creates a string to measure and a font object set to Arial (16 point). -- Sets the maximum layout size of the string, creating a size object to measure the string. +- Sets the maximum layout size of the string, creating a size object to measure the string. -- Creates a string format object and sets its format flags to . +- Creates a string format object and sets its format flags to . -- Measures the size of the string, using the string, the font object, the maximum layout size, and the string format. +- Measures the size of the string, using the string, the font object, the maximum layout size, and the string format. -- Draws a red rectangle using the measured size of the string. +- Draws a red rectangle using the measured size of the string. -- Draws the string within the drawn rectangle. +- Draws the string within the drawn rectangle. The result is a vertical rectangle enclosing a vertical string. @@ -17477,19 +17477,19 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a string to measure and a font object set it to Arial (16 point). +- Creates a string to measure and a font object set it to Arial (16 point). -- Sets the maximum width of the string. +- Sets the maximum width of the string. -- Creates a string format object and sets its format flags to . +- Creates a string format object and sets its format flags to . -- Creates a size object to measure the string. +- Creates a size object to measure the string. -- Measures the size of the string, using the string, the font object, the maximum width, and the string format. +- Measures the size of the string, using the string, the font object, the maximum width, and the string format. -- Draws a red rectangle using the measured size of the string. +- Draws a red rectangle using the measured size of the string. -- Draws the string within the drawn rectangle. +- Draws the string within the drawn rectangle. The result is a vertical rectangle enclosing a vertical string. @@ -17629,21 +17629,21 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a string to measure and a font object set to Arial (16 point) +- Creates a string to measure and a font object set to Arial (16 point) -- Sets the maximum layout size of the string. +- Sets the maximum layout size of the string. -- Creates a string format object and sets its format flags to . +- Creates a string format object and sets its format flags to . -- Creates the integer variables `charactersFitted` and `linesFilled` and a size object to measure the string. +- Creates the integer variables `charactersFitted` and `linesFilled` and a size object to measure the string. -- Measures the size of the string and determines the number of characters fitted and lines filled, using the string, the font object, the maximum layout size, and the string format. +- Measures the size of the string and determines the number of characters fitted and lines filled, using the string, the font object, the maximum layout size, and the string format. -- Draws a red rectangle using the measured size of the string. +- Draws a red rectangle using the measured size of the string. -- Draws the string within the drawn rectangle. +- Draws the string within the drawn rectangle. -- Draws the values of the number of characters fitted and lines filled. +- Draws the values of the number of characters fitted and lines filled. The result is a vertical rectangle enclosing a vertical string. @@ -17774,15 +17774,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a `transformMatrix` matrix (a two by two identity matrix plus a zero-translation vector). +- Creates a `transformMatrix` matrix (a two by two identity matrix plus a zero-translation vector). -- Translates the transform matrix by a vector (200, 100). +- Translates the transform matrix by a vector (200, 100). -- Rotates the world transformation matrix of the Windows Form by 30 degrees, prepends the rotation matrix for 30 degrees to the form's transformation matrix. +- Rotates the world transformation matrix of the Windows Form by 30 degrees, prepends the rotation matrix for 30 degrees to the form's transformation matrix. -- Multiplies the rotated world transformation matrix by the translated `transformMatrix`, and prepends the `transformMatrix` to the world transformation matrix. +- Multiplies the rotated world transformation matrix by the translated `transformMatrix`, and prepends the `transformMatrix` to the world transformation matrix. -- Draws a rotated, translated ellipse. +- Draws a rotated, translated ellipse. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet143"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet143"::: @@ -17840,15 +17840,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a `transformMatrix` matrix (a two by two identity matrix plus a zero-translation vector). +- Creates a `transformMatrix` matrix (a two by two identity matrix plus a zero-translation vector). -- Translates the transform matrix by a vector (200, 100). +- Translates the transform matrix by a vector (200, 100). -- Rotates the world transformation matrix of the Windows Form by 30 degrees, prepending the rotation matrix for 30 degrees to the form's transformation matrix. +- Rotates the world transformation matrix of the Windows Form by 30 degrees, prepending the rotation matrix for 30 degrees to the form's transformation matrix. -- Multiplies the rotated world transformation matrix by the translated `transformMatrix`, appending the `transformMatrix` to the world transformation matrix. +- Multiplies the rotated world transformation matrix by the translated `transformMatrix`, appending the `transformMatrix` to the world transformation matrix. -- Draws a rotated, translated ellipse. +- Draws a rotated, translated ellipse. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet144"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet144"::: @@ -18109,17 +18109,17 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The example illustrates calling a Windows GDI function to perform the same task as a GDI+ method. The code performs the following actions: -- Defines the interoperability attribute for the Windows DLL file gdi32.dll. This DLL contains the desired GDI function, and it defines the function in that DLL as external. +- Defines the interoperability attribute for the Windows DLL file gdi32.dll. This DLL contains the desired GDI function, and it defines the function in that DLL as external. -- Creates a red pen. +- Creates a red pen. -- With the pen, draws a rectangle to the screen using the GDI+ method. +- With the pen, draws a rectangle to the screen using the GDI+ method. -- Defines an internal pointer type variable `hdc` and sets its value to the handle to the device context of the form. +- Defines an internal pointer type variable `hdc` and sets its value to the handle to the device context of the form. -- Draws a rectangle to the screen using the GDI function. +- Draws a rectangle to the screen using the GDI function. -- Releases the device context represented by the `hdc` parameter. +- Releases the device context represented by the `hdc` parameter. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet145"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet145"::: @@ -18252,15 +18252,15 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle with upper-left corner at (0, 0) and sets the clipping region to this rectangle. +- Creates a rectangle with upper-left corner at (0, 0) and sets the clipping region to this rectangle. -- Creates a second rectangle with upper-left corner at (100, 100) and sets the clipping region to the intersection of this rectangle and the current clipping region (the first rectangle). +- Creates a second rectangle with upper-left corner at (100, 100) and sets the clipping region to the intersection of this rectangle and the current clipping region (the first rectangle). -- Fills a large rectangle that includes both previous rectangles with a solid blue brush. +- Fills a large rectangle that includes both previous rectangles with a solid blue brush. -- Resets the clipping region to infinite. +- Resets the clipping region to infinite. -- Draws rectangles around the two clipping regions; it uses a black pen for the first clipping rectangle and a red pen for the second clipping region. +- Draws rectangles around the two clipping regions; it uses a black pen for the first clipping rectangle and a red pen for the second clipping region. The result is that only the intersection of the two rectangles is filled with blue. @@ -18314,13 +18314,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Translates the world transform of the Windows Form by a vector (100, 0). +- Translates the world transform of the Windows Form by a vector (100, 0). -- Saves the graphics state of the form. +- Saves the graphics state of the form. -- Resets the world transform of the form to an identity and fills a rectangle with a solid red brush. +- Resets the world transform of the form to an identity and fills a rectangle with a solid red brush. -- Restores the translated graphics state and fills a rectangle with a solid blue brush. +- Restores the translated graphics state and fills a rectangle with a solid blue brush. The result is an untranslated red-filled rectangle and a translated blue-filled rectangle. @@ -18384,13 +18384,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Translates the world transform of the Windows Form by a vector (100, 0). +- Translates the world transform of the Windows Form by a vector (100, 0). -- Saves the graphics state of the form. +- Saves the graphics state of the form. -- Resets the world transform of the form to an identity and fills a rectangle with a solid red brush. +- Resets the world transform of the form to an identity and fills a rectangle with a solid red brush. -- Restores the translated graphics state and fills a second rectangle with a solid blue brush. +- Restores the translated graphics state and fills a second rectangle with a solid blue brush. The result is an untranslated red-filled rectangle and a translated blue-filled rectangle. @@ -18462,11 +18462,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Translates the world transformation matrix of the Windows Form by the vector (100, 0). +- Translates the world transformation matrix of the Windows Form by the vector (100, 0). -- Rotates the world transformation by an angle of 30 degrees, prepending the rotation matrix to the world transformation matrix. +- Rotates the world transformation by an angle of 30 degrees, prepending the rotation matrix to the world transformation matrix. -- Draws a rotated, translated ellipse with a blue pen. +- Draws a rotated, translated ellipse with a blue pen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet149"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet149"::: @@ -18523,11 +18523,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Translates the world transformation matrix of the Windows Form by the vector (100, 0). +- Translates the world transformation matrix of the Windows Form by the vector (100, 0). -- Rotates the world transform by an angle of 30 degrees, appending the rotation matrix to the world transformation matrix with . +- Rotates the world transform by an angle of 30 degrees, appending the rotation matrix to the world transformation matrix with . -- Draws a translated, rotated ellipse with a blue pen. +- Draws a translated, rotated ellipse with a blue pen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet150"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet150"::: @@ -18586,13 +18586,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Translates the world transform of the Windows Form by a vector (100, 0). +- Translates the world transform of the Windows Form by a vector (100, 0). -- Saves the graphics state of the form. +- Saves the graphics state of the form. -- Resets the world transform of the form to an identity (2x2 identity matrix plus a zero-vector translation) and fills a rectangle with a solid red brush. +- Resets the world transform of the form to an identity (2x2 identity matrix plus a zero-vector translation) and fills a rectangle with a solid red brush. -- Restores the translated graphics state and fills a rectangle with a solid blue brush. +- Restores the translated graphics state and fills a rectangle with a solid blue brush. The result is an untranslated red-filled rectangle on the left and a translated blue-filled rectangle on the right of the form. @@ -18666,11 +18666,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Rotates the world transformation matrix of the Windows Form by 30 degrees. +- Rotates the world transformation matrix of the Windows Form by 30 degrees. -- Scales that matrix by a factor of 3 in the x direction and a factor of 1 in the y direction by prepending the scaling transformation. +- Scales that matrix by a factor of 3 in the x direction and a factor of 1 in the y direction by prepending the scaling transformation. -- Draws a scaled, rotated rectangle with a blue pen. +- Draws a scaled, rotated rectangle with a blue pen. The result is still a rectangle. @@ -18731,11 +18731,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Rotates the world transformation matrix of the Windows Form by 30 degrees. +- Rotates the world transformation matrix of the Windows Form by 30 degrees. -- Scales that matrix by a factor of 3 in the x direction and a factor of 1 in the y direction by appending the scaling transformation with the member. +- Scales that matrix by a factor of 3 in the x direction and a factor of 1 in the y direction by appending the scaling transformation with the member. -- Draws a rotated, scaled rectangle with a blue pen. +- Draws a rotated, scaled rectangle with a blue pen. The result is a parallelogram. @@ -18808,11 +18808,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a graphics path and adds an ellipse to the path. +- Creates a graphics path and adds an ellipse to the path. -- Sets the clipping region to the elliptical path. +- Sets the clipping region to the elliptical path. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a filled, black ellipse. @@ -18871,13 +18871,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler, as well as `thisForm`, the for the example. The code performs the following actions: -- Creates a temporary from the `thisForm` of the example. +- Creates a temporary from the `thisForm` of the example. -- Sets the clipping region of the temporary to a small square. +- Sets the clipping region of the temporary to a small square. -- Updates the clipping region of the form's graphic object to that of the temporary . +- Updates the clipping region of the form's graphic object to that of the temporary . -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a small, filled, black square. @@ -18936,11 +18936,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a small rectangle for the clipping region. +- Creates a small rectangle for the clipping region. -- Sets the clipping region to the rectangle. +- Sets the clipping region to the rectangle. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a small, filled, black rectangle. @@ -18999,11 +18999,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a small rectangle for the clipping region. +- Creates a small rectangle for the clipping region. -- Sets the clipping region to the rectangle. +- Sets the clipping region to the rectangle. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a small, filled, black rectangle. @@ -19063,11 +19063,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a graphics path and adds an ellipse to the path. +- Creates a graphics path and adds an ellipse to the path. -- Sets the clipping region to the elliptical path with the member. +- Sets the clipping region to the elliptical path with the member. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a filled, black ellipse. @@ -19122,13 +19122,13 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler, as well as `thisForm`, the for the example. The code performs the following actions: -- Creates a temporary from the `thisForm` of the example. +- Creates a temporary from the `thisForm` of the example. -- Sets the clipping region of the temporary to a small square. +- Sets the clipping region of the temporary to a small square. -- Updates the clipping region of the form's graphic object to that of the new with the member. +- Updates the clipping region of the form's graphic object to that of the new with the member. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a small, filled, black square. @@ -19183,11 +19183,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a small rectangle for the clipping region. +- Creates a small rectangle for the clipping region. -- Sets the clipping region to the rectangle with the member. +- Sets the clipping region to the rectangle with the member. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a small, filled, black rectangle. @@ -19242,11 +19242,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a small rectangle for the clipping region. +- Creates a small rectangle for the clipping region. -- Sets the clipping region to the rectangle with the member. +- Sets the clipping region to the rectangle with the member. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a small, filled, black rectangle. @@ -19301,11 +19301,11 @@ The object has a transform applied othe ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a small rectangle for the clipping region. +- Creates a small rectangle for the clipping region. -- Sets the clipping region to the rectangle with the member. +- Sets the clipping region to the rectangle with the member. -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a small, filled, black rectangle. @@ -19621,15 +19621,15 @@ This is a more performant alternative to `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates two points and draws a blue line between them. +- Creates two points and draws a blue line between them. -- Sets the world transform to translate by amounts 40 in the x direction and 30 in the y direction. +- Sets the world transform to translate by amounts 40 in the x direction and 30 in the y direction. -- Transforms the points from world coordinates () to page coordinates (). +- Transforms the points from world coordinates () to page coordinates (). -- Resets the world transformation to the identity. +- Resets the world transformation to the identity. -- Draws a red line between the transformed points. +- Draws a red line between the transformed points. The result is a blue line and a translated red line below it. @@ -19696,13 +19696,13 @@ This is a more performant alternative to `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates two points and draws a blue line between them. +- Creates two points and draws a blue line between them. -- Sets the world transform to translate by amounts 40 in the x direction and 30 in the y direction. +- Sets the world transform to translate by amounts 40 in the x direction and 30 in the y direction. -- Transforms the points from world coordinates () to page coordinates (). +- Transforms the points from world coordinates () to page coordinates (). -- Resets the world transformation to the identity and draws a red line between the transformed points. +- Resets the world transformation to the identity and draws a red line between the transformed points. The result is a blue line and a translated red line below it. @@ -19853,13 +19853,13 @@ This is a more performant alternative to `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle for the clipping region. +- Creates a rectangle for the clipping region. -- Sets the clipping region to the rectangle. +- Sets the clipping region to the rectangle. -- Translates the clipping region by a vector (50, 50). +- Translates the clipping region by a vector (50, 50). -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a translated, small, black rectangle. @@ -19913,13 +19913,13 @@ This is a more performant alternative to `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle for the clipping region. +- Creates a rectangle for the clipping region. -- Sets the clipping region to the rectangle. +- Sets the clipping region to the rectangle. -- Translates the clipping region by a vector (50.0F, 50.0F). +- Translates the clipping region by a vector (50.0F, 50.0F). -- Fills a large rectangle with a solid black brush. +- Fills a large rectangle with a solid black brush. The result is a translated, small, black rectangle. @@ -19993,11 +19993,11 @@ This is a more performant alternative to `e`, which is a parameter of the event handler. The code performs the following actions: -- Rotates the world transformation matrix of the Windows Form by 30.0F degrees. +- Rotates the world transformation matrix of the Windows Form by 30.0F degrees. -- Moves the origin of the graphics object by calling , prepending the translation to the transformation matrix. +- Moves the origin of the graphics object by calling , prepending the translation to the transformation matrix. -- Draws a translated, rotated ellipse with a blue pen. +- Draws a translated, rotated ellipse with a blue pen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet167"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet167"::: @@ -20062,11 +20062,11 @@ This is a more performant alternative to `e`, which is a parameter of the event handler. The code performs the following actions: -- Rotates the world transformation matrix of the Windows Form by 30.0F degrees. +- Rotates the world transformation matrix of the Windows Form by 30.0F degrees. -- Moves the graphics object's origin by calling , appending the translation to the world transformation matrix. +- Moves the graphics object's origin by calling , appending the translation to the world transformation matrix. -- Draws a rotated, translated ellipse with a blue pen. +- Draws a rotated, translated ellipse with a blue pen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples3/CPP/form1.cpp" id="Snippet168"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/FillRectangle/form1.cs" id="Snippet168"::: diff --git a/xml/System.Drawing/Icon.xml b/xml/System.Drawing/Icon.xml index e893f444b84..5cc629790ee 100644 --- a/xml/System.Drawing/Icon.xml +++ b/xml/System.Drawing/Icon.xml @@ -97,11 +97,11 @@ An icon resource can contain multiple icon images. One icon file may contain images in several sizes and color depths. The image that is used in an application depends on the operating system and settings. The following list details the typical sizes for an icon: -- 16 pixels x 16 pixels +- 16 pixels x 16 pixels -- 32 pixels x 32 pixels +- 32 pixels x 32 pixels -- 48 pixels x 48 pixels +- 48 pixels x 48 pixels ## Examples The following code example demonstrates how to use the method. This example is designed to be used with Windows Forms. Create a form and paste the following code into it. Call the `IconToBitmap` method in the form's event handler, passing `e` as . @@ -167,11 +167,11 @@ ## Remarks An icon resource can contain multiple icon images. One icon file may contain images in several sizes and color depths. The image that is used in an application depends on the operating system and settings. The following list details the typical sizes for an icon: -- 16 pixels x 16 pixels +- 16 pixels x 16 pixels -- 32 pixels x 32 pixels +- 32 pixels x 32 pixels -- 48 pixels x 48 pixels +- 48 pixels x 48 pixels This constructor returns the smallest image that is contained in the specified stream. @@ -223,11 +223,11 @@ ## Remarks An icon resource can contain multiple icon images. One icon file may contain images in several sizes and color depths. The image that is used in an application depends on the operating system and settings. The following list details the typical sizes for an icon: -- 16 pixels x 16 pixels +- 16 pixels x 16 pixels -- 32 pixels x 32 pixels +- 32 pixels x 32 pixels -- 48 pixels x 48 pixels +- 48 pixels x 48 pixels This constructor returns the smallest image that is contained in the specified file. @@ -881,15 +881,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Draws that object to the screen. +- Draws that object to the screen. -- Gets an icon handle for the . +- Gets an icon handle for the . -- Sets the attribute of the form to an icon created from the handle. +- Sets the attribute of the form to an icon created from the handle. -- Calls the Windows API function `DestroyIcon` to release resources. +- Calls the Windows API function `DestroyIcon` to release resources. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicBitmapExamples/CPP/form1.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/Clone/form1.cs" id="Snippet6"::: diff --git a/xml/System.Drawing/Image.xml b/xml/System.Drawing/Image.xml index e1e0786d894..187fa78fc30 100644 --- a/xml/System.Drawing/Image.xml +++ b/xml/System.Drawing/Image.xml @@ -103,11 +103,11 @@ ## Examples The following code example is designed for use with Windows Forms. It is a handler for the event. A object is passed to the event and is used to draw the image on the form. The code performs the following actions: -- Creates an image from a file named SampImag.jpg. This file must be located in the same folder as the application executable file. +- Creates an image from a file named SampImag.jpg. This file must be located in the same folder as the application executable file. -- Creates a point at which to draw the upper-left corner of the image. +- Creates a point at which to draw the upper-left corner of the image. -- Draws the unscaled image on the form. +- Draws the unscaled image on the form. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicGraphicsExamples/CPP/form1.cpp" id="Snippet55"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Graphics/Overview/form1.cs" id="Snippet55"::: @@ -479,15 +479,15 @@ ## Remarks Managed GDI+ has built-in encoders and decoders that support the following file types: -- BMP +- BMP -- GIF +- GIF -- JPEG +- JPEG -- PNG +- PNG -- TIFF +- TIFF The file remains locked until the is disposed. @@ -561,15 +561,15 @@ ## Remarks Managed GDI+ has built-in encoders and decoders that support the following file types: -- BMP +- BMP -- GIF +- GIF -- JPEG +- JPEG -- PNG +- PNG -- TIFF +- TIFF If the file does not have a valid image format or if GDI+ does not support the pixel format of the file, this method throws an exception. diff --git a/xml/System.Drawing/Pen.xml b/xml/System.Drawing/Pen.xml index 14b341ecf34..ed227c2587d 100644 --- a/xml/System.Drawing/Pen.xml +++ b/xml/System.Drawing/Pen.xml @@ -427,11 +427,11 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Creates a copy of that pen. +- Creates a copy of that pen. -- Draws a line to the screen, using the copy of the pen. +- Draws a line to the screen, using the copy of the pen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicPenExamples/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Pen/Clone/form1.cs" id="Snippet1"::: @@ -1082,13 +1082,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Draws a line to the screen. +- Draws a line to the screen. -- Multiplies the transformation matrix of the pen by the specified matrix. +- Multiplies the transformation matrix of the pen by the specified matrix. -- Draws a line with the transformed pen. +- Draws a line with the transformed pen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicPenExamples/CPP/form1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Pen/Clone/form1.cs" id="Snippet2"::: @@ -1145,13 +1145,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Draws a line to the screen. +- Draws a line to the screen. -- Multiplies the transformation matrix of the pen by the specified matrix. +- Multiplies the transformation matrix of the pen by the specified matrix. -- Draws a line with the transformed pen. +- Draws a line with the transformed pen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicPenExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Pen/Clone/form1.cs" id="Snippet3"::: @@ -1239,15 +1239,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Sets the transformation matrix of the pen to scale 2 times in the x-axis direction. +- Sets the transformation matrix of the pen to scale 2 times in the x-axis direction. -- Draws a line to the screen. +- Draws a line to the screen. -- Resets the transformation matrix to identity. +- Resets the transformation matrix to identity. -- Draws a second line to the screen. +- Draws a second line to the screen. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicPenExamples/CPP/form1.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Pen/Clone/form1.cs" id="Snippet4"::: @@ -1317,15 +1317,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Draws a rectangle using the pen. +- Draws a rectangle using the pen. -- Scales the pen by 2 times in the x-axis direction. +- Scales the pen by 2 times in the x-axis direction. -- Rotates the pen 90 degrees clockwise. +- Rotates the pen 90 degrees clockwise. -- Draws a second rectangle to demonstrate the difference. +- Draws a second rectangle to demonstrate the difference. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicPenExamples/CPP/form1.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Pen/Clone/form1.cs" id="Snippet5"::: @@ -1382,15 +1382,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Scales the pen by 2 times in the x-axis direction. +- Scales the pen by 2 times in the x-axis direction. -- Draws a rectangle using the pen. +- Draws a rectangle using the pen. -- Rotates the pen 90 degrees clockwise. +- Rotates the pen 90 degrees clockwise. -- Draws a second rectangle to demonstrate the difference. +- Draws a second rectangle to demonstrate the difference. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicPenExamples/CPP/form1.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Pen/Clone/form1.cs" id="Snippet6"::: @@ -1517,13 +1517,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a . +- Creates a . -- Draws a rectangle using the pen. +- Draws a rectangle using the pen. -- Scales the pen by 2 times in the x-axis direction. +- Scales the pen by 2 times in the x-axis direction. -- Draws a second rectangle to demonstrate the difference. +- Draws a second rectangle to demonstrate the difference. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicPenExamples/CPP/form1.cpp" id="Snippet8"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Pen/Clone/form1.cs" id="Snippet8"::: diff --git a/xml/System.Drawing/PointF.xml b/xml/System.Drawing/PointF.xml index b82425ef92f..17b19d2090c 100644 --- a/xml/System.Drawing/PointF.xml +++ b/xml/System.Drawing/PointF.xml @@ -71,11 +71,11 @@ Represents an ordered pair of floating-point x- and y-coordinates that defines a point in a two-dimensional plane. - to a , use or . - + to a , use or . + ]]> @@ -220,11 +220,11 @@ Translates a given by the specified . The translated . - method adds the of the specified size to the x-coordinate of the and the to the y-coordinate of the . - + method adds the of the specified size to the x-coordinate of the and the to the y-coordinate of the . + ]]> @@ -277,19 +277,19 @@ Translates a given by a specified . The translated . - method adds the of the specified size to the x-coordinate of the and the to the y-coordinate of the . - - - -## Examples - The following code example demonstrates how to use the method. To run this example, paste the following code into a Windows Form. Handle the form's event and call `AddExample`, passing `e` as . - + method adds the of the specified size to the x-coordinate of the and the to the y-coordinate of the . + + + +## Examples + The following code example demonstrates how to use the method. To run this example, paste the following code into a Windows Form. Handle the form's event and call `AddExample`, passing `e` as . + :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/SetResolution/Form1.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet6"::: + ]]> @@ -622,16 +622,16 @@ Translates a by a given . The translated . - using the operator. This example is designed to be used with a Windows Form. To run this example, paste this code into a form and call the `AddShadow` method when handling the form's event. Make sure the form contains a named `listBox1`. - + using the operator. This example is designed to be used with a Windows Form. To run this example, paste this code into a form and call the `AddShadow` method when handling the form's event. Make sure the form contains a named `listBox1`. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.MiscExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/.ctor/form12.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.MiscExamples/VB/form1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.MiscExamples/VB/form1.vb" id="Snippet3"::: + ]]> @@ -689,19 +689,19 @@ Translates the by the specified . The translated . - operator adds the of the specified size to the x-coordinate of the and the to the y-coordinate of the . - - The equivalent method for this operator is - -## Examples - The following code example demonstrates how to use the operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `opAdditionExample`, passing `e` as . - + operator adds the of the specified size to the x-coordinate of the and the to the y-coordinate of the . + + The equivalent method for this operator is + +## Examples + The following code example demonstrates how to use the operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `opAdditionExample`, passing `e` as . + :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/SetResolution/Form1.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet5"::: + ]]> @@ -755,14 +755,14 @@ if the and values of the left and right structures are equal; otherwise, . - operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `opAdditionExample`, passing `e` as . - + operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `opAdditionExample`, passing `e` as . + :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/SetResolution/Form1.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet5"::: + ]]> @@ -886,14 +886,14 @@ to indicate the and values of and are not equal; otherwise, . - operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `AddExample`, passing `e` as . - + operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `AddExample`, passing `e` as . + :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/SetResolution/Form1.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet6"::: + ]]> @@ -1017,19 +1017,19 @@ Translates a by the negative of a specified . The translated . - operator subtracts the of the specified size from the x-coordinate of the and the from the y-coordinate of the . - - The equivalent method for this operator is - -## Examples - The following code example demonstrates how to use the operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `opSubtractionExample`, passing `e` as . - + operator subtracts the of the specified size from the x-coordinate of the and the from the y-coordinate of the . + + The equivalent method for this operator is + +## Examples + The following code example demonstrates how to use the operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `opSubtractionExample`, passing `e` as . + :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/SetResolution/Form1.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet8"::: + ]]> @@ -1091,11 +1091,11 @@ Translates a by the negative of a specified size. The translated . - method subtracts the of the specified size from the x-coordinate of the and the from the y-coordinate of the . - + method subtracts the of the specified size from the x-coordinate of the and the from the y-coordinate of the . + ]]> @@ -1148,19 +1148,19 @@ Translates a by the negative of a specified size. The translated . - method subtracts the of the specified size from the x-coordinate of the and the from the y-coordinate of the . - - - -## Examples - The following code example demonstrates how to use the operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `SubtractExample`, passing `e` as . - + method subtracts the of the specified size from the x-coordinate of the and the from the y-coordinate of the . + + + +## Examples + The following code example demonstrates how to use the operator. To run this example, paste the following code into a Windows Form. Handle the form's event and call `SubtractExample`, passing `e` as . + :::code language="csharp" source="~/snippets/csharp/System.Drawing/Bitmap/SetResolution/Form1.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Winforms/System.Drawing.Misc3/VB/Form1.vb" id="Snippet7"::: + ]]> diff --git a/xml/System.Drawing/Region.xml b/xml/System.Drawing/Region.xml index d4d5a8caf86..abcfafbd2cd 100644 --- a/xml/System.Drawing/Region.xml +++ b/xml/System.Drawing/Region.xml @@ -380,17 +380,17 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle and draws it to the screen in black. +- Creates a rectangle and draws it to the screen in black. -- Creates a second rectangle that intersects with the first and draws it to the screen in red. +- Creates a second rectangle that intersects with the first and draws it to the screen in red. -- Creates a region using the first rectangle. +- Creates a region using the first rectangle. -- Creates a , and adds the second rectangle to it. +- Creates a , and adds the second rectangle to it. -- Gets the complement of the region when combined with the . +- Gets the complement of the region when combined with the . -- Fills the complement area with blue and draws it to the screen. +- Fills the complement area with blue and draws it to the screen. Notice that the area of the that does not intersect with the region is colored blue. @@ -488,15 +488,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle and draws it to the screen in black. +- Creates a rectangle and draws it to the screen in black. -- Creates a second rectangle that intersects with the first and draws it to the screen in red. +- Creates a second rectangle that intersects with the first and draws it to the screen in red. -- Creates a region using the first rectangle. +- Creates a region using the first rectangle. -- Gets the complement of that region combined with the second rectangle. +- Gets the complement of that region combined with the second rectangle. -- Fills the complement area with blue and draws it to the screen. +- Fills the complement area with blue and draws it to the screen. Notice that the area of the second rectangle that does not intersect with the region is colored blue. @@ -548,15 +548,15 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle and draws it to the screen in black +- Creates a rectangle and draws it to the screen in black -- Creates a second rectangle that intersects with the first and draws it to the screen in red. +- Creates a second rectangle that intersects with the first and draws it to the screen in red. -- Creates one region using the first rectangle and creates a second region using the second rectangle. +- Creates one region using the first rectangle and creates a second region using the second rectangle. -- Gets the complement of that first region when combined with the second region. +- Gets the complement of that first region when combined with the second region. -- Fills the complement area with blue and draws it to the screen. +- Fills the complement area with blue and draws it to the screen. Notice that the area of the second region that does not intersect with the first region is colored blue. @@ -825,15 +825,15 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle and draws it to the screen in black +- Creates a rectangle and draws it to the screen in black -- Creates a second rectangle that intersects with the first and draws it to the screen in red. +- Creates a second rectangle that intersects with the first and draws it to the screen in red. -- Creates a region using the first rectangle. +- Creates a region using the first rectangle. -- Gets the nonexcluded area of the region when combined with the second rectangle. +- Gets the nonexcluded area of the region when combined with the second rectangle. -- Fills the nonexcluded area with blue and draws it to the screen. +- Fills the nonexcluded area with blue and draws it to the screen. Notice that the area of the area of the region that does not intersect with the rectangle is colored blue. @@ -1016,15 +1016,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a and adds an ellipse to it. +- Creates a and adds an ellipse to it. -- Fills the path with blue and draws it to the screen. +- Fills the path with blue and draws it to the screen. -- Creates a region that uses the . +- Creates a region that uses the . -- Gets the nonexcluded area of the region when combined with the second rectangle. +- Gets the nonexcluded area of the region when combined with the second rectangle. -- Gets the bounding rectangle for the region and draws it to the screen in red. +- Gets the bounding rectangle for the region and draws it to the screen in red. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicRegionExamples/CPP/form1.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/Region/Complement/form1.cs" id="Snippet5"::: @@ -1312,15 +1312,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates the first rectangle and draws it to the screen in black. +- Creates the first rectangle and draws it to the screen in black. -- Creates the second rectangle and draws it to the screen in red. +- Creates the second rectangle and draws it to the screen in red. -- Creates a region from the first rectangle. +- Creates a region from the first rectangle. -- Gets the area of intersection for the region when combined with the second rectangle. +- Gets the area of intersection for the region when combined with the second rectangle. -- Fills the area of intersection with blue and draws it to the screen. +- Fills the area of intersection with blue and draws it to the screen. Notice that only the overlapped area for the region and rectangle is blue. @@ -1684,15 +1684,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates the first rectangle and draws it to the screen in blue. +- Creates the first rectangle and draws it to the screen in blue. -- Creates the second rectangle and draws it to the screen in red. +- Creates the second rectangle and draws it to the screen in red. -- Creates a region from the first rectangle. +- Creates a region from the first rectangle. -- Determines if any portion of the rectangle intersects with the region. +- Determines if any portion of the rectangle intersects with the region. -- Displays the `true` or `false` result on the screen. +- Displays the `true` or `false` result on the screen. Notice that the rectangle intersects the region, so the result is `true`. @@ -2472,15 +2472,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle and draws it to the screen in blue. +- Creates a rectangle and draws it to the screen in blue. -- Creates a region from the rectangle. +- Creates a region from the rectangle. -- Creates a transformation matrix and sets it to 45 degrees. +- Creates a transformation matrix and sets it to 45 degrees. -- Applies the transformation to the region. +- Applies the transformation to the region. -- Fills the transformed region with red and draws the transformed region to the screen in red. +- Fills the transformed region with red and draws the transformed region to the screen in red. Notice that the red rectangle is rotated 45 degrees from the original rectangle, shown in blue. @@ -2545,13 +2545,13 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates a rectangle and draws it to the screen in blue. +- Creates a rectangle and draws it to the screen in blue. -- Creates a region from the rectangle. +- Creates a region from the rectangle. -- Applies the translation to the region. +- Applies the translation to the region. -- Fills the translated region with red and draws the translated region to the screen in red. +- Fills the translated region with red and draws the translated region to the screen in red. Notice that the red rectangle is shifted down and to the right from the original rectangle, shown in blue. @@ -2748,15 +2748,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`. The code performs the following actions: -- Creates the first rectangle and draws it to the screen in black. +- Creates the first rectangle and draws it to the screen in black. -- Creates a second rectangle and draws it to the screen in red. +- Creates a second rectangle and draws it to the screen in red. -- Creates a region using the first rectangle. +- Creates a region using the first rectangle. -- Gets the area of union for `myRegion` when combined with `complementRect`. +- Gets the area of union for `myRegion` when combined with `complementRect`. -- Fills the fills the area of union with blue and draws it to the screen. +- Fills the fills the area of union with blue and draws it to the screen. Notice that both rectangles are filled with blue, including the area of overlap. @@ -2953,15 +2953,15 @@ ## Examples The following code example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Creates the first rectangle and draws it to the screen in black. +- Creates the first rectangle and draws it to the screen in black. -- Creates a second rectangle and draws it to the screen in red. +- Creates a second rectangle and draws it to the screen in red. -- Creates a region using the first rectangle. +- Creates a region using the first rectangle. -- Gets the area for `myRegion` when combined with `complementRect`. +- Gets the area for `myRegion` when combined with `complementRect`. -- Fills the area with blue and draws it to the screen. +- Fills the area with blue and draws it to the screen. Notice that both rectangles are filled with blue, except for the area of overlap. diff --git a/xml/System.Drawing/SolidBrush.xml b/xml/System.Drawing/SolidBrush.xml index 2bd89f01aef..636d1a0591d 100644 --- a/xml/System.Drawing/SolidBrush.xml +++ b/xml/System.Drawing/SolidBrush.xml @@ -91,7 +91,7 @@ The following code example adds a shadow to a using a . +- The following code example adds a shadow to a using a . This example is designed to be used with a Windows Form. To run this example, paste this code into a form and call the `AddShadow` method when handling the form's event. Make sure the form contains a named `listBox1`. diff --git a/xml/System.Drawing/StringFormat.xml b/xml/System.Drawing/StringFormat.xml index 9750634bfde..a12dcd98bae 100644 --- a/xml/System.Drawing/StringFormat.xml +++ b/xml/System.Drawing/StringFormat.xml @@ -695,11 +695,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Sets the tab stops of the . +- Sets the tab stops of the . -- Draws the string and the layout rectangle. Note that the string contains tabs. The tab settings of the specify the offsets of the tabbed text. +- Draws the string and the layout rectangle. Note that the string contains tabs. The tab settings of the specify the offsets of the tabbed text. -- Gets the tab stops and uses or inspects the values. +- Gets the tab stops and uses or inspects the values. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicStringFormatExamples/CPP/form1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/StringFormat/GetTabStops/form1.cs" id="Snippet1"::: @@ -851,11 +851,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Sets, for the , the language to be used and the substitution method to be used. +- Sets, for the , the language to be used and the substitution method to be used. -- Draws the string. +- Draws the string. -- Repeats the above two steps for two different languages (Arabic and Thai). +- Repeats the above two steps for two different languages (Arabic and Thai). The National substitution method and Traditional substitution method are demonstrated for each of the two languages. The National method displays digits according to the official national language of the user's locale. The Traditional method displays digits according to the user's native script or language, which may be different from the official national language. @@ -912,19 +912,19 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Sets the character ranges of the . +- Sets the character ranges of the . -- Measures the character ranges for a given string and layout rectangle. +- Measures the character ranges for a given string and layout rectangle. -- Draws the string and layout rectangle. +- Draws the string and layout rectangle. -- Paints the regions. Each specifies an area that is occupied by a range of characters. The values in the regions are set when the character ranges are measured by the method. +- Paints the regions. Each specifies an area that is occupied by a range of characters. The values in the regions are set when the character ranges are measured by the method. -- Repeats the first four steps, but includes trailing spaces in the measurement of each character range. +- Repeats the first four steps, but includes trailing spaces in the measurement of each character range. -- Clears the format flags of the so that trailing spaces are not included in the measurement of each character range. +- Clears the format flags of the so that trailing spaces are not included in the measurement of each character range. -- Repeats the first four steps, but uses a different layout rectangle just to demonstrate that the layout rectangle affects the measurements of the character ranges. The size of the font will also affect the measurement. +- Repeats the first four steps, but uses a different layout rectangle just to demonstrate that the layout rectangle affects the measurements of the character ranges. The size of the font will also affect the measurement. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicStringFormatExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/StringFormat/GetTabStops/form1.cs" id="Snippet3"::: @@ -982,11 +982,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Sets the tab stops of the . +- Sets the tab stops of the . -- Draws the string and the layout rectangle. Note that the string contains tabs. The tab settings of the specify the offsets of the tabbed text. +- Draws the string and the layout rectangle. Note that the string contains tabs. The tab settings of the specify the offsets of the tabbed text. -- Gets the tab stops and uses or inspects the values. +- Gets the tab stops and uses or inspects the values. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicStringFormatExamples/CPP/form1.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/StringFormat/GetTabStops/form1.cs" id="Snippet4"::: @@ -1039,13 +1039,13 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the event handler. The code performs the following actions: -- Converts a object to a string. +- Converts a object to a string. -- Draws the string. +- Draws the string. -- Changes some properties in the object. +- Changes some properties in the object. -- Draws the string. The string will be different because the properties of the object have changed. +- Draws the string. The string will be different because the properties of the object have changed. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicStringFormatExamples/CPP/form1.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/StringFormat/GetTabStops/form1.cs" id="Snippet5"::: diff --git a/xml/System.Drawing/TextureBrush.xml b/xml/System.Drawing/TextureBrush.xml index 9db5b77137e..ca8ed998ed4 100644 --- a/xml/System.Drawing/TextureBrush.xml +++ b/xml/System.Drawing/TextureBrush.xml @@ -549,13 +549,13 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Creates a new matrix that specifies a translation of 50 units in the x-direction. +- Creates a new matrix that specifies a translation of 50 units in the x-direction. -- Multiplies the matrix with the transformation matrix of the texture brush. +- Multiplies the matrix with the transformation matrix of the texture brush. -- Fills a rectangle, using the texture brush. +- Fills a rectangle, using the texture brush. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet2"::: @@ -612,13 +612,13 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Creates a new matrix that specifies a translation of 50 units in the x-direction. +- Creates a new matrix that specifies a translation of 50 units in the x-direction. -- Multiplies the matrix with the transformation matrix of the texture brush. +- Multiplies the matrix with the transformation matrix of the texture brush. -- Fills a rectangle, using the texture brush. +- Fills a rectangle, using the texture brush. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet3"::: @@ -665,15 +665,15 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Rotates the texture image by 90 degrees. +- Rotates the texture image by 90 degrees. -- Fills a rectangle. +- Fills a rectangle. -- Resets the transformation matrix to identity. +- Resets the transformation matrix to identity. -- Fills a second rectangle. +- Fills a second rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet4"::: @@ -738,11 +738,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Rotates the texture image by 90 degrees. +- Rotates the texture image by 90 degrees. -- Fills a rectangle. +- Fills a rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet5"::: @@ -794,11 +794,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Rotates the texture image by 90 degrees. +- Rotates the texture image by 90 degrees. -- Fills a rectangle. +- Fills a rectangle. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet6"::: @@ -865,11 +865,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Scales the texture image by two times in the x-direction. +- Scales the texture image by two times in the x-direction. -- Fills a rectangle on the screen, using the texture brush. +- Fills a rectangle on the screen, using the texture brush. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet7"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet7"::: @@ -923,11 +923,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Scales the texture image by two times in the x-direction. +- Scales the texture image by two times in the x-direction. -- Fills a rectangle on the screen, using the texture brush. +- Fills a rectangle on the screen, using the texture brush. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet8"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet8"::: @@ -1041,11 +1041,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Translates the texture image 50 units in the x-direction. +- Translates the texture image 50 units in the x-direction. -- Fills a rectangle on the screen, using the texture brush. +- Fills a rectangle on the screen, using the texture brush. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet9"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet9"::: @@ -1099,11 +1099,11 @@ ## Examples The following example is designed for use with Windows Forms, and it requires `e`, which is a parameter of the `Paint` event handler. The code performs the following actions: -- Creates a object. +- Creates a object. -- Translates the texture image 50 units in the x-direction. +- Translates the texture image 50 units in the x-direction. -- Fills a rectangle on the screen, using the texture brush. +- Fills a rectangle on the screen, using the texture brush. :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Winforms/System.Drawing.ClassicTextureBrushExamples/CPP/form1.cpp" id="Snippet10"::: :::code language="csharp" source="~/snippets/csharp/System.Drawing/TextureBrush/Clone/form1.cs" id="Snippet10"::: diff --git a/xml/System.Globalization/Calendar.xml b/xml/System.Globalization/Calendar.xml index 7d7e918487d..4445d3c53f6 100644 --- a/xml/System.Globalization/Calendar.xml +++ b/xml/System.Globalization/Calendar.xml @@ -2530,9 +2530,9 @@ Only the and the object for a particular culture that uses the calendar indicated by the property includes the following culture-specific values that can be used for the `rule` and `firstDayOfWeek` parameters: -- The property contains the default first day of the week that can be used for the `firstDayOfWeek` parameter. +- The property contains the default first day of the week that can be used for the `firstDayOfWeek` parameter. -- The property contains the default calendar week rule that can be used for the `rule` parameter. +- The property contains the default calendar week rule that can be used for the `rule` parameter. > [!NOTE] > This does not map exactly to ISO 8601. The differences are discussed in the blog entry [ISO 8601 Week of Year format in Microsoft .NET](https://go.microsoft.com/fwlink/?LinkId=160851). Starting with .NET Core 3.0, and solve this problem. diff --git a/xml/System.Globalization/CharUnicodeInfo.xml b/xml/System.Globalization/CharUnicodeInfo.xml index d2d6c54393d..530deb445ea 100644 --- a/xml/System.Globalization/CharUnicodeInfo.xml +++ b/xml/System.Globalization/CharUnicodeInfo.xml @@ -77,27 +77,27 @@ Use the class to obtain the value for a specific character. The class defines methods that return the following Unicode character values: -- The specific category to which a character or surrogate pair belongs. The value returned is a member of the enumeration. +- The specific category to which a character or surrogate pair belongs. The value returned is a member of the enumeration. -- Numeric value. Applies only to numeric characters, including fractions, subscripts, superscripts, Roman numerals, currency numerators, encircled numbers, and script-specific digits. +- Numeric value. Applies only to numeric characters, including fractions, subscripts, superscripts, Roman numerals, currency numerators, encircled numbers, and script-specific digits. -- Digit value. Applies to numeric characters that can be combined with other numeric characters to represent a whole number in a numbering system. +- Digit value. Applies to numeric characters that can be combined with other numeric characters to represent a whole number in a numbering system. -- Decimal digit value. Applies only to characters that represent decimal digits in the decimal (base 10) system. A decimal digit can be one of ten digits, from zero through nine. These characters are members of the category. +- Decimal digit value. Applies only to characters that represent decimal digits in the decimal (base 10) system. A decimal digit can be one of ten digits, from zero through nine. These characters are members of the category. In addition, the class is used internally by a number of other .NET types and methods that rely on character classification. These include: -- The class, which works with textual elements instead of single characters in a string. +- The class, which works with textual elements instead of single characters in a string. -- The overloads of the method, which determine the category to which a character or surrogate pair belongs. +- The overloads of the method, which determine the category to which a character or surrogate pair belongs. -- The [character classes](/dotnet/standard/base-types/character-classes-in-regular-expressions) recognized by , .NET's regular expression engine. +- The [character classes](/dotnet/standard/base-types/character-classes-in-regular-expressions) recognized by , .NET's regular expression engine. When using this class in your applications, keep in mind the following programming considerations for using the type. The type can be difficult to use, and strings are generally preferable for representing linguistic content. -- A object does not always correspond to a single character. Although the type represents a single 16-bit value, some characters (such as grapheme clusters and surrogate pairs) consist of two or more UTF-16 code units. For more information, see "Char Objects and Unicode Characters" in the class. +- A object does not always correspond to a single character. Although the type represents a single 16-bit value, some characters (such as grapheme clusters and surrogate pairs) consist of two or more UTF-16 code units. For more information, see "Char Objects and Unicode Characters" in the class. -- The notion of a "character" is also flexible. A character is often thought of as a glyph, but many glyphs require multiple code points. For example, ä can be represented either by two code points ("a" plus U+0308, which is the combining diaeresis), or by a single code point ("ä" or U+00A4). Some languages have many letters, characters, and glyphs that require multiple code points, which can cause confusion in linguistic content representation. For example, there is a ΰ (U+03B0, Greek small letter upsilon with dialytika and tonos), but there is no equivalent capital letter. Uppercasing such a value simply retrieves the original value. +- The notion of a "character" is also flexible. A character is often thought of as a glyph, but many glyphs require multiple code points. For example, ä can be represented either by two code points ("a" plus U+0308, which is the combining diaeresis), or by a single code point ("ä" or U+00A4). Some languages have many letters, characters, and glyphs that require multiple code points, which can cause confusion in linguistic content representation. For example, there is a ΰ (U+03B0, Greek small letter upsilon with dialytika and tonos), but there is no equivalent capital letter. Uppercasing such a value simply retrieves the original value. ## Examples The following code example shows the values returned by each method for different types of characters. diff --git a/xml/System.Globalization/CultureAndRegionModifiers.xml b/xml/System.Globalization/CultureAndRegionModifiers.xml index 87e5a584266..931ce724307 100644 --- a/xml/System.Globalization/CultureAndRegionModifiers.xml +++ b/xml/System.Globalization/CultureAndRegionModifiers.xml @@ -29,11 +29,11 @@ A custom culture can have a combination of these characteristics: -- A custom culture can be a specific culture or a neutral culture. +- A custom culture can be a specific culture or a neutral culture. A specific culture specifies a language and a region, while a neutral culture specifies a language but no region. -- A custom culture can be a replacement culture or a supplemental culture. +- A custom culture can be a replacement culture or a supplemental culture. A replacement culture replaces a culture that ships with the .NET Framework or a locale that ships with Windows. @@ -46,7 +46,7 @@ ## Examples The following code example creates a custom culture with a private use prefix, then lists a set of its properties. The first property is the name of the culture. - + :::code language="csharp" source="~/snippets/csharp/System.Globalization/CultureAndRegionInfoBuilder/.ctor/carib.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/sys.glob.carib1/VB/carib.vb" id="Snippet1"::: diff --git a/xml/System.Globalization/CultureNotFoundException.xml b/xml/System.Globalization/CultureNotFoundException.xml index cebec10d432..615d62e9d2e 100644 --- a/xml/System.Globalization/CultureNotFoundException.xml +++ b/xml/System.Globalization/CultureNotFoundException.xml @@ -85,9 +85,9 @@ - constructors. -- The method. +- The method. -- The method. +- The method. > [!WARNING] > On Windows 7 and later operating systems, the .NET Framework retrieves culture data from the operating system. The exception is thrown if the operating system is unable to find the culture, and the culture is not a custom culture or a replacement culture. diff --git a/xml/System.Globalization/DateTimeFormatInfo.xml b/xml/System.Globalization/DateTimeFormatInfo.xml index c2872a7f969..234a0541d34 100644 --- a/xml/System.Globalization/DateTimeFormatInfo.xml +++ b/xml/System.Globalization/DateTimeFormatInfo.xml @@ -357,8 +357,8 @@ If you set the property, you must also set the property. The and properties are used to format dates using the following format strings: -- A standard date and time format string that aliases a custom format string that includes the "MMM" format specifier. -- A custom date and time format string that includes the "MMM" format specifier. +- A standard date and time format string that aliases a custom format string that includes the "MMM" format specifier. +- A custom date and time format string that includes the "MMM" format specifier. This property is affected if the value of the property changes. If the selected does not support abbreviated month names, the array contains the full month names. @@ -956,9 +956,9 @@ Changing the value of this property affects the following properties as well: property is generated dynamically by concatenating the and properties separated by a space. This dynamic assignment occurs under the following conditions: -- If the property value is retrieved before it has been explicitly set. -- When the value of the property changes. -- When the value of the property changes. +- If the property value is retrieved before it has been explicitly set. +- When the value of the property changes. +- When the value of the property changes. This property is affected if the value of the property changes. @@ -1734,8 +1734,8 @@ This property is affected if the value of the object for a specific culture using one of the following methods: -- The property. -- The method, where `provider` is a object. +- The property. +- The method, where `provider` is a object. A object can be created only for the invariant culture or for specific cultures, not for neutral cultures. diff --git a/xml/System.Globalization/IdnMapping.xml b/xml/System.Globalization/IdnMapping.xml index 81c8248d1af..3c7961f84e5 100644 --- a/xml/System.Globalization/IdnMapping.xml +++ b/xml/System.Globalization/IdnMapping.xml @@ -321,13 +321,13 @@ A label cannot contain any of the following characters: -- Unicode control characters from U+0001 through U+001F, and U+007F. +- Unicode control characters from U+0001 through U+001F, and U+007F. -- Unassigned Unicode characters, if the value of the property is `false`. +- Unassigned Unicode characters, if the value of the property is `false`. -- Non-standard characters in the US-ASCII character range, such as the SPACE (U+0020), EXCLAMATION MARK (U+0021), and LOW LINE (U+005F) characters, if the value of the property is `true`. +- Non-standard characters in the US-ASCII character range, such as the SPACE (U+0020), EXCLAMATION MARK (U+0021), and LOW LINE (U+005F) characters, if the value of the property is `true`. -- Characters that are prohibited by a specific version of the IDNA standard. For more information about prohibited characters, see [RFC 3454: Preparation of Internationalized Strings ("stringprep")](https://go.microsoft.com/fwlink/?LinkId=231873) for IDNA 2003, and [RFC 5982: The Unicode Code Points and Internationalized Domain Names for Applications](https://go.microsoft.com/fwlink/?LinkId=231877) for IDNA 2008. +- Characters that are prohibited by a specific version of the IDNA standard. For more information about prohibited characters, see [RFC 3454: Preparation of Internationalized Strings ("stringprep")](https://go.microsoft.com/fwlink/?LinkId=231873) for IDNA 2003, and [RFC 5982: The Unicode Code Points and Internationalized Domain Names for Applications](https://go.microsoft.com/fwlink/?LinkId=231877) for IDNA 2008. The method converts all label separators to FULL STOP (period, U+002E). @@ -350,9 +350,9 @@ In the .NET Framework 4.5, the class supports different versions of the IDNA standard, depending on the operating system in use: -- When run on Windows 8, it supports the 2008 version of the IDNA standard outlined by RFC 5891: Internationalized Domain Names in Applications (IDNA): Protocol. +- When run on Windows 8, it supports the 2008 version of the IDNA standard outlined by RFC 5891: Internationalized Domain Names in Applications (IDNA): Protocol. -- When run on earlier versions of the Windows operating system, it supports the 2003 version of the standard outlined by RFC 3490: Internationalizing Domain Names in Applications (IDNA). +- When run on earlier versions of the Windows operating system, it supports the 2003 version of the standard outlined by RFC 3490: Internationalizing Domain Names in Applications (IDNA). See Unicode Technical Standard #46: IDNA Compatibility Processing for the differences in the way these standards handle particular sets of characters. @@ -414,13 +414,13 @@ A label cannot contain any of the following characters: -- Unicode control characters from U+0001 through U+001F, and U+007F. +- Unicode control characters from U+0001 through U+001F, and U+007F. -- Unassigned Unicode characters, depending on the value of the property. +- Unassigned Unicode characters, depending on the value of the property. -- Non-standard characters in the US-ASCII character range, such as the SPACE (U+0020), EXCLAMATION MARK (U+0021), and LOW LINE (U+005F) characters, depending on the value of the property. +- Non-standard characters in the US-ASCII character range, such as the SPACE (U+0020), EXCLAMATION MARK (U+0021), and LOW LINE (U+005F) characters, depending on the value of the property. -- Characters that are prohibited by a specific version of the IDNA standard. For more information about prohibited characters, see [RFC 3454: Preparation of Internationalized Strings ("stringprep")](https://go.microsoft.com/fwlink/?LinkId=231873) for IDNA 2003, and [RFC 5982: The Unicode Code Points and Internationalized Domain Names for Applications](https://go.microsoft.com/fwlink/?LinkId=231877) for IDNA 2008. +- Characters that are prohibited by a specific version of the IDNA standard. For more information about prohibited characters, see [RFC 3454: Preparation of Internationalized Strings ("stringprep")](https://go.microsoft.com/fwlink/?LinkId=231873) for IDNA 2003, and [RFC 5982: The Unicode Code Points and Internationalized Domain Names for Applications](https://go.microsoft.com/fwlink/?LinkId=231877) for IDNA 2008. The method converts all label separators to FULL STOP (period, U+002E). @@ -443,9 +443,9 @@ In the .NET Framework 4.5, the class supports different versions of the IDNA standard, depending on the operating system in use: -- When run on Windows 8, it supports the 2008 version of the IDNA standard outlined by RFC 5891: Internationalized Domain Names in Applications (IDNA): Protocol. +- When run on Windows 8, it supports the 2008 version of the IDNA standard outlined by RFC 5891: Internationalized Domain Names in Applications (IDNA): Protocol. -- When run on earlier versions of the Windows operating system, it supports the 2003 version of the standard outlined by RFC 3490: Internationalizing Domain Names in Applications (IDNA). +- When run on earlier versions of the Windows operating system, it supports the 2003 version of the standard outlined by RFC 3490: Internationalizing Domain Names in Applications (IDNA). See Unicode Technical Standard #46: IDNA Compatibility Processing for the differences in the way these standards handle particular sets of characters. @@ -509,13 +509,13 @@ A label cannot contain any of the following characters: -- Unicode control characters from U+0001 through U+001F, and U+007F. +- Unicode control characters from U+0001 through U+001F, and U+007F. -- Unassigned Unicode characters, depending on the value of the property. +- Unassigned Unicode characters, depending on the value of the property. -- Non-standard characters in the US-ASCII character range, such as the SPACE (U+0020), EXCLAMATION MARK (U+0021), and LOW LINE (U+005F) characters, depending on the value of the property. +- Non-standard characters in the US-ASCII character range, such as the SPACE (U+0020), EXCLAMATION MARK (U+0021), and LOW LINE (U+005F) characters, depending on the value of the property. -- Characters that are prohibited by a specific version of the IDNA standard. For more information about prohibited characters, see [RFC 3454: Preparation of Internationalized Strings ("stringprep")](https://go.microsoft.com/fwlink/?LinkId=231873) for IDNA 2003, and [RFC 5982: The Unicode Code Points and Internationalized Domain Names for Applications](https://go.microsoft.com/fwlink/?LinkId=231877) for IDNA 2008. +- Characters that are prohibited by a specific version of the IDNA standard. For more information about prohibited characters, see [RFC 3454: Preparation of Internationalized Strings ("stringprep")](https://go.microsoft.com/fwlink/?LinkId=231873) for IDNA 2003, and [RFC 5982: The Unicode Code Points and Internationalized Domain Names for Applications](https://go.microsoft.com/fwlink/?LinkId=231877) for IDNA 2008. The method converts all label separators to FULL STOP (period, U+002E). If the substring contains no characters outside the US-ASCII character range, and no characters within the US-ASCII character range are prohibited, the method returns the substring unchanged. @@ -546,9 +546,9 @@ In the .NET Framework 4.5, the class supports different versions of the IDNA standard, depending on the operating system in use: -- When run on Windows 8, it supports the 2008 version of the IDNA standard outlined by RFC 5891: Internationalized Domain Names in Applications (IDNA): Protocol. +- When run on Windows 8, it supports the 2008 version of the IDNA standard outlined by RFC 5891: Internationalized Domain Names in Applications (IDNA): Protocol. -- When run on earlier versions of the Windows operating system, it supports the 2003 version of the standard outlined by RFC 3490: Internationalizing Domain Names in Applications (IDNA). +- When run on earlier versions of the Windows operating system, it supports the 2003 version of the standard outlined by RFC 3490: Internationalizing Domain Names in Applications (IDNA). See Unicode Technical Standard #46: IDNA Compatibility Processing for the differences in the way these standards handle particular sets of characters. diff --git a/xml/System.Globalization/StringInfo.xml b/xml/System.Globalization/StringInfo.xml index fba1709c4cc..d8cdb68558b 100644 --- a/xml/System.Globalization/StringInfo.xml +++ b/xml/System.Globalization/StringInfo.xml @@ -1005,7 +1005,7 @@ A grapheme cluster is a sequence of one or more Unicode code points that should - if the default is called. You should then use the property to assign the string that this object rperesents. -- The string supplied as the `value` argument to the constructor. +- The string supplied as the `value` argument to the constructor. ]]> diff --git a/xml/System.Globalization/TextElementEnumerator.xml b/xml/System.Globalization/TextElementEnumerator.xml index 57ff215794a..0e43f92149d 100644 --- a/xml/System.Globalization/TextElementEnumerator.xml +++ b/xml/System.Globalization/TextElementEnumerator.xml @@ -83,11 +83,11 @@ ## Remarks The .NET Framework defines a text element as a unit of text that is displayed as a single character, that is, a grapheme. A text element can be any of the following: -- A base character, which is represented as a single value. For example, LATIN CAPITAL LETTER A (U+0041) and LATIN SMALL LETTER AE (U+00E6) are base characters. +- A base character, which is represented as a single value. For example, LATIN CAPITAL LETTER A (U+0041) and LATIN SMALL LETTER AE (U+00E6) are base characters. -- A combining character sequence, which consists of a base character and one or more combining characters. For example, example, LATIN CAPITAL LETTER A (U+0041) followed by COMBINING MACRON (U+0304) is a combining character sequence. +- A combining character sequence, which consists of a base character and one or more combining characters. For example, example, LATIN CAPITAL LETTER A (U+0041) followed by COMBINING MACRON (U+0304) is a combining character sequence. -- Surrogate pairs, which the [Unicode Standard](https://go.microsoft.com/fwlink/?linkid=37123) defines as a coded character representation for a single abstract character that consists of a sequence of two code units: a high surrogate, and a low surrogate. Surrogate pairs are used to represent characters outside of the Unicode Basic Multilingual Plane as UTF-16 encoded characters. For example, GOTHIC LETTER SAUIL (U+10343) is represented in UTF-16 encoding as a high surrogate whose value is 0xD800 and a low surrogate whose value is 0xDF43. A surrogate pair can represent a base character or a combining character. +- Surrogate pairs, which the [Unicode Standard](https://go.microsoft.com/fwlink/?linkid=37123) defines as a coded character representation for a single abstract character that consists of a sequence of two code units: a high surrogate, and a low surrogate. Surrogate pairs are used to represent characters outside of the Unicode Basic Multilingual Plane as UTF-16 encoded characters. For example, GOTHIC LETTER SAUIL (U+10343) is represented in UTF-16 encoding as a high surrogate whose value is 0xD800 and a low surrogate whose value is 0xDF43. A surrogate pair can represent a base character or a combining character. The class allows you to work with the text elements in a string rather than with single objects. @@ -97,19 +97,19 @@ The object represents a snapshot of the current state of a string variable or string literal at the moment that the object is instantiated. Note that: -- Text element enumerators can only be used to read data in a string. They cannot modify the underlying string. +- Text element enumerators can only be used to read data in a string. They cannot modify the underlying string. -- An enumerator does not have exclusive access to the string that it represents. A string variable can be modified after the enumerator is created. +- An enumerator does not have exclusive access to the string that it represents. A string variable can be modified after the enumerator is created. -- A object enumerates the text elements present in the string at the time that the object was instantiated. It does not reflect any subsequent changes to the string variable if that variable is modified afterward. +- A object enumerates the text elements present in the string at the time that the object was instantiated. It does not reflect any subsequent changes to the string variable if that variable is modified afterward. -- Because the class does not override , two objects that represent the same string will be considered unequal. +- Because the class does not override , two objects that represent the same string will be considered unequal. ## Examples The following example uses the class to enumerate the text elements of a string. - + :::code language="csharp" source="~/snippets/csharp/System.Globalization/TextElementEnumerator/Overview/tee_summary.cs" interactive="try-dotnet" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Globalization.TextElementEnumerator.Summary/VB/tee_summary.vb" id="Snippet1"::: diff --git a/xml/System.IO.Compression/ZipArchive.xml b/xml/System.IO.Compression/ZipArchive.xml index ad94845203b..ab60d9225ec 100644 --- a/xml/System.IO.Compression/ZipArchive.xml +++ b/xml/System.IO.Compression/ZipArchive.xml @@ -155,11 +155,11 @@ One of the enumeration values that indicates whether the zip archive is used to read, create, or update entries. Initializes a new instance of the class from the specified stream and with the specified mode. - , the stream must support reading. If the `mode` parameter is set to , the stream must support writing. If the `mode` parameter is set to , the stream must support reading, writing, and seeking. - + , the stream must support reading. If the `mode` parameter is set to , the stream must support writing. If the `mode` parameter is set to , the stream must support reading, writing, and seeking. + ]]> The stream is already closed, or the capabilities of the stream do not match the mode. @@ -167,14 +167,14 @@ is . is an invalid value. - The contents of the stream could not be interpreted as a zip archive. - - -or- - - is and an entry is missing from the archive or is corrupt and cannot be read. - - -or- - + The contents of the stream could not be interpreted as a zip archive. + + -or- + + is and an entry is missing from the archive or is corrupt and cannot be read. + + -or- + is and an entry is too large to fit into memory. @@ -217,11 +217,11 @@ to leave the stream open after the object is disposed; otherwise, . Initializes a new instance of the class on the specified stream for the specified mode, and optionally leaves the stream open. - , the stream must support reading. If the `mode` parameter is set to , the stream must support writing. If the `mode` parameter is set to , the stream must support reading, writing, and seeking. - + , the stream must support reading. If the `mode` parameter is set to , the stream must support writing. If the `mode` parameter is set to , the stream must support reading, writing, and seeking. + ]]> The stream is already closed, or the capabilities of the stream do not match the mode. @@ -229,14 +229,14 @@ is . is an invalid value. - The contents of the stream could not be interpreted as a zip archive. - - -or- - - is and an entry is missing from the archive or is corrupt and cannot be read. - - -or- - + The contents of the stream could not be interpreted as a zip archive. + + -or- + + is and an entry is missing from the archive or is corrupt and cannot be read. + + -or- + is and an entry is too large to fit into memory. @@ -304,14 +304,14 @@ An encoding other than UTF-8 is specified for the is . is an invalid value. - The contents of the stream could not be interpreted as a zip archive. - - -or- - - is and an entry is missing from the archive or is corrupt and cannot be read. - - -or- - + The contents of the stream could not be interpreted as a zip archive. + + -or- + + is and an entry is missing from the archive or is corrupt and cannot be read. + + -or- + is and an entry is too large to fit into memory. @@ -444,20 +444,20 @@ If the comment byte length is larger than , it will Creates an empty entry that has the specified path and entry name in the zip archive. An empty entry in the zip archive. - property for the new entry is set to the current time. The entry is compressed using the default compression level of the underlying compression algorithm. If you want to specify a different compression level, use the method. - -## Examples - The following example shows how to create an entry and write to it by using a stream. - + property for the new entry is set to the current time. The entry is compressed using the default compression level of the underlying compression algorithm. If you want to specify a different compression level, use the method. + +## Examples + The following example shows how to create an entry and write to it by using a stream. + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/CreateEntry/program1.cs" id="Snippet1"::: :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/CreateEntry/program1.fs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchivemode/vb/program1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchivemode/vb/program1.vb" id="Snippet1"::: + ]]> @@ -508,20 +508,20 @@ If the comment byte length is larger than , it will Creates an empty entry that has the specified entry name and compression level in the zip archive. An empty entry in the zip archive. - property for the new entry is set to the current time. Set the `compressionLevel` parameter to if you want the file to be compressed as much as possible. Set the `compressionLevel` parameter to only if you are concerned that the compression operation will not complete quickly enough for your scenario. - -## Examples - The following example shows how to create an entry with the optimal compression level. It also writes to the new entry by using a stream. - + property for the new entry is set to the current time. Set the `compressionLevel` parameter to if you want the file to be compressed as much as possible. Set the `compressionLevel` parameter to only if you are concerned that the compression operation will not complete quickly enough for your scenario. + +## Examples + The following example shows how to create an entry with the optimal compression level. It also writes to the new entry by using a stream. + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/CreateEntry/program2.cs" id="Snippet2"::: :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/CreateEntry/program2.fs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchivemode/vb/program2.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchivemode/vb/program2.vb" id="Snippet2"::: + ]]> @@ -581,15 +581,15 @@ If the comment byte length is larger than , it will Releases the resources used by the current instance of the class. - object. Unless you construct the object by using the constructor overload and set its `leaveOpen` parameter to `true`, all underlying streams are closed and no longer available for subsequent write operations. - - When you are finished using this instance of , call to release all resources used by this instance. You should eliminate further references to this instance so that the garbage collector can reclaim the memory of the instance instead of keeping it alive for finalization. - + object. Unless you construct the object by using the constructor overload and set its `leaveOpen` parameter to `true`, all underlying streams are closed and no longer available for subsequent write operations. + + When you are finished using this instance of , call to release all resources used by this instance. You should eliminate further references to this instance so that the garbage collector can reclaim the memory of the instance instead of keeping it alive for finalization. + calls the method, which contains the code to release managed and unmanaged resources. For more information, see [Implementing a Dispose method](/dotnet/standard/garbage-collection/implementing-dispose). - + ]]> @@ -632,19 +632,19 @@ If the comment byte length is larger than , it will to finish writing the archive and release unmanaged and managed resources; to release only unmanaged resources. Called by the and methods to release the unmanaged resources used by the current instance of the class, and optionally finishes writing the archive and releases the managed resources. - constructor overload and set its `leaveOpen` parameter to `true`. - - This method is called only by the public and methods; do not call this method directly. - - When you implement the dispose pattern, the Boolean parameter of the method should be used as follows: - -- The method of the current object should call with the Boolean parameter set to `true` to release both managed and unmanaged resources. - -- The method of the current object should call with the Boolean parameter set to `false` to release only unmanaged resources. - + constructor overload and set its `leaveOpen` parameter to `true`. + + This method is called only by the public and methods; do not call this method directly. + + When you implement the dispose pattern, the Boolean parameter of the method should be used as follows: + +- The method of the current object should call with the Boolean parameter set to `true` to release both managed and unmanaged resources. + +- The method of the current object should call with the Boolean parameter set to `false` to release only unmanaged resources. + For more information, see [Implementing a Dispose method](/dotnet/standard/garbage-collection/implementing-dispose). ]]> @@ -738,18 +738,18 @@ If the comment byte length is larger than , it will Gets the collection of entries that are currently in the zip archive. The collection of entries that are currently in the zip archive. - property to retrieve the entire collection of entries. Use the method to retrieve a single entry by name. -## Examples - The following example shows how to open a zip archive and iterate through the collection of entries. - +## Examples + The following example shows how to open a zip archive and iterate through the collection of entries. + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/Entries/program1.cs" id="Snippet1"::: :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/Entries/program1.fs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchive/vb/program1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchive/vb/program1.vb" id="Snippet1"::: + ]]> The zip archive does not support reading. @@ -796,18 +796,18 @@ If the comment byte length is larger than , it will Retrieves a wrapper for the specified entry in the zip archive. A wrapper for the specified entry in the archive; if the entry does not exist in the archive. - method to retrieve an entry. - + method to retrieve an entry. + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/GetEntry/program2.cs" id="Snippet2"::: :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/GetEntry/program2.fs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchiveentry/vb/program2.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchiveentry/vb/program2.vb" id="Snippet2"::: + ]]> @@ -853,11 +853,11 @@ If the comment byte length is larger than , it will Gets a value that describes the type of action the zip archive can perform on entries. One of the enumeration values that describes the type of action (read, create, or update) the zip archive can perform on entries. - property when you create an instance of the class. Use the or constructor to provide a value for the property. - + property when you create an instance of the class. Use the or constructor to provide a value for the property. + ]]> diff --git a/xml/System.IO.Compression/ZipFile.xml b/xml/System.IO.Compression/ZipFile.xml index 0b9cc23de48..20e09c9539b 100644 --- a/xml/System.IO.Compression/ZipFile.xml +++ b/xml/System.IO.Compression/ZipFile.xml @@ -50,10 +50,10 @@ Provides static methods for creating, extracting, and opening zip archives. - @@ -96,25 +96,25 @@ The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. The stream where the zip archive is to be stored. Creates a zip archive in the specified stream that contains the files and directories from the specified directory. - The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. - This method overload does not include the base directory in the archive and does not allow you to specify a compression level. - If you want to include the base directory or specify a compression level, call the method overload. + The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. + This method overload does not include the base directory in the archive and does not allow you to specify a compression level. + If you want to include the base directory or specify a compression level, call the method overload. If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. - is , contains only white space, or contains at least one invalid character. - --or- - + is , contains only white space, or contains at least one invalid character. + +-or- + The stream does not support writing. or is . In the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). - A file in the specified directory could not be opened. - --or- - + A file in the specified directory could not be opened. + +-or- + An I/O error occurred while opening a file to be archived. contains an invalid format. @@ -164,22 +164,22 @@ An I/O error occurred while opening a file to be archived. The path of the archive to be created, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. Creates a zip archive that contains the files and directories from the specified directory. - method overload. - - If the archive already exists, an exception is thrown. If an entry with the specified name already exists in the archive, a second entry is created with an identical name. - - If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. - -## Examples - This example shows how to create and extract a zip archive by using the class. It compresses the contents of a folder into a zip archive, and then extracts that content to a new folder. To use the class, you must reference the `System.IO.Compression.FileSystem` assembly in your project. - - :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.cs" id="Snippet1"::: - :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.fs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.zipfile/vb/program1.vb" id="Snippet1"::: - + method overload. + + If the archive already exists, an exception is thrown. If an entry with the specified name already exists in the archive, a second entry is created with an identical name. + + If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. + +## Examples + This example shows how to create and extract a zip archive by using the class. It compresses the contents of a folder into a zip archive, and then extracts that content to a new folder. To use the class, you must reference the `System.IO.Compression.FileSystem` assembly in your project. + + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.cs" id="Snippet1"::: + :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.fs" id="Snippet1"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.zipfile/vb/program1.vb" id="Snippet1"::: + ]]> @@ -190,26 +190,26 @@ An I/O error occurred while opening a file to be archived. is invalid or does not exist (for example, it is on an unmapped drive). - already exists. - - -or- - - A file in the specified directory could not be opened. - --or- - + already exists. + + -or- + + A file in the specified directory could not be opened. + +-or- + An I/O error occurred while opening a file to be archived. - specifies a directory. - - -or- - + specifies a directory. + + -or- + The caller does not have the required permission to access the directory specified in or the file specified in . - or contains an invalid format. - - -or- - + or contains an invalid format. + + -or- + The zip archive does not support writing. @@ -246,24 +246,24 @@ An I/O error occurred while opening a file to be archived. to include the directory name from at the root of the archive; to include only the contents of the directory. Creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level, and optionally includes the base directory. - The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. - Use this method overload to specify the compression level and whether to include the base directory in the archive. + The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. + Use this method overload to specify the compression level and whether to include the base directory in the archive. If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. - is , contains only white space, or contains at least one invalid character. - --or- - + is , contains only white space, or contains at least one invalid character. + +-or- + The stream does not support writing. or is . In the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). - A file in the specified directory could not be opened. - --or- - + A file in the specified directory could not be opened. + +-or- + An I/O error occurred while opening a file to be archived. contains an invalid format. @@ -320,22 +320,22 @@ An I/O error occurred while opening a file to be archived. to include the directory name from at the root of the archive; to include only the contents of the directory. Creates a zip archive that contains the files and directories from the specified directory, uses the specified compression level, and optionally includes the base directory. - exception is thrown. If an entry with the specified name already exists in the archive, a second entry is created with an identical name. - - If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. - -## Examples - This example shows how to create and extract a zip archive by using the class. It compresses the contents of a folder into a zip archive, and then extracts that content to a new folder. When compressing the archive, the base directory is included and the compression level is set to emphasize the speed of the operation over efficiency. To use the class, you must reference the `System.IO.Compression.FileSystem` assembly in your project. - - :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipFile/CreateFromDirectory/program2.cs" id="Snippet2"::: - :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipFile/CreateFromDirectory/program2.fs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.zipfile/vb/program2.vb" id="Snippet2"::: - + exception is thrown. If an entry with the specified name already exists in the archive, a second entry is created with an identical name. + + If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. + +## Examples + This example shows how to create and extract a zip archive by using the class. It compresses the contents of a folder into a zip archive, and then extracts that content to a new folder. When compressing the archive, the base directory is included and the compression level is set to emphasize the speed of the operation over efficiency. To use the class, you must reference the `System.IO.Compression.FileSystem` assembly in your project. + + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipFile/CreateFromDirectory/program2.cs" id="Snippet2"::: + :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipFile/CreateFromDirectory/program2.fs" id="Snippet2"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.zipfile/vb/program2.vb" id="Snippet2"::: + ]]> @@ -346,26 +346,26 @@ An I/O error occurred while opening a file to be archived. is invalid or does not exist (for example, it is on an unmapped drive). - already exists. - - -or- - - A file in the specified directory could not be opened. - --or- - + already exists. + + -or- + + A file in the specified directory could not be opened. + +-or- + An I/O error occurred while opening a file to be archived. - specifies a directory. - - -or- - + specifies a directory. + + -or- + The caller does not have the required permission to access the directory specified in or the file specified in . - or contains an invalid format. - - -or- - + or contains an invalid format. + + -or- + The zip archive does not support writing. @@ -411,24 +411,24 @@ An I/O error occurred while opening a file to be archived. to include the directory name from at the root of the archive; to include only the contents of the directory. The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. Creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level and character encoding for entry names and comments, and optionally includes the base directory. - The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. - Use this method overload to specify the compression level and character encoding, and whether to include the base directory in the archive. + The directory structure from the file system is preserved in the archive. If the directory is empty, an empty archive is created. + Use this method overload to specify the compression level and character encoding, and whether to include the base directory in the archive. If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. - is , contains only white space, or contains at least one invalid character. - --or- - + is , contains only white space, or contains at least one invalid character. + +-or- + The stream does not support writing. or is . In the specified path, file name, or both exceed the system-defined maximum length. is invalid or does not exist (for example, it is on an unmapped drive). - A file in the specified directory could not be opened. - --or- - + A file in the specified directory could not be opened. + +-or- + An I/O error occurred while opening a file to be archived. contains an invalid format. @@ -495,30 +495,30 @@ An I/O error occurred while opening a file to be archived. The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. Creates a zip archive that contains the files and directories from the specified directory, uses the specified compression level and character encoding for entry names and comments, and optionally includes the base directory. - exception is thrown. If an entry with the specified name already exists in the archive, a second entry is created with an identical name. - - If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. - - If `entryNameEncoding` is set to a value other than `null`, the entry names and comments are encoded by using the specified encoding. If the specified encoding is a UTF-8 encoding, the language encoding flag (in the general-purpose bit flag of the local file header) is set for each entry. - - If `entryNameEncoding` is set to `null`, the entry names and comments are encoded according to the following rules: - -- For entry names and comments that contain characters outside the ASCII range, the language encoding flag is set, and UTF-8 is used to encode the entry name and comment. - -- For entry names and comments that contain only ASCII characters, the language encoding flag is not set, and the current system default code page is used to encode the entry names and comments. - + exception is thrown. If an entry with the specified name already exists in the archive, a second entry is created with an identical name. + + If a file in the directory cannot be added to the archive, the archive is left incomplete and invalid, and the method throws an exception. + + If `entryNameEncoding` is set to a value other than `null`, the entry names and comments are encoded by using the specified encoding. If the specified encoding is a UTF-8 encoding, the language encoding flag (in the general-purpose bit flag of the local file header) is set for each entry. + + If `entryNameEncoding` is set to `null`, the entry names and comments are encoded according to the following rules: + +- For entry names and comments that contain characters outside the ASCII range, the language encoding flag is set, and UTF-8 is used to encode the entry name and comment. + +- For entry names and comments that contain only ASCII characters, the language encoding flag is not set, and the current system default code page is used to encode the entry names and comments. + ]]> - or is , contains only white space, or contains at least one invalid character. - - -or- - + or is , contains only white space, or contains at least one invalid character. + + -or- + is set to a Unicode encoding other than UTF-8. or is . @@ -526,26 +526,26 @@ An I/O error occurred while opening a file to be archived. is invalid or does not exist (for example, it is on an unmapped drive). - already exists. - - -or- - - A file in the specified directory could not be opened. - --or- - + already exists. + + -or- + + A file in the specified directory could not be opened. + +-or- + An I/O error occurred while opening a file to be archived. - specifies a directory. - - -or- - + specifies a directory. + + -or- + The caller does not have the required permission to access the directory specified in or the file specified in . - or contains an invalid format. - - -or- - + or contains an invalid format. + + -or- + The zip archive does not support writing. @@ -807,9 +807,9 @@ An I/O error occurred while opening a file to be archived. The stream from which the zip archive is to be extracted. The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system. - This method creates the specified directory and all subdirectories. The destination directory cannot already exist. - Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. - Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. > is , contains only white space, or contains at least one invalid character. @@ -817,26 +817,26 @@ An I/O error occurred while opening a file to be archived. or is . The specified path in exceeds the system-defined maximum length. The specified path is invalid (for example, it is on an unmapped drive). - The name of an entry in the archive is , contains only white space, or contains at least one invalid character. - --or- - -Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) - --or- - + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + +-or- + +Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + +-or- + An archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. contains an invalid format. - The archive contained in the stream is not a valid zip archive. - --or- - -An archive entry was not found or was corrupt. - --or- - + The archive contained in the stream is not a valid zip archive. + +-or- + +An archive entry was not found or was corrupt. + +-or- + An archive entry was compressed by using a compression method that is not supported. @@ -884,18 +884,18 @@ An archive entry was compressed by using a compression method that is not suppor The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. Extracts all the files in the specified zip archive to a directory on the file system. - class. It compresses the contents of a folder into a zip archive and extracts that content to a new folder. To use the class, you must reference the `System.IO.Compression.FileSystem` assembly in your project. - - :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.cs" id="Snippet1"::: - :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.fs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.zipfile/vb/program1.vb" id="Snippet1"::: - + class. It compresses the contents of a folder into a zip archive and extracts that content to a new folder. To use the class, you must reference the `System.IO.Compression.FileSystem` assembly in your project. + + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.cs" id="Snippet1"::: + :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipFile/CreateFromDirectory/program1.fs" id="Snippet1"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.zipfile/vb/program1.vb" id="Snippet1"::: + ]]> @@ -904,28 +904,28 @@ An archive entry was compressed by using a compression method that is not suppor or is . The specified path in or exceeds the system-defined maximum length. The specified path is invalid (for example, it is on an unmapped drive). - The name of an entry in the archive is , contains only white space, or contains at least one invalid character. - - -or- - - Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) - - -or- - + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + + -or- + + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + + -or- + An archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. or contains an invalid format. was not found. - The archive specified by is not a valid zip archive. - - -or- - - An archive entry was not found or was corrupt. - - -or- - + The archive specified by is not a valid zip archive. + + -or- + + An archive entry was not found or was corrupt. + + -or- + An archive entry was compressed by using a compression method that is not supported. @@ -960,9 +960,9 @@ An archive entry was compressed by using a compression method that is not suppor to overwrite files; otherwise. Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, and optionally allows choosing if the files in the destination directory should be overwritten. - This method creates the specified directory and all subdirectories. The destination directory cannot already exist. - Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. - Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. > is , contains only white space, or contains at least one invalid character. @@ -970,26 +970,26 @@ An archive entry was compressed by using a compression method that is not suppor or is . The specified path in exceeds the system-defined maximum length. The specified path is invalid (for example, it is on an unmapped drive). - The name of an entry in the archive is , contains only white space, or contains at least one invalid character. - --or- - -Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) - --or- - + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + +-or- + +Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + +-or- + is and an archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. contains an invalid format. - The archive contained in the stream is not a valid zip archive. - --or- - -An archive entry was not found or was corrupt. - --or- - + The archive contained in the stream is not a valid zip archive. + +-or- + +An archive entry was not found or was corrupt. + +-or- + An archive entry was compressed by using a compression method that is not supported. @@ -1030,40 +1030,40 @@ An archive entry was compressed by using a compression method that is not suppor The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory. The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system and uses the specified character encoding for entry names and comments. - This method creates the specified directory and all subdirectories. The destination directory cannot already exist. - Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. - Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. - --or- - + > is , contains only white space, or contains at least one invalid character. + +-or- + is set to a Unicode encoding other than UTF-8. or is . The specified path in exceeds the system-defined maximum length. The specified path is invalid (for example, it is on an unmapped drive). - The name of an entry in the archive is , contains only white space, or contains at least one invalid character. - --or- - -Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) - --or- - + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + +-or- + +Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + +-or- + An archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. contains an invalid format. - The archive contained in the stream is not a valid zip archive. - --or- - -An archive entry was not found or was corrupt. - --or- - + The archive contained in the stream is not a valid zip archive. + +-or- + +An archive entry was not found or was corrupt. + +-or- + An archive entry was compressed by using a compression method that is not supported. @@ -1109,18 +1109,18 @@ An archive entry was compressed by using a compression method that is not suppor to overwrite files; otherwise. Extracts all of the files in the specified archive to a directory on the file system. - @@ -1131,37 +1131,37 @@ If a file to be archived has an invalid last modified time, the first date and t or specifies a path, a file name, or both that exceed the system-defined maximum length. The path specified by or is invalid (for example, it is on an unmapped drive). - is and already contains a file with the same name as a file that's being extracted. - --or- - -An I/O error has occurred. - --or- - -The name of a is zero-length, contains only whitespace, or contains one or more invalid characters as defined by . - --or- - -Extracting a would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). - --or- - + is and already contains a file with the same name as a file that's being extracted. + +-or- + +An I/O error has occurred. + +-or- + +The name of a is zero-length, contains only whitespace, or contains one or more invalid characters as defined by . + +-or- + +Extracting a would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). + +-or- + A has the same name as an entry from the same archive that's already been extracted. The caller does not have the required permission. or is in an invalid format. - was not found. + was not found. - The archive specified by is not a valid . - --or- - -A was not found or was corrupt. - --or- - + The archive specified by is not a valid . + +-or- + +A was not found or was corrupt. + +-or- + A has been compressed using a compression method that is not supported. @@ -1219,56 +1219,56 @@ A has been compressed usi The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments. Extracts all the files in the specified zip archive to a directory on the file system and uses the specified character encoding for entry names and comments. - - or is , contains only white space, or contains at least one invalid character. - - -or- - + or is , contains only white space, or contains at least one invalid character. + + -or- + is set to a Unicode encoding other than UTF-8. or is . The specified path in or exceeds the system-defined maximum length. The specified path is invalid (for example, it is on an unmapped drive). - The name of an entry in the archive is , contains only white space, or contains at least one invalid character. - - -or- - - Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) - - -or- - + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + + -or- + + Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + + -or- + An archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. or contains an invalid format. was not found. - The archive specified by is not a valid zip archive. - - -or- - - An archive entry was not found or was corrupt. - - -or- - + The archive specified by is not a valid zip archive. + + -or- + + An archive entry was not found or was corrupt. + + -or- + An archive entry was compressed by using a compression method that is not supported. @@ -1312,40 +1312,40 @@ If `entryNameEncoding` is set to `null`, entry names and comments are decoded ac to overwrite files; otherwise. Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, uses the specified character encoding for entry names and comments, and optionally allows choosing if the files in the destination directory should be overwritten. - This method creates the specified directory and all subdirectories. The destination directory cannot already exist. - Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. - Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. + This method creates the specified directory and all subdirectories. The destination directory cannot already exist. + Exceptions related to validating the paths in the or the files in the zip archive contained in parameters are thrown before extraction. Otherwise, if an error occurs during extraction, the archive remains partially extracted. + Each extracted file has the same relative path to the directory specified by as its source entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first date and time representable in the Zip timestamp format (midnight on January 1, 1980) will be used. - > is , contains only white space, or contains at least one invalid character. - --or- - + > is , contains only white space, or contains at least one invalid character. + +-or- + is set to a Unicode encoding other than UTF-8. or is . The specified path in exceeds the system-defined maximum length. The specified path is invalid (for example, it is on an unmapped drive). - The name of an entry in the archive is , contains only white space, or contains at least one invalid character. - --or- - -Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) - --or- - + The name of an entry in the archive is , contains only white space, or contains at least one invalid character. + +-or- + +Extracting an archive entry would create a file that is outside the directory specified by . (For example, this might happen if the entry name contains parent directory accessors.) + +-or- + is and an archive entry to extract has the same name as an entry that has already been extracted or that exists in . The caller does not have the required permission to access the archive or the destination directory. contains an invalid format. - The archive contained in the stream is not a valid zip archive. - --or- - -An archive entry was not found or was corrupt. - --or- - + The archive contained in the stream is not a valid zip archive. + +-or- + +An archive entry was not found or was corrupt. + +-or- + An archive entry was compressed by using a compression method that is not supported. @@ -1401,25 +1401,25 @@ An archive entry was compressed by using a compression method that is not suppor to overwrite files; otherwise. Extracts all of the files in the specified archive to a directory on the file system. - - or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by . - - -or- - + or is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by . + + -or- + is set to a Unicode encoding other than UTF-8. or is . @@ -1427,36 +1427,36 @@ An archive entry was compressed by using a compression method that is not suppor or specifies a path, a file name, or both that exceed the system-defined maximum length. The path specified by or is invalid (for example, it is on an unmapped drive). - is and an archive entry to extract has the same name as a file that already exists in . - --or- - -An I/O error has occurred. - --or- - -The name of a is zero-length, contains only whitespace, or contains one or more invalid characters as defined by . - --or- - -Extracting a would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). - --or- - + is and an archive entry to extract has the same name as a file that already exists in . + +-or- + +An I/O error has occurred. + +-or- + +The name of a is zero-length, contains only whitespace, or contains one or more invalid characters as defined by . + +-or- + +Extracting a would result in a file destination that is outside the destination directory (for example, because of parent directory accessors). + +-or- + A has the same name as an already extracted entry from the same archive. The caller does not have the required permission. or is in an invalid format. was not found. - The archive specified by is not a valid . - --or- - -An archive entry was not found or was corrupt. - --or- - + The archive specified by is not a valid . + +-or- + +An archive entry was not found or was corrupt. + +-or- + An archive entry has been compressed using a compression method that is not supported. @@ -1807,22 +1807,22 @@ An archive entry has been compressed using a compression method that is not supp Opens a zip archive at the specified path and in the specified mode. The opened zip archive. - , the archive is opened with from the enumeration as the file mode value. If the archive does not exist, a exception is thrown. Setting the `mode` parameter to is equivalent to calling the method. - - When you set the `mode` parameter to , the archive is opened with as the file mode value. If the archive already exists, an is thrown. - - When you set the `mode` parameter to , the archive is opened with as the file mode value. If the archive exists, it is opened. The existing entries can be modified and new entries can be created. If the archive does not exist, a new archive is created; however, creating a zip archive in mode is not as efficient as creating it in mode. - -## Examples - The following example shows how to open a zip archive in the update mode and add an entry to the archive. - - :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/Entries/program3.cs" id="Snippet3"::: - :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/Entries/program3.fs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchive/vb/program3.vb" id="Snippet3"::: - + , the archive is opened with from the enumeration as the file mode value. If the archive does not exist, a exception is thrown. Setting the `mode` parameter to is equivalent to calling the method. + + When you set the `mode` parameter to , the archive is opened with as the file mode value. If the archive already exists, an is thrown. + + When you set the `mode` parameter to , the archive is opened with as the file mode value. If the archive exists, it is opened. The existing entries can be modified and new entries can be created. If the archive does not exist, a new archive is created; however, creating a zip archive in mode is not as efficient as creating it in mode. + +## Examples + The following example shows how to open a zip archive in the update mode and add an entry to the archive. + + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/Entries/program3.cs" id="Snippet3"::: + :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/Entries/program3.fs" id="Snippet3"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchive/vb/program3.vb" id="Snippet3"::: + ]]> @@ -1833,20 +1833,20 @@ An archive entry has been compressed using a compression method that is not supp is invalid or does not exist (for example, it is on an unmapped drive). - could not be opened. - - -or- - - is set to , but the file specified in already exists. - --or- - + could not be opened. + + -or- + + is set to , but the file specified in already exists. + +-or- + An unspecified I/O error occurred while opening the file. - specifies a directory. - - -or- - + specifies a directory. + + -or- + The caller does not have the required permission to access the file specified in . specifies an invalid value. @@ -1855,14 +1855,14 @@ An unspecified I/O error occurred while opening the file. contains an invalid format. - could not be interpreted as a zip archive. - - -or- - - is , but an entry is missing or corrupt and cannot be read. - - -or- - + could not be interpreted as a zip archive. + + -or- + + is , but an entry is missing or corrupt and cannot be read. + + -or- + is , but an entry is too large to fit into memory. @@ -1921,17 +1921,17 @@ An unspecified I/O error occurred while opening the file. Opens a zip archive at the specified path, in the specified mode, and by using the specified character encoding for entry names and comments. The opened zip archive. - - is , contains only white space, or contains at least one invalid character. - - -or- - + is , contains only white space, or contains at least one invalid character. + + -or- + is set to a Unicode encoding other than UTF-8. is . @@ -1939,20 +1939,20 @@ An unspecified I/O error occurred while opening the file. is invalid or does not exist (for example, it is on an unmapped drive). - could not be opened. - - -or- - - is set to , but the file specified in already exists. - --or- - + could not be opened. + + -or- + + is set to , but the file specified in already exists. + +-or- + An unspecified I/O error occurred while opening the file. - specifies a directory. - - -or- - + specifies a directory. + + -or- + The caller does not have the required permission to access the file specified in . specifies an invalid value. @@ -1961,14 +1961,14 @@ An unspecified I/O error occurred while opening the file. contains an invalid format. - could not be interpreted as a zip archive. - - -or- - - is , but an entry is missing or corrupt and cannot be read. - - -or- - + could not be interpreted as a zip archive. + + -or- + + is , but an entry is missing or corrupt and cannot be read. + + -or- + is , but an entry is too large to fit into memory. @@ -2086,20 +2086,20 @@ An unspecified I/O error occurred while opening the file. Opens a zip archive for reading at the specified path. The opened zip archive. - method and setting the `mode` parameter to . The archive is opened with as the file mode value. If the archive does not exist, a exception is thrown. - - - -## Examples - The following example shows how to open a zip archive for reading. - - :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/Entries/program1.cs" id="Snippet1"::: - :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/Entries/program1.fs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchive/vb/program1.vb" id="Snippet1"::: - + method and setting the `mode` parameter to . The archive is opened with as the file mode value. If the archive does not exist, a exception is thrown. + + + +## Examples + The following example shows how to open a zip archive for reading. + + :::code language="csharp" source="~/snippets/csharp/System.IO.Compression/ZipArchive/Entries/program1.cs" id="Snippet1"::: + :::code language="fsharp" source="~/snippets/fsharp/System.IO.Compression/ZipArchive/Entries/program1.fs" id="Snippet1"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.compression.ziparchive/vb/program1.vb" id="Snippet1"::: + ]]> @@ -2110,16 +2110,16 @@ An unspecified I/O error occurred while opening the file. is invalid or does not exist (for example, it is on an unmapped drive). - could not be opened. - --or- - + could not be opened. + +-or- + An unspecified I/O error occurred while opening the file. - specifies a directory. - - -or- - + specifies a directory. + + -or- + The caller does not have the required permission to access the file specified in . The file specified in is not found. diff --git a/xml/System.IO.IsolatedStorage/IsolatedStorageException.xml b/xml/System.IO.IsolatedStorage/IsolatedStorageException.xml index 7824eea2d03..00e5492a0ee 100644 --- a/xml/System.IO.IsolatedStorage/IsolatedStorageException.xml +++ b/xml/System.IO.IsolatedStorage/IsolatedStorageException.xml @@ -67,9 +67,9 @@ The most common examples of isolated storage exceptions are as follows. -- Missing evidence. Isolated storage requires evidence (information about the assembly and its origin) in order to determine the identity of the code and connect it to the correct associated file space. Without this information, isolated storage cannot be used. +- Missing evidence. Isolated storage requires evidence (information about the assembly and its origin) in order to determine the identity of the code and connect it to the correct associated file space. Without this information, isolated storage cannot be used. -- Invalid operations. Some operations are not supported for isolated storage. +- Invalid operations. Some operations are not supported for isolated storage. For a list of initial property values for an instance of `IsolatedStorageException`, see the constructors. diff --git a/xml/System.IO.Log/IRecordSequence.xml b/xml/System.IO.Log/IRecordSequence.xml index 91f10287033..9fe7cbc7074 100644 --- a/xml/System.IO.Log/IRecordSequence.xml +++ b/xml/System.IO.Log/IRecordSequence.xml @@ -18,45 +18,45 @@ Provides a generic interface to a sequence of records. - interface provides an abstract interface to a record-oriented stream. A instance can be used to read and write log records. - - The interface provides the following capabilities, - -- Append log records using the methods. - -- Read the appended records using the method. - -- Write a special restart record using the method. - -- Read restart records from the most recently written restart record using the method. - -- Flush the records to durable store using the method. - -- Reserve space for appending records. - -- Free log space by advancing the base of the log. - -- Receive event notifications to move the base of the log to free space. - - Log records are appended to a instance, and each log record is given a unique sequence number. Sequence numbers are strictly monotonically increasing within a given record sequence. A log record consists of opaque data, supplied to the instance in an of ArraySegments of bytes. - - The interface also exposes a few basic properties which provides information about log boundaries. - -- The property contains the sequence number of the first valid record in the record sequence. - -- The property contains a sequence number that is guaranteed to be larger than the sequence number of the last appended record. - -- The property contains the sequence number of the last written restart area. - -- The property contains the size of the largest record that can be appended to, or read from the sequence. - -- The property contains the total size of all reservations made in this record sequence. - -- If the property is set to `true`, and an operation fails because there is no space in the sequence, the record sequence will attempt to free space, and retry the Append operation. - + interface provides an abstract interface to a record-oriented stream. A instance can be used to read and write log records. + + The interface provides the following capabilities, + +- Append log records using the methods. + +- Read the appended records using the method. + +- Write a special restart record using the method. + +- Read restart records from the most recently written restart record using the method. + +- Flush the records to durable store using the method. + +- Reserve space for appending records. + +- Free log space by advancing the base of the log. + +- Receive event notifications to move the base of the log to free space. + + Log records are appended to a instance, and each log record is given a unique sequence number. Sequence numbers are strictly monotonically increasing within a given record sequence. A log record consists of opaque data, supplied to the instance in an of ArraySegments of bytes. + + The interface also exposes a few basic properties which provides information about log boundaries. + +- The property contains the sequence number of the first valid record in the record sequence. + +- The property contains a sequence number that is guaranteed to be larger than the sequence number of the last appended record. + +- The property contains the sequence number of the last written restart area. + +- The property contains the size of the largest record that can be appended to, or read from the sequence. + +- The property contains the total size of all reservations made in this record sequence. + +- If the property is set to `true`, and an operation fails because there is no space in the sequence, the record sequence will attempt to free space, and retry the Append operation. + ]]> @@ -84,11 +84,11 @@ The new base sequence number of the record sequence. Moves the base sequence number of the log forward. - instance and try to advance the sequence number to free up space in the log, the new base sequence number must reside in a different log extent for the previous extent to be marked as empty. Freeing extents partially is not supported. - + instance and try to advance the sequence number to free up space in the log, the new base sequence number must reside in a different log extent for the previous extent to be marked as empty. Freeing extents partially is not supported. + ]]> @@ -139,13 +139,13 @@ When overridden in a derived class, writes a log record to the . The sequence number of the appended log record. - flag using the `recordAppendOptions` parameter, or call the method. - + flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -184,13 +184,13 @@ When overridden in a derived class, appends a log record to the . The sequence number of the appended log record. - flag using the `recordAppendOptions` parameter, or call the method. - + flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -231,15 +231,15 @@ When overridden in a derived class, appends a log record to the , using space previously reserved in the sequence. The sequence number of the appended log record. - flag using the `recordAppendOptions` parameter, or call the method. - + flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -280,15 +280,15 @@ When overridden in a derived class, appends a log record to the , using space previously reserved in the sequence. The sequence number of the appended log record. - flag using the `recordAppendOptions` parameter, or call the method. - + flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -317,13 +317,13 @@ When overridden in a derived class, gets the sequence number of the first valid record in the current . The lowest sequence number that corresponds to a valid record in the . - and less than . - - The value of this property can be changed by calling the or method. - + and less than . + + The value of this property can be changed by calling the or method. + ]]> The property was accessed after the sequence has been disposed of. @@ -372,15 +372,15 @@ When overridden in a derived class, begins an asynchronous append operation. An that represents the asynchronous append, which could still be pending. - returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. - + returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -423,15 +423,15 @@ When overridden in a derived class, begins an asynchronous append operation, using space previously reserved in the sequence. An that represents the asynchronous append, which could still be pending. - returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. - + returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -476,17 +476,17 @@ When overridden in a derived class, begins an asynchronous append operation using space previously reserved in the sequence. An that represents the asynchronous append, which could still be pending. - returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - The appended record will consume space that has been previously reserved, using a reservation specified by the `reservations` parameter. If the append succeeds, it will consume the smallest reservation area that can hold the data, and that reservation area will be removed from the collection. - - Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. - + returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + The appended record will consume space that has been previously reserved, using a reservation specified by the `reservations` parameter. If the append succeeds, it will consume the smallest reservation area that can hold the data, and that reservation area will be removed from the collection. + + Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -531,17 +531,17 @@ When overridden in a derived class, begins an asynchronous append operation, using space previously reserved in the sequence. An that represents the asynchronous append, which could still be pending. - returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - The appended record will consume space that has been previously reserved, using a reservation specified by the `reservations` parameter. If the append succeeds, it will consume the smallest reservation area that can hold the data, and that reservation area will be removed from the collection. - - Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. - + returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + The appended record will consume space that has been previously reserved, using a reservation specified by the `reservations` parameter. If the append succeeds, it will consume the smallest reservation area that can hold the data, and that reservation area will be removed from the collection. + + Normally, this method completes before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -578,15 +578,15 @@ When overridden in a derived class, begins an asynchronous flush operation, using space previously reserved in the sequence. An that represents the asynchronous flush operation, which could still be pending. - returned by the current method to the method to ensure that the flush completes and resources are freed appropriately. If an error occurs during an asynchronous flush, an exception is not thrown until the method is called with the returned by this method. - - Calling this method ensures that all records that have been appended to the are durably written. - - If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous flush request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. - + returned by the current method to the method to ensure that the flush completes and resources are freed appropriately. If an error occurs during an asynchronous flush, an exception is not thrown until the method is called with the returned by this method. + + Calling this method ensures that all records that have been appended to the are durably written. + + If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous flush request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. + ]]> One or more of the arguments is invalid. @@ -641,19 +641,19 @@ When overridden in a derived class, begins an asynchronous reserve and append operation. An that represents this asynchronous operation, which could still be pending. - returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - The specified reservations are added to the provided reservation collection in an atomic operation with a record append operation. If the append fails, no space is reserved. - - Normally, this method may complete before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. - - If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. - + returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + The specified reservations are added to the provided reservation collection in an atomic operation with a record append operation. If the append fails, no space is reserved. + + Normally, this method may complete before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. + + If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. + ]]> One or more of the arguments is invalid. @@ -700,19 +700,19 @@ When overridden in a derived class, begins an asynchronous reserve and append operation. An that represents this asynchronous operation, which could still be pending. - returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - The specified reservations are added to the provided reservation collection in an atomic operation with a record append operation. If the append fails, no space is reserved. - - Normally, this method may complete before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. - - If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. - + returned by this method to the method to ensure that the append operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous append, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + The specified reservations are added to the provided reservation collection in an atomic operation with a record append operation. If the append fails, no space is reserved. + + Normally, this method may complete before the record has been written. To ensure that a record has been written, either specify the flag using the `recordAppendOptions` parameter, or call the method. + + If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. + ]]> One or more of the arguments is invalid. @@ -762,19 +762,19 @@ When overridden in a derived class, begins an asynchronous restart area write operation, using space previously reserved in the sequence. An that represents the asynchronous restart area write operation, which could still be pending. - returned by this method to the method, to assure that the restart area write operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous restart area write operation, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - When the operation successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. - - If a is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can hold the data, and that reservation will be removed from the collection. - - If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. - + returned by this method to the method, to assure that the restart area write operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous restart area write operation, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + When the operation successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. + + If a is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can hold the data, and that reservation will be removed from the collection. + + If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. + ]]> @@ -811,19 +811,19 @@ When overridden in a derived class, begins an asynchronous restart area write operation, using space previously reserved in the sequence. An that represents the asynchronous restart area write operation, which could still be pending. - returned by this method to the method to ensure that the restart area write operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous restart area write operation, an exception is not thrown until the method is called with the returned by this method. - - Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. - - When the operation successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. - - If a is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can hold the data, and that reservation will be removed from the collection. - - If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. - + returned by this method to the method to ensure that the restart area write operation has completed and resources can be freed appropriately. If an error has occurred during an asynchronous restart area write operation, an exception is not thrown until the method is called with the returned by this method. + + Data contained in the `data` parameter will be concatenated into a single byte array for appending as the record. However, no provision is made for splitting data back into array segments when the record is read. + + When the operation successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. + + If a is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can hold the data, and that reservation will be removed from the collection. + + If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. + ]]> One or more of the arguments is invalid. @@ -880,13 +880,13 @@ When overridden in a derived class, ends an asynchronous append operation. The sequence number of the appended log record. - is called. - - This method must be called exactly once on every returned by the method. - + is called. + + This method must be called exactly once on every returned by the method. + ]]> One or more of the arguments is invalid. @@ -917,13 +917,13 @@ When overridden in a derived class, ends an asynchronous flush operation. The sequence number of the last record written. - is called. - - This method must be called exactly once on every returned by the method. - + is called. + + This method must be called exactly once on every returned by the method. + ]]> One or more of the arguments is invalid. @@ -954,13 +954,13 @@ When overridden in a derived class, ends an asynchronous reserve and append operation. The sequence number of the appended log record. - is called. - - This method must be called exactly once on every returned by the method. - + is called. + + This method must be called exactly once on every returned by the method. + ]]> One or more of the arguments is invalid. @@ -991,13 +991,13 @@ When overridden in a derived class, ends an asynchronous restart area write operation. The sequence number of the written log record. - is called. - - This method must be called exactly once on every returned by the method. - + is called. + + This method must be called exactly once on every returned by the method. + ]]> One or more of the arguments is invalid. @@ -1034,11 +1034,11 @@ When overridden in a derived class, ensures that all appended records have been written. The sequence number of the last record written. - have been durably written. - + have been durably written. + ]]> An I/O error occurred while flushing the data. @@ -1069,11 +1069,11 @@ When overridden in a derived class, ensures that all appended records up to and including the record with the specified sequence number have been durably written. The sequence number of the last record written. - One or more of the arguments is invalid. @@ -1101,14 +1101,14 @@ When overridden in a derived class, gets the sequence number which is greater than the last record appended. A sequence number which is greater than the last record appended. - and less than . - + and less than . + > [!NOTE] -> When using a instance, the value can become out of date until records are flushed to the log. See and for more information on flushing records. - +> When using a instance, the value can become out of date until records are flushed to the log. See and for more information on flushing records. + ]]> The property was accessed after the sequence has been disposed of. @@ -1163,99 +1163,99 @@ When overridden in a derived class, returns an enumerable collection of records in the sequence. An enumerable collection of records in the sequence. - method. - -```csharp -using System; - using System.IO; - using System.IO.Log; - - class ReadRecordsSample - { - static SequenceNumber AppendRecord(IRecordSequence sequence, - string message, - SequenceNumber user, - SequenceNumber previous) - { - MemoryStream data = new MemoryStream(); - BinaryWriter writer = new BinaryWriter(data); - writer.Write(message); - - ArraySegment[] segments; - segments = new ArraySegment[1]; - segments[0] = new ArraySegment(data.GetBuffer(), - 0, - Data.Length); - - return sequence.Append(segments, - user, - previous, - WriteFlags.None); - } - - public static void Main(string[] args) - { - IRecordSequence sequence; - sequence = new FileIRecordSequence(args[0]); - - SequenceNumber a, b, c, d; - - a = AppendRecord(sequence, - "This is record A", - SequenceNumber.Invalid, - SequenceNumber.Invalid); - Console.WriteLine($"Record A has sequence number {a}"); - - b = AppendRecord(sequence, - "This is record B", - a, - a); - Console.WriteLine($"Record B has sequence number {b}"); - - c = AppendRecord(sequence, - "This is record C", - a, - a); - Console.WriteLine($"Record C has sequence number {c}"); - - d = AppendRecord(sequence, - "This is record D", - b, - c); - Console.WriteLine($"Record D has sequence number {d}"); - - foreach(LogRecord record in - sequence.ReadLogRecords(a, ReadDirection.Forward)) - { - BinaryReader reader = new BinaryReader(record.Data); - Console.WriteLine($"{record.SequenceNumber}: {reader.ReadString()}"); - } - - foreach(LogRecord record in - sequence.ReadLogRecords(d, ReadDirection.User)) - { - BinaryReader reader = new BinaryReader(record.Data); - Console.WriteLine($"{record.SequenceNumber}: {reader.ReadString()}"); - } - - foreach(LogRecord record in - sequence.ReadLogRecords(d, ReadDirection.Previous)) - { - BinaryReader reader = new BinaryReader(record.Data); - Console.WriteLine($"{record.SequenceNumber}: {reader.ReadString()}"); - } - } - } -``` - + method. + +```csharp +using System; + using System.IO; + using System.IO.Log; + + class ReadRecordsSample + { + static SequenceNumber AppendRecord(IRecordSequence sequence, + string message, + SequenceNumber user, + SequenceNumber previous) + { + MemoryStream data = new MemoryStream(); + BinaryWriter writer = new BinaryWriter(data); + writer.Write(message); + + ArraySegment[] segments; + segments = new ArraySegment[1]; + segments[0] = new ArraySegment(data.GetBuffer(), + 0, + Data.Length); + + return sequence.Append(segments, + user, + previous, + WriteFlags.None); + } + + public static void Main(string[] args) + { + IRecordSequence sequence; + sequence = new FileIRecordSequence(args[0]); + + SequenceNumber a, b, c, d; + + a = AppendRecord(sequence, + "This is record A", + SequenceNumber.Invalid, + SequenceNumber.Invalid); + Console.WriteLine($"Record A has sequence number {a}"); + + b = AppendRecord(sequence, + "This is record B", + a, + a); + Console.WriteLine($"Record B has sequence number {b}"); + + c = AppendRecord(sequence, + "This is record C", + a, + a); + Console.WriteLine($"Record C has sequence number {c}"); + + d = AppendRecord(sequence, + "This is record D", + b, + c); + Console.WriteLine($"Record D has sequence number {d}"); + + foreach(LogRecord record in + sequence.ReadLogRecords(a, ReadDirection.Forward)) + { + BinaryReader reader = new BinaryReader(record.Data); + Console.WriteLine($"{record.SequenceNumber}: {reader.ReadString()}"); + } + + foreach(LogRecord record in + sequence.ReadLogRecords(d, ReadDirection.User)) + { + BinaryReader reader = new BinaryReader(record.Data); + Console.WriteLine($"{record.SequenceNumber}: {reader.ReadString()}"); + } + + foreach(LogRecord record in + sequence.ReadLogRecords(d, ReadDirection.Previous)) + { + BinaryReader reader = new BinaryReader(record.Data); + Console.WriteLine($"{record.SequenceNumber}: {reader.ReadString()}"); + } + } + } +``` + ]]> One or more of the arguments is invalid. @@ -1284,14 +1284,14 @@ using System; When overridden in a derived class, returns an enumerable collection of the restart areas in the sequence. An enumerable collection of the restart areas in the sequence. - [!NOTE] -> If the log extent containing the becomes corrupted, this method can throw an with the error message "The request could not be performed because of an unexpected I/O exception. The following error code was returned: '80070026'". - +> If the log extent containing the becomes corrupted, this method can throw an with the error message "The request could not be performed because of an unexpected I/O exception. The following error code was returned: '80070026'". + ]]> One or more of the arguments is invalid. @@ -1349,15 +1349,15 @@ using System; When overridden in a derived class, automatically makes a single reservation and appends a record to the sequence. The sequence number of the appended log record. - flag using the `recordAppendOptions` parameter, or call the method. - + flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -1407,15 +1407,15 @@ using System; When overridden in a derived class, automatically makes a single reservation and appends a record to the sequence. The sequence number of the appended log record. - flag using the `recordAppendOptions` parameter, or call the method. - + flag using the `recordAppendOptions` parameter, or call the method. + ]]> One or more of the arguments is invalid. @@ -1467,11 +1467,11 @@ using System; When overridden in a derived class, gets the sequence number of the most recently written restart area. The sequence number of the most recently written restart area. - The property was accessed after the sequence has been disposed of. @@ -1498,11 +1498,11 @@ using System; if appends are automatically retried if the log is full; otherwise, . The default is . - call fails because there is not enough space in the sequence, the record sequence will try to free space and retry the append. - + call fails because there is not enough space in the sequence, the record sequence will try to free space and retry the append. + ]]> The property was accessed after the sequence has been disposed of. @@ -1527,11 +1527,11 @@ using System; Occurs when the record sequence determines that the tail must be moved forward. - @@ -1544,11 +1544,11 @@ using System; When overridden in a derived class, writes a restart area to the . - method. - + method. + ]]> @@ -1577,15 +1577,15 @@ using System; When overridden in a derived class, writes a restart area to the . The sequence number of the written restart area. - method. - - The data in the byte array segments will be concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. - + method. + + The data in the byte array segments will be concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. + ]]> One or more of the arguments is invalid. @@ -1618,13 +1618,13 @@ using System; When overridden in a derived class, writes a restart area to the . The sequence number of the written restart area. - method. - - The data in the byte array segments will be concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. - + method. + + The data in the byte array segments will be concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. + ]]> One or more of the arguments is invalid. @@ -1659,15 +1659,15 @@ using System; When overridden in a derived class, writes a restart area to the and updates the base sequence number. The sequence number of the written restart area. - method. - - When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. - - When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. - + method. + + When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. + + When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. + ]]> One or more of the arguments is invalid. @@ -1702,15 +1702,15 @@ using System; When overridden in a derived class, writes a restart area to the and updates the base sequence number. The sequence number of the written restart area. - method. - - When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. - - When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. - + method. + + When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. + + When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. + ]]> One or more of the arguments is invalid. @@ -1747,19 +1747,19 @@ using System; When overridden in a derived class, writes a restart area to the using a reservation, and updates the base sequence number. The sequence number of the written restart area. - method. - - When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. - - If a reservation is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can contain the data, and that reservation will be removed from the collection. - - When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. - - If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. - + method. + + When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. + + If a reservation is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can contain the data, and that reservation will be removed from the collection. + + When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. + + If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. + ]]> One or more of the arguments is invalid. @@ -1796,19 +1796,19 @@ using System; When overridden in a derived class, writes a restart area to the using a reservation, and updates the base sequence number. The sequence number of the written restart area. - method. - - When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. - - If a reservation is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can contain the data, and that reservation will be removed from the collection. - - When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. - - If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. - + method. + + When a restart area is written, the data in the byte array segments are concatenated into a single byte array for appending as the record. No provision is made for splitting data back into array segments when the restart area is read. + + If a reservation is specified, the written restart area will consume space that has been previously reserved, using a reservation contained in the collection. If the method succeeds, it will consume the smallest reservation that can contain the data, and that reservation will be removed from the collection. + + When this method successfully completes, the base sequence number has been updated. All log records with sequence numbers less than the new base sequence number are inaccessible. + + If a record sequence has been disposed of, or if you pass an invalid argument, exceptions are thrown immediately within this operation. Errors that occurred during an asynchronous append request, for example, a disk failure during the I/O request, will result in exceptions being thrown when the method is called. + ]]> One or more of the arguments is invalid. diff --git a/xml/System.IO.Log/LogExtentCollection.xml b/xml/System.IO.Log/LogExtentCollection.xml index 14211d646a3..2a3d7bc100f 100644 --- a/xml/System.IO.Log/LogExtentCollection.xml +++ b/xml/System.IO.Log/LogExtentCollection.xml @@ -24,23 +24,23 @@ Represents the collection of objects associated with a . - objects associated with a . A instance stores its data in a collection of disk extents, represented by instances. A particular is associated with one , and objects in the same are of identical size. Space is added to and removed from a instance in extent increments. - - Although objects are represented on disk as files, they should not be moved or deleted as normal files. Rather, you should use the methods provided by this class for adding and deleting instances directly. Extents are usually removed when they no longer contain any active data. However, if the `force` parameter in the method is `true`, an exception is thrown if they cannot be removed immediately. - - You cannot remove the last extent in the , which means that the property cannot be zero after an extent is added. - - - -## Examples - This example shows how to use the and classes to add and emulate extents in a log sequence. - + objects associated with a . A instance stores its data in a collection of disk extents, represented by instances. A particular is associated with one , and objects in the same are of identical size. Space is added to and removed from a instance in extent increments. + + Although objects are represented on disk as files, they should not be moved or deleted as normal files. Rather, you should use the methods provided by this class for adding and deleting instances directly. Extents are usually removed when they no longer contain any active data. However, if the `force` parameter in the method is `true`, an exception is thrown if they cannot be removed immediately. + + You cannot remove the last extent in the , which means that the property cannot be zero after an extent is added. + + + +## Examples + This example shows how to use the and classes to add and emulate extents in a log sequence. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelogrecordsequence/cs/mylogrecordsequence.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: + ]]> @@ -79,39 +79,39 @@ The path to the log extent to be added. Adds a instance to the collection. - instance is the same as the size of existing instances in the collection. - + instance is the same as the size of existing instances in the collection. + > [!NOTE] -> Do not use this method to add the first to the collection. - - - -## Examples - This example shows how to use the and classes to add and emulate extents in a log sequence. - +> Do not use this method to add the first to the collection. + + + +## Examples + This example shows how to use the and classes to add and emulate extents in a log sequence. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelogrecordsequence/cs/mylogrecordsequence.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: + ]]> is . The log store file name specified by is not valid. A size must be specified for the first extent. - The request could not be performed because of an unexpected I/O exception. - - -or- - + The request could not be performed because of an unexpected I/O exception. + + -or- + The file specified by cannot be created because the file or directory already exists. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. - The record sequence is full. - - -or- - + The record sequence is full. + + -or- + The storage disk or medium is full. Access for the specified log store is denied by the operating system. @@ -141,36 +141,36 @@ The size of the log extent. Creates a new with the specified size and adds it to the collection. - or is . is not within a valid range. - The log store file name specified by is not valid. - + The log store file name specified by is not valid. + is smaller than the size of the other extents in the store. - A size must be specified for the first extent. - - -or- - + A size must be specified for the first extent. + + -or- + A duplicate extent name cannot be used. - The request could not be performed because of an unexpected I/O exception. - - -or- - + The request could not be performed because of an unexpected I/O exception. + + -or- + The file specified by cannot be created because the file or directory already exists. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. - The record sequence is full. - - -or- - + The record sequence is full. + + -or- + The storage disk or medium is full. Access for the specified log store is denied by the operating system. @@ -195,14 +195,14 @@ Gets the number of log extents in the collection. The number of log extents in the collection. - and classes to add and emulate extents in a log sequence. - + and classes to add and emulate extents in a log sequence. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelogrecordsequence/cs/mylogrecordsequence.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: + ]]> The log store has been disposed of. @@ -228,14 +228,14 @@ Gets the number of free instances in the collection, that is, the number of instances that do not contain any data. The number of free instances in the collection. - and classes to add and emulate extents in a log sequence. - + and classes to add and emulate extents in a log sequence. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelogrecordsequence/cs/mylogrecordsequence.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelogrecordsequence/vb/mylogrecordsequence.vb" id="Snippet0"::: + ]]> The log store has been disposed of. @@ -266,13 +266,13 @@ An enumerator for the instances in this collection. To be added. The request could not be performed because of an unexpected I/O exception. - The operation is invalid for one of the following reasons: - -- The enumeration has ended. - -- The collection has been modified. - -- The enumeration has not been started. A call to must be made. + The operation is invalid for one of the following reasons: + +- The enumeration has ended. + +- The collection has been modified. + +- The enumeration has not been started. A call to must be made. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. The record sequence is full. @@ -314,13 +314,13 @@ if the extent should be removed immediately; otherwise, . Removes the specified instance from the collection. - instance can be removed from the collection only if it is not part of the active region of the . If the `force` parameter is `true` and the extent cannot be removed immediately, an exception is thrown. If the `force` parameter is `false` and the extent cannot be removed immediately, the removal is deferred until it is no longer part of the active region. - - You cannot remove the last extent in the , which means that the property cannot be zero once an extent has been added. - + instance can be removed from the collection only if it is not part of the active region of the . If the `force` parameter is `true` and the extent cannot be removed immediately, an exception is thrown. If the `force` parameter is `false` and the extent cannot be removed immediately, the removal is deferred until it is no longer part of the active region. + + You cannot remove the last extent in the , which means that the property cannot be zero once an extent has been added. + ]]> @@ -329,10 +329,10 @@ cannot be found in the collection. cannot be removed. It is either still part of the active region, or access is denied. - The request could not be performed because of an unexpected I/O exception. - - -or- - + The request could not be performed because of an unexpected I/O exception. + + -or- + cannot be deleted. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. @@ -366,23 +366,23 @@ if the extent should be removed immediately; otherwise, . Removes the instance with the specified path from the collection. - instance can be removed from the collection only if it is not part of the active region of the . If the `force` parameter is `true` and the extent cannot be removed immediately, an exception is thrown. If the `force` parameter is `false` and the extent cannot be removed immediately, the removal is deferred until it is no longer part of the active region. - - You cannot remove the last extent in the , which means that the property cannot be zero once an extent has been added. - + instance can be removed from the collection only if it is not part of the active region of the . If the `force` parameter is `true` and the extent cannot be removed immediately, an exception is thrown. If the `force` parameter is `false` and the extent cannot be removed immediately, the removal is deferred until it is no longer part of the active region. + + You cannot remove the last extent in the , which means that the property cannot be zero once an extent has been added. + ]]> or is . The extent specified by cannot be found in the collection. The extent specified by cannot be removed. It is either still part of the active region, or access is denied. - The request could not be performed because of an unexpected I/O exception. - - -or- - + The request could not be performed because of an unexpected I/O exception. + + -or- + The extent specified by cannot be deleted. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. diff --git a/xml/System.IO.Log/ReservationCollection.xml b/xml/System.IO.Log/ReservationCollection.xml index 39e37f91167..b64977979d7 100644 --- a/xml/System.IO.Log/ReservationCollection.xml +++ b/xml/System.IO.Log/ReservationCollection.xml @@ -30,63 +30,63 @@ Manages the collection of space reservations made in a record sequence. - method can either reserve space or append data, or both, depending on the parameters that are specified when making the call. As work progresses in a transaction, an application can append the undo information and reserve space for compensation records. During a rollback operation, compensation records that are created indicate what has been undone on the disk. The records are appended using space that has been previously reserved. This guarantees that an RM does not run out of log space, which is a fatal condition, while performing a rollback operation. If a log fills up during a transaction, an application can safely roll back a transaction without corrupting durable data. - - CLFS is an ARIES-compliant logging system, meant for write-ahead logging. In write-ahead logging, an application writes an undo record before it performs the operation, reserving the amount of space it takes in the log to write a compensating record, which may be used during rollback. Later, the reserved space is used when the compensation record is actually written. - - Applications can either reserve or access long space at any given time (they are mutually exclusive operations). After a commit record is written to the log, an application can free up the reservations for the compensation records. This action can be done by calling either the or method. Calling the method guarantees that the operation is atomic, while calling the method does not. - - When you free records, you must free the same records that you reserved together in a previous call to the method. - + method can either reserve space or append data, or both, depending on the parameters that are specified when making the call. As work progresses in a transaction, an application can append the undo information and reserve space for compensation records. During a rollback operation, compensation records that are created indicate what has been undone on the disk. The records are appended using space that has been previously reserved. This guarantees that an RM does not run out of log space, which is a fatal condition, while performing a rollback operation. If a log fills up during a transaction, an application can safely roll back a transaction without corrupting durable data. + + CLFS is an ARIES-compliant logging system, meant for write-ahead logging. In write-ahead logging, an application writes an undo record before it performs the operation, reserving the amount of space it takes in the log to write a compensating record, which may be used during rollback. Later, the reserved space is used when the compensation record is actually written. + + Applications can either reserve or access long space at any given time (they are mutually exclusive operations). After a commit record is written to the log, an application can free up the reservations for the compensation records. This action can be done by calling either the or method. Calling the method guarantees that the operation is atomic, while calling the method does not. + + When you free records, you must free the same records that you reserved together in a previous call to the method. + > [!NOTE] -> Your implementation of must implement the and methods to perform the actual reservation allocation and deallocation. In addition, your implementation must also call when a record is written into a reserved space. - - - -## Examples - Reservations can be performed in two ways as shown in the following examples. You can adopt the practices in the samples for robust processing. Notice that this task can only be performed when using the CLFS-based class. - -``` -//Using the ReserveAndAppend Method -ReservationCollection reservations = recordSequence.CreateReservationCollection(); -long[] lengthOfUndoRecords = new long[] { 1000 }; -recordSequence.ReserveAndAppend(recordData, - userSqn, - previousSqn, - RecordSequenceAppendOptions.None, - reservations, - lengthOfUndoRecords); -recordSequence.Append(undoRecordData, // If necessary … - userSqn, - previousSqn, - RecordSequenceAppendOptions.ForceFlush, - reservations); - -// Using the Manual Approach -ReservationCollection reservations = recordSequence.CreateReservationCollection(); -reservations.Add(lengthOfUndoRecord); -try -{ - recordSequence.Append(recordData, userSqn, previousSqn, RecordAppendOptions.None); -} -catch (Exception) -{ - reservations.Remove(lengthOfUndoRecord); - throw; -} - -recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions.ForceFlush, reservations); -``` - +> Your implementation of must implement the and methods to perform the actual reservation allocation and deallocation. In addition, your implementation must also call when a record is written into a reserved space. + + + +## Examples + Reservations can be performed in two ways as shown in the following examples. You can adopt the practices in the samples for robust processing. Notice that this task can only be performed when using the CLFS-based class. + +``` +//Using the ReserveAndAppend Method +ReservationCollection reservations = recordSequence.CreateReservationCollection(); +long[] lengthOfUndoRecords = new long[] { 1000 }; +recordSequence.ReserveAndAppend(recordData, + userSqn, + previousSqn, + RecordSequenceAppendOptions.None, + reservations, + lengthOfUndoRecords); +recordSequence.Append(undoRecordData, // If necessary … + userSqn, + previousSqn, + RecordSequenceAppendOptions.ForceFlush, + reservations); + +// Using the Manual Approach +ReservationCollection reservations = recordSequence.CreateReservationCollection(); +reservations.Add(lengthOfUndoRecord); +try +{ + recordSequence.Append(recordData, userSqn, previousSqn, RecordAppendOptions.None); +} +catch (Exception) +{ + reservations.Remove(lengthOfUndoRecord); + throw; +} + +recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions.ForceFlush, reservations); +``` + ]]> @@ -135,27 +135,27 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. The size of the requested reservation, in bytes. Allocates a reservation and adds it to the collection. This method cannot be inherited. - class. - -``` -ReservationCollection reservations = recordSequence.CreateReservationCollection(); -reservations.Add(lengthOfUndoRecord); -try -{ - recordSequence.Append(recordData, userSqn, previousSqn, RecordAppendOptions.None); -} -catch (Exception) -{ - reservations.Remove(lengthOfUndoRecord); - throw; -} - -recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions.ForceFlush, reservations); -``` - + class. + +``` +ReservationCollection reservations = recordSequence.CreateReservationCollection(); +reservations.Add(lengthOfUndoRecord); +try +{ + recordSequence.Append(recordData, userSqn, previousSqn, RecordAppendOptions.None); +} +catch (Exception) +{ + reservations.Remove(lengthOfUndoRecord); + throw; +} + +recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions.ForceFlush, reservations); +``` + ]]> @@ -266,10 +266,10 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. or is . is less than zero, or greater than or equal to the length of . - There is not enough space in the specified array to copy the data. - - -or- - + There is not enough space in the specified array to copy the data. + + -or- + is not a single dimensional array, which is the only type supported for the requested action. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. @@ -347,8 +347,8 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. When overridden in a derived class, releases a reservation of the specified size. To be added. - When you inherit from , you must implement this method to actually release space in the record sequence. You should not call when this method is complete; that logic is handled for you. - + When you inherit from , you must implement this method to actually release space in the record sequence. You should not call when this method is complete; that logic is handled for you. + When you free records, you must free the same records that you reserved together in a previous call to the method. @@ -377,11 +377,11 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. When overridden in a derived class, gets the best matching reservation for a given size. A reservation from the collection that is greater than or equal to the specified size, or -1 if no such reservation exists. - method should be called to ensure that the accurately represents the amount of reserved space in the record sequence. - + method should be called to ensure that the accurately represents the amount of reserved space in the record sequence. + ]]> @@ -410,13 +410,13 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. Returns an enumerator that can iterate through the . This method cannot be inherited. An enumerator that can iterate through the . To be added. - The operation is invalid for one of the following reasons: - -- The enumeration has ended. - -- The collection has been modified. - -- The enumeration has not been started. A call to must be made. + The operation is invalid for one of the following reasons: + +- The enumeration has ended. + +- The collection has been modified. + +- The enumeration has not been started. A call to must be made. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. Access for the specified log store is denied by the operating system. @@ -445,11 +445,11 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. Gets a value that indicates whether the collection is read-only. This property always returns . - is never read-only. - + is never read-only. + ]]> @@ -510,27 +510,27 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. if a reservation of the specified size was found and removed; otherwise, . - class. - -``` -ReservationCollection reservations = recordSequence.CreateReservationCollection(); -reservations.Add(lengthOfUndoRecord); -try -{ - recordSequence.Append(recordData, userSqn, previousSqn, RecordAppendOptions.None); -} -catch (Exception) -{ - reservations.Remove(lengthOfUndoRecord); - throw; -} - -recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions.ForceFlush, reservations); -``` - + class. + +``` +ReservationCollection reservations = recordSequence.CreateReservationCollection(); +reservations.Add(lengthOfUndoRecord); +try +{ + recordSequence.Append(recordData, userSqn, previousSqn, RecordAppendOptions.None); +} +catch (Exception) +{ + reservations.Remove(lengthOfUndoRecord); + throw; +} + +recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions.ForceFlush, reservations); +``` + ]]> No reservation large enough to fit the provided record can be found in the specified reservation collection. @@ -564,11 +564,11 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. The size of the reservation that has been released. When overridden in a derived class, indicates that a reservation has been released. - , you must call this method when a reservation is released for a reason other than removing it from the collection. - + , you must call this method when a reservation is released for a reason other than removing it from the collection. + ]]> @@ -596,11 +596,11 @@ recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions. The size of the reservation that has been made. When overridden in a derived class, indicates that a reservation has been made. - , you must call this method when a reservation is made outside of a call to . - + , you must call this method when a reservation is made outside of a call to . + ]]> @@ -637,13 +637,13 @@ This member is an explicit interface member implementation. It can be used only ]]> - The operation is invalid for one of the following reasons: - -- The enumeration has ended. - -- The collection has been modified. - -- The enumeration has not been started. A call to must be made. + The operation is invalid for one of the following reasons: + +- The enumeration has ended. + +- The collection has been modified. + +- The enumeration has not been started. A call to must be made. The method was called after the sequence has been disposed of. There is not enough memory to continue the execution of the program. Access for the specified log store is denied by the operating system. diff --git a/xml/System.IO.MemoryMappedFiles/MemoryMappedViewAccessor.xml b/xml/System.IO.MemoryMappedFiles/MemoryMappedViewAccessor.xml index 4e07c97b856..47e619174eb 100644 --- a/xml/System.IO.MemoryMappedFiles/MemoryMappedViewAccessor.xml +++ b/xml/System.IO.MemoryMappedFiles/MemoryMappedViewAccessor.xml @@ -49,21 +49,21 @@ Represents a randomly accessed view of a memory-mapped file. - method of a object to get this view. - - - -## Examples - The following example obtains a from a large memory-mapped file for editing. - - This code example is part of a larger example provided for the class. - + method of a object to get this view. + + + +## Examples + The following example obtains a from a large memory-mapped file for editing. + + This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/System.IO.MemoryMappedFiles/MemoryMappedFile/Overview/program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/memorymappedfiles.memorymappedfile.createfromfile/vb/program.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/memorymappedfiles.memorymappedfile.createfromfile/vb/program.vb" id="Snippet2"::: + ]]> Memory-Mapped Files @@ -166,15 +166,15 @@ Clears all buffers for this view and causes any buffered data to be written to the underlying file. - Methods were called after the accessor was closed. diff --git a/xml/System.IO.MemoryMappedFiles/MemoryMappedViewStream.xml b/xml/System.IO.MemoryMappedFiles/MemoryMappedViewStream.xml index 9b31621fb7d..a9b8e81aa93 100644 --- a/xml/System.IO.MemoryMappedFiles/MemoryMappedViewStream.xml +++ b/xml/System.IO.MemoryMappedFiles/MemoryMappedViewStream.xml @@ -49,21 +49,21 @@ Represents a view of a memory-mapped file as a sequentially accessed stream. - method of a object to get this stream. - - - -## Examples - The following example obtains a of a memory-mapped file and writes a value to the stream for inter-process communication. - - This code example is part of a larger example provided for the method. - + method of a object to get this stream. + + + +## Examples + The following example obtains a of a memory-mapped file and writes a value to the stream for inter-process communication. + + This code example is part of a larger example provided for the method. + :::code language="csharp" source="~/snippets/csharp/System.IO.MemoryMappedFiles/MemoryMappedFile/CreateNew/program2.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.memorymappedfiles_ipc_x/vb/program.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.io.memorymappedfiles_ipc_x/vb/program.vb" id="Snippet2"::: + ]]> Memory-Mapped Files @@ -166,15 +166,15 @@ Clears all buffers for this stream and causes any buffered data to be written to the underlying file. - @@ -307,11 +307,11 @@ The desired length of the current stream in bytes. Sets the length of the current stream. - This method is not supported. diff --git a/xml/System.IO.Packaging/Package.xml b/xml/System.IO.Packaging/Package.xml index 18c018732a6..05f900466bf 100644 --- a/xml/System.IO.Packaging/Package.xml +++ b/xml/System.IO.Packaging/Package.xml @@ -66,12 +66,12 @@ A ("relationship") defines an association between a source or and a target object. A can be one of two types, each of which can be one of two forms: -- A package-level relationship (created by the method) relates a to either: +- A package-level relationship (created by the method) relates a to either: - A target part in the package. - A target resource outside the package. -- A part-level relationship (created by the method) relates a source to either: +- A part-level relationship (created by the method) relates a source to either: - Another target part in the package. - A target resource outside the package. @@ -500,8 +500,8 @@ ## Remarks A package-level relationship defines an association between the package and an associated target part or resource. A package-level relationship can be one of two forms. -- Between a to a target inside the package. -- Between a to a target resource outside the package. +- Between a to a target inside the package. +- Between a to a target resource outside the package. In a package-relationship the package is considered the "owner" of the relationship. When the package is deleted, all the relationships owned by the package are also deleted. The process of creating or deleting the relationship does not physically alter the target part or resource in any way. @@ -568,8 +568,8 @@ ## Remarks A package-level relationship defines an association between the package and an associated target part or resource. A package-level relationship can be one of two forms. -- Between a to a target part in the package. -- Between a to a target resource outside the package. +- Between a to a target part in the package. +- Between a to a target resource outside the package. In a package-relationship the package is considered the "owner" of the relationship. When the package is deleted, all the relationships owned by the package are also deleted. @@ -669,8 +669,8 @@ ## Remarks A package-level relationship defines an association between the package and an associated target part or resource. A package-level relationship can be one of two forms. -- Between a to a target part in the package. -- Between a to a target resource outside the package. +- Between a to a target part in the package. +- Between a to a target resource outside the package. In a package-relationship the package is considered the "owner" of the relationship. When the package is deleted, all the relationships owned by the package are also deleted. @@ -876,8 +876,8 @@ ## Remarks A package-level relationship defines an association between the package and an associated target part or resource. A package-level relationship can be one of two forms. -- Between a to a target part in the package. -- Between a to a target resource outside the package. +- Between a to a target part in the package. +- Between a to a target resource outside the package. In a package-relationship the package is considered the "owner" of the relationship. When the package is deleted, all the relationships owned by the package are also deleted. @@ -1434,8 +1434,8 @@ For more information about packages and package parts, see section 1.1 of the Op A package-level relationship defines an association between the package and an associated target part or resource. A package-level relationship can be one of two forms. -- Between a to a target part in the package. -- Between a to a target resource outside the package. +- Between a to a target part in the package. +- Between a to a target resource outside the package. In a package-relationship the package is considered the "owner" of the relationship. When the package is deleted, all the relationships owned by the package are also deleted. The process of creating or deleting the relationship does not physically alter the target part or resource in any way. diff --git a/xml/System.IO.Packaging/PackageDigitalSignature.xml b/xml/System.IO.Packaging/PackageDigitalSignature.xml index 613e16e73e6..c28c548d81d 100644 --- a/xml/System.IO.Packaging/PackageDigitalSignature.xml +++ b/xml/System.IO.Packaging/PackageDigitalSignature.xml @@ -30,9 +30,9 @@ For security, a can be associated with parts within a . A incorporates an X.509 certificate that provides two features: -- Identifies and authenticates the originator of the part. +- Identifies and authenticates the originator of the part. -- Validates that the part has not been modified. +- Validates that the part has not been modified. The digital signature does not preclude a part from being modified, but a validation check against the signature fails if the part has changed in any way. The application can then take appropriate action - for example, it can prevent the part from opening or it can notify the user that the part has been modified and is not secure. diff --git a/xml/System.IO.Packaging/PackagePart.xml b/xml/System.IO.Packaging/PackagePart.xml index 1d9627a3a2e..253ec9a2b50 100644 --- a/xml/System.IO.Packaging/PackagePart.xml +++ b/xml/System.IO.Packaging/PackagePart.xml @@ -426,9 +426,9 @@ ## Remarks A part-level relationship defines an association between this part and a target part or resource. A part-level relationship can be one of two forms. -- Between a source to a target inside the . +- Between a source to a target inside the . -- Between a source to a target resource outside the package. +- Between a source to a target resource outside the package. In a part-relationship the source part is considered the "owner" of the relationship. When the source part is deleted, all the relationships owned by the part are also deleted. The process of creating or deleting the relationship does not physically alter the target part or resource in any way. diff --git a/xml/System.IO.Pipes/NamedPipeClientStream.xml b/xml/System.IO.Pipes/NamedPipeClientStream.xml index 522a7065063..45b95a1c4e3 100644 --- a/xml/System.IO.Pipes/NamedPipeClientStream.xml +++ b/xml/System.IO.Pipes/NamedPipeClientStream.xml @@ -133,15 +133,15 @@ ## Remarks This constructor uses the following default values: -- A default server name of ".". +- A default server name of ".". -- A default value of . +- A default value of . -- A default value of . +- A default value of . -- A default value of . +- A default value of . -- A default value of . +- A default value of . ]]> @@ -209,13 +209,13 @@ ## Remarks This constructor uses the following default values: -- A default value of . +- A default value of . -- A default value of . +- A default value of . -- A default value of . +- A default value of . -- A default value of . +- A default value of . ]]> @@ -285,11 +285,11 @@ ## Remarks This constructor uses the following default values: -- A default value of . +- A default value of . -- A default value of . +- A default value of . -- A default value of . +- A default value of . @@ -439,9 +439,9 @@ ## Remarks This constructor uses the following default values: -- A default value of . +- A default value of . -- A default value of . +- A default value of . ]]> diff --git a/xml/System.IO/BinaryReader.xml b/xml/System.IO/BinaryReader.xml index d0b1eb53c35..bb7e189a809 100644 --- a/xml/System.IO/BinaryReader.xml +++ b/xml/System.IO/BinaryReader.xml @@ -1366,11 +1366,11 @@ Because of data formatting conflicts, using this method with the following encodings is not recommended: -- UTF-7 +- UTF-7 -- ISO-2022-JP +- ISO-2022-JP -- ISCII +- ISCII For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/common-i-o-tasks). @@ -1541,11 +1541,11 @@ Because of data formatting conflicts, using this method with the following encodings is not recommended: -- UTF-7 +- UTF-7 -- ISO-2022-JP +- ISO-2022-JP -- ISCII +- ISCII For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/common-i-o-tasks). diff --git a/xml/System.IO/BinaryWriter.xml b/xml/System.IO/BinaryWriter.xml index af4609c9f11..fcf7ea92e51 100644 --- a/xml/System.IO/BinaryWriter.xml +++ b/xml/System.IO/BinaryWriter.xml @@ -456,7 +456,7 @@ ## Examples The following code example shows how to read and write `Double` data to memory by using the and `BinaryWriter` classes on top of the class. `MemoryStream` only reads and writes `Byte` data. - + :::code language="csharp" source="~/snippets/csharp/System.IO/BinaryReader/BaseStream/rwdouble.cs" id="Snippet1"::: :::code language="fsharp" source="~/snippets/fsharp/System.IO/BinaryReader/BaseStream/rwdouble.fs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.IO.BinaryReaderWriter.RWDouble/VB/rwdouble.vb" id="Snippet1"::: @@ -1151,11 +1151,11 @@ This member is an explicit interface member implementation. It can be used only ## Remarks Because of data formatting conflicts, using this method with the following encodings is not recommended: -- UTF-7 +- UTF-7 -- ISO-2022-JP +- ISO-2022-JP -- ISCII +- ISCII For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/common-i-o-tasks). @@ -1315,11 +1315,11 @@ This member is an explicit interface member implementation. It can be used only ## Remarks Because of data formatting conflicts, using this method with the following encodings is not recommended: -- UTF-7 +- UTF-7 -- ISO-2022-JP +- ISO-2022-JP -- ISCII +- ISCII For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/common-i-o-tasks). diff --git a/xml/System.IO/Directory.xml b/xml/System.IO/Directory.xml index af30800ba01..41cd2e75d14 100644 --- a/xml/System.IO/Directory.xml +++ b/xml/System.IO/Directory.xml @@ -74,13 +74,13 @@ ## Remarks Use the class for typical operations such as copying, moving, renaming, creating, and deleting directories. -- To create a directory, use one of the methods. +- To create a directory, use one of the methods. -- To delete a directory, use one of the methods. +- To delete a directory, use one of the methods. -- To get or set the current directory for an app, use the or method. +- To get or set the current directory for an app, use the or method. -- To manipulate information related to the creation, access, and writing of a directory, use methods such as and . +- To manipulate information related to the creation, access, and writing of a directory, use methods such as and . The static methods of the class perform security checks on all methods. If you are going to reuse an object several times, consider using the corresponding instance method of instead, because the security check will not always be necessary. diff --git a/xml/System.IO/DirectoryInfo.xml b/xml/System.IO/DirectoryInfo.xml index 99e28431b3f..3416596fc4c 100644 --- a/xml/System.IO/DirectoryInfo.xml +++ b/xml/System.IO/DirectoryInfo.xml @@ -783,9 +783,9 @@ namespace ConsoleApp ## Remarks The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -890,9 +890,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -978,9 +978,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1078,9 +1078,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1185,9 +1185,9 @@ namespace ConsoleApp ## Remarks The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1300,9 +1300,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1399,9 +1399,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1501,9 +1501,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1610,9 +1610,9 @@ namespace ConsoleApp ## Remarks The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1707,9 +1707,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1796,9 +1796,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -1896,9 +1896,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -2621,9 +2621,9 @@ namespace ConsoleApp ## Remarks The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -2734,9 +2734,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -2854,9 +2854,9 @@ namespace ConsoleApp The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. @@ -2966,9 +2966,9 @@ namespace ConsoleApp ## Remarks The and methods differ as follows: -- When you use , you can start enumerating the collection of objects before the whole collection is returned. +- When you use , you can start enumerating the collection of objects before the whole collection is returned. -- When you use , you must wait for the whole array of objects to be returned before you can access the array. +- When you use , you must wait for the whole array of objects to be returned before you can access the array. Therefore, when you are working with many files and directories, can be more efficient. diff --git a/xml/System.IO/File.xml b/xml/System.IO/File.xml index 07ec867677d..58488c1784f 100644 --- a/xml/System.IO/File.xml +++ b/xml/System.IO/File.xml @@ -515,9 +515,9 @@ You can use this method to create a file that contains the following: -- The results of a [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) query on the lines of a file, as obtained by using the method. +- The results of a [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) query on the lines of a file, as obtained by using the method. -- The contents of a collection that implements an of strings. +- The contents of a collection that implements an of strings. ]]> @@ -1374,9 +1374,9 @@ ## Examples The following example copies files to the C:\archives\2008 backup folder. It uses the two overloads of the method as follows: -- It first uses the method overload to copy text (.txt) files. The code demonstrates that this overload does not allow overwriting files that were already copied. +- It first uses the method overload to copy text (.txt) files. The code demonstrates that this overload does not allow overwriting files that were already copied. -- It then uses the method overload to copy pictures (.jpg files). The code demonstrates that this overload does allow overwriting files that were already copied. +- It then uses the method overload to copy pictures (.jpg files). The code demonstrates that this overload does allow overwriting files that were already copied. :::code language="csharp" source="~/snippets/csharp/System.IO/File/Copy/program.cs" id="Snippet1"::: :::code language="fsharp" source="~/snippets/fsharp/System.IO/File/Copy/program.fs" id="Snippet1"::: @@ -1479,7 +1479,7 @@ ## Examples The following example copies files to the C:\archives\2008 backup folder. It uses the two overloads of the method as follows: -- It first uses the method overload to copy text (.txt) files. The code demonstrates that this overload does not allow overwriting files that were already copied. +- It first uses the method overload to copy text (.txt) files. The code demonstrates that this overload does not allow overwriting files that were already copied. It then uses the method overload to copy pictures (.jpg files). The code demonstrates that this overload does allow overwriting files that were already copied. @@ -5346,11 +5346,11 @@ The following example moves a file. You can use the method to do the following: -- Perform [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) queries on a file to obtain a filtered set of its lines. +- Perform [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) queries on a file to obtain a filtered set of its lines. -- Write the returned collection of lines to a file with the method, or append them to an existing file with the method. +- Write the returned collection of lines to a file with the method, or append them to an existing file with the method. -- Create an immediately populated instance of a collection that takes an collection of strings for its constructor, such as a or a . +- Create an immediately populated instance of a collection that takes an collection of strings for its constructor, such as a or a . This method uses for the encoding value. @@ -5460,11 +5460,11 @@ The following example moves a file. You can use the method to do the following: -- Perform [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) queries on a file to obtain a filtered set of its lines. +- Perform [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) queries on a file to obtain a filtered set of its lines. -- Write the returned collection of lines to a file with the method, or append them to an existing file with the method. +- Write the returned collection of lines to a file with the method, or append them to an existing file with the method. -- Create an immediately populated instance of a collection that takes an collection of strings for its constructor, such as a or a . +- Create an immediately populated instance of a collection that takes an collection of strings for its constructor, such as a or a . ]]> @@ -7496,9 +7496,9 @@ It is not possible to change the compression status of a o You can use this method to create a file that contains the following: -- The results of a [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) query on the lines of a file, as obtained by using the method. +- The results of a [LINQ to Objects](/dotnet/csharp/programming-guide/concepts/linq/linq-to-objects) query on the lines of a file, as obtained by using the method. -- The contents of a collection that implements an of strings. +- The contents of a collection that implements an of strings. ]]> diff --git a/xml/System.IO/FileInfo.xml b/xml/System.IO/FileInfo.xml index 68957695264..deac4a40d7d 100644 --- a/xml/System.IO/FileInfo.xml +++ b/xml/System.IO/FileInfo.xml @@ -104,17 +104,17 @@ The class provides the following properties that enable you to retrieve information about a file. For an example of how to use each property, see the property pages. -- The property retrieves an object that represents the parent directory of a file. +- The property retrieves an object that represents the parent directory of a file. -- The property retrieves the full path of the parent directory of a file. +- The property retrieves the full path of the parent directory of a file. -- The property checks for the presence of a file before operating on it. +- The property checks for the presence of a file before operating on it. -- The property retrieves or sets a value that specifies whether a file can be modified. +- The property retrieves or sets a value that specifies whether a file can be modified. -- The retrieves the size of a file. +- The retrieves the size of a file. -- The retrieves the name of a file. +- The retrieves the name of a file. diff --git a/xml/System.IO/FileStream.xml b/xml/System.IO/FileStream.xml index 5cbc458e4e0..ddf9d0ce089 100644 --- a/xml/System.IO/FileStream.xml +++ b/xml/System.IO/FileStream.xml @@ -2724,9 +2724,9 @@ Calling `DisposeAsync` allows the resources used by the performs the following two functions: -- Any data previously written to the buffer is copied to the file and the buffer is cleared except for its encoder state. +- Any data previously written to the buffer is copied to the file and the buffer is cleared except for its encoder state. -- If is `true` and data was previously copied from the file to the buffer for reading, the current position within the file is decremented by the number of unread bytes in the buffer. The buffer is then cleared. +- If is `true` and data was previously copied from the file to the buffer for reading, the current position within the file is decremented by the number of unread bytes in the buffer. The buffer is then cleared. Use the method overload when you want to ensure that all buffered data in intermediate file buffers is written to disk. diff --git a/xml/System.IO/InvalidDataException.xml b/xml/System.IO/InvalidDataException.xml index c4e5cbd155a..7b502ccd960 100644 --- a/xml/System.IO/InvalidDataException.xml +++ b/xml/System.IO/InvalidDataException.xml @@ -86,11 +86,11 @@ The exception that is thrown when a data stream is in an invalid format. - is thrown when invalid data is detected in the data stream. - + is thrown when invalid data is detected in the data stream. + ]]> @@ -105,17 +105,17 @@ Initializes a new instance of the class. - is thrown when invalid data is detected in the data stream, such as in the following situations: - -- A row of data in a delimited text file does not have the expected number of fields. - -- An attempt is made to read a binary file, such as word processing document, that has become corrupted. - -- An attempt is made to read bytes from a decompression stream that has an invalid format. - + is thrown when invalid data is detected in the data stream, such as in the following situations: + +- A row of data in a delimited text file does not have the expected number of fields. + +- An attempt is made to read a binary file, such as word processing document, that has become corrupted. + +- An attempt is made to read bytes from a decompression stream that has an invalid format. + ]]> @@ -163,11 +163,11 @@ Initializes a new instance of the class. - property of the new instance to a system-supplied message that describes the error, such as "An invalid argument was specified." This message is localized based on the current system culture. - + property of the new instance to a system-supplied message that describes the error, such as "An invalid argument was specified." This message is localized based on the current system culture. + ]]> @@ -226,11 +226,11 @@ The error message that explains the reason for the exception. Initializes a new instance of the class with a specified error message. - property of the new instance to a system-supplied message that describes the error, such as "An invalid argument was specified." This message is localized based on the current system culture. - + property of the new instance to a system-supplied message that describes the error, such as "An invalid argument was specified." This message is localized based on the current system culture. + ]]> @@ -291,13 +291,13 @@ The exception that is the cause of the current exception. If the parameter is not , the current exception is raised in a block that handles the inner exception. Initializes a new instance of the class with a reference to the inner exception that is the cause of this exception. - property of the new instance using the value of the `message` parameter. The content of the `message` parameter is intended to be understood by humans. The caller of this constructor is required to ensure that this string has been localized for the current system culture. - - An exception that is thrown as a direct result of a previous exception should include a reference to the previous exception in the property. The property returns the same value that is passed into the constructor, or `null` if the property does not supply the inner exception value to the constructor. - + property of the new instance using the value of the `message` parameter. The content of the `message` parameter is intended to be understood by humans. The caller of this constructor is required to ensure that this string has been localized for the current system culture. + + An exception that is thrown as a direct result of a previous exception should include a reference to the previous exception in the property. The property returns the same value that is passed into the constructor, or `null` if the property does not supply the inner exception value to the constructor. + ]]> diff --git a/xml/System.IO/Stream.xml b/xml/System.IO/Stream.xml index c9e8b41bb5b..c1693e50306 100644 --- a/xml/System.IO/Stream.xml +++ b/xml/System.IO/Stream.xml @@ -101,11 +101,11 @@ Streams involve three fundamental operations: -- You can read from streams. Reading is the transfer of data from a stream into a data structure, such as an array of bytes. +- You can read from streams. Reading is the transfer of data from a stream into a data structure, such as an array of bytes. -- You can write to streams. Writing is the transfer of data from a data structure into a stream. +- You can write to streams. Writing is the transfer of data from a data structure into a stream. -- Streams can support seeking. Seeking refers to querying and modifying the current position within a stream. Seek capability depends on the kind of backing store a stream has. For example, network streams have no unified concept of a current position, and therefore typically do not support seeking. +- Streams can support seeking. Seeking refers to querying and modifying the current position within a stream. Seek capability depends on the kind of backing store a stream has. For example, network streams have no unified concept of a current position, and therefore typically do not support seeking. Some of the more commonly used streams that inherit from are , and . diff --git a/xml/System.IO/TextReader.xml b/xml/System.IO/TextReader.xml index d144ac95b1d..aae1bdca9e3 100644 --- a/xml/System.IO/TextReader.xml +++ b/xml/System.IO/TextReader.xml @@ -443,13 +443,13 @@ ## Remarks Reading from the text reader is similar to reading from the end of a stream: -- The and methods return -1. +- The and methods return -1. -- The method returns zero. +- The method returns zero. -- The method returns `null`. +- The method returns `null`. -- The method returns an empty string. +- The method returns an empty string. ]]> diff --git a/xml/System.IO/TextWriter.xml b/xml/System.IO/TextWriter.xml index 354e1cfd309..58d33a6d102 100644 --- a/xml/System.IO/TextWriter.xml +++ b/xml/System.IO/TextWriter.xml @@ -2237,15 +2237,15 @@ This method is equivalent to `Write(stringBuilder.ToString())`, but it uses the ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. @@ -2366,15 +2366,15 @@ This method is equivalent to `Write(stringBuilder.ToString())`, but it uses the ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. @@ -2629,15 +2629,15 @@ This method is equivalent to `Write(stringBuilder.ToString())`, but it uses the ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. @@ -2754,15 +2754,15 @@ This method is equivalent to `Write(stringBuilder.ToString())`, but it uses the ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. @@ -4378,15 +4378,15 @@ For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/commo ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. @@ -4509,15 +4509,15 @@ For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/commo ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. @@ -4775,15 +4775,15 @@ For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/commo ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. @@ -4902,15 +4902,15 @@ For a list of common I/O tasks, see [Common I/O Tasks](/dotnet/standard/io/commo ## Remarks This method uses composite formatting to convert the value of an object to its string representation and to embed that representation in a string. .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). +- For more information about the composite formatting feature, see [Composite Formatting](/dotnet/standard/base-types/composite-formatting). -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). +- For more information about date and time format specifiers, see [Standard Date and Time Format Strings](/dotnet/standard/base-types/standard-date-and-time-format-strings) and [Custom Date and Time Format Strings](/dotnet/standard/base-types/custom-date-and-time-format-strings). -- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). +- For more information about enumeration format specifiers, see [Enumeration Format Strings](/dotnet/standard/base-types/enumeration-format-strings). -- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about formatting, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `format` parameter consists of zero or more runs of text intermixed with zero or more indexed placeholders, called format items, that correspond to an object in the parameter list of this method. The formatting process replaces each format item with the string representation of the value of the corresponding object. diff --git a/xml/System.IdentityModel.Selectors/AudienceUriMode.xml b/xml/System.IdentityModel.Selectors/AudienceUriMode.xml index 89da27fa945..90ee80cbcb5 100644 --- a/xml/System.IdentityModel.Selectors/AudienceUriMode.xml +++ b/xml/System.IdentityModel.Selectors/AudienceUriMode.xml @@ -16,17 +16,17 @@ Specifies whether the security token's should be validated. - property in a federated application that utilizes a security token service (STS) that issues security tokens. When the STS issues the security token, it can specify the URI of the Web services for which the security token is intended by adding a to the security token. That allows the for the recipient Web service to verify that the issued security token is intended for this Web service by specifying that this check should happen by doing the following: - -- Set the property to Always or BearerKeyOnly. - -- Specify the set of valid URIs, by adding the URIs to the collection. - - Optionally, override the method to specify the validation algorithm to use for the allowed URI. - + property in a federated application that utilizes a security token service (STS) that issues security tokens. When the STS issues the security token, it can specify the URI of the Web services for which the security token is intended by adding a to the security token. That allows the for the recipient Web service to verify that the issued security token is intended for this Web service by specifying that this check should happen by doing the following: + +- Set the property to Always or BearerKeyOnly. + +- Specify the set of valid URIs, by adding the URIs to the collection. + + Optionally, override the method to specify the validation algorithm to use for the allowed URI. + ]]> diff --git a/xml/System.IdentityModel.Selectors/CardSpaceException.xml b/xml/System.IdentityModel.Selectors/CardSpaceException.xml index 6e7011d31e0..643df580374 100644 --- a/xml/System.IdentityModel.Selectors/CardSpaceException.xml +++ b/xml/System.IdentityModel.Selectors/CardSpaceException.xml @@ -23,15 +23,15 @@ The exception that is thrown when one or more exceptions have occurred at the CardSpace service level. The cause of the error will be logged in the event log. - diff --git a/xml/System.IdentityModel.Selectors/SamlSecurityTokenAuthenticator.xml b/xml/System.IdentityModel.Selectors/SamlSecurityTokenAuthenticator.xml index b526ab63421..67e877aced5 100644 --- a/xml/System.IdentityModel.Selectors/SamlSecurityTokenAuthenticator.xml +++ b/xml/System.IdentityModel.Selectors/SamlSecurityTokenAuthenticator.xml @@ -17,11 +17,11 @@ Authenticates a security token. - class to authenticate security tokens. - + class to authenticate security tokens. + ]]> @@ -101,17 +101,17 @@ Gets the set of target URIs for which the security token can be targeted for to be considered valid by this instance. An of type that contains the target URIs for which the security token can be targeted for to be considered valid by this security token authenticator. - property in a federated application that utilizes a security token service (STS) that issues security tokens. When the STS issues the security token, it can specify the URI of the Web services for which the security token is intended by adding a to the security token. That allows the for the recipient Web service to verify that the issued security token is intended for this Web service by specifying that this check should happen by doing the following: - -- Set the property to or . - -- Specify the set of valid URIs, by adding the URIs to the collection. - -- Optionally, override the method to specify the validation algorithm to use for the allowed URI. - + property in a federated application that utilizes a security token service (STS) that issues security tokens. When the STS issues the security token, it can specify the URI of the Web services for which the security token is intended by adding a to the security token. That allows the for the recipient Web service to verify that the issued security token is intended for this Web service by specifying that this check should happen by doing the following: + +- Set the property to or . + +- Specify the set of valid URIs, by adding the URIs to the collection. + +- Optionally, override the method to specify the validation algorithm to use for the allowed URI. + ]]> @@ -136,20 +136,20 @@ Gets or sets an that specifies whether the security token's should be validated. An that specifies whether the security token's should be validated. - property in a federated application that utilizes a security token service (STS) that issues security tokens. When the STS issues the security token, it can specify the URI of the Web services for which the security token is intended by adding a to the security token. That allows the for the recipient Web service to verify that the issued security token is intended for this Web service by specifying that this check should happen by doing the following: - -- Set the property to or . - -- Specify the set of valid URIs, by adding the URIs to the collection. - + property in a federated application that utilizes a security token service (STS) that issues security tokens. When the STS issues the security token, it can specify the URI of the Web services for which the security token is intended by adding a to the security token. That allows the for the recipient Web service to verify that the issued security token is intended for this Web service by specifying that this check should happen by doing the following: + +- Set the property to or . + +- Specify the set of valid URIs, by adding the URIs to the collection. + > [!NOTE] -> When the property is set to , an incoming non-endorsing must contain a and the collection must contain a URI that matches one of the valid URIs specified in the collection. A non-endorsing or bearer token is a security token that is included in the message and not used to sign any part of the message. - -- Optionally, override the method to specify the validation algorithm to use for the allowed URI. - +> When the property is set to , an incoming non-endorsing must contain a and the collection must contain a URI that matches one of the valid URIs specified in the collection. A non-endorsing or bearer token is a security token that is included in the message and not used to sign any part of the message. + +- Optionally, override the method to specify the validation algorithm to use for the allowed URI. + ]]> @@ -179,11 +179,11 @@ when is a security token; otherwise, . - method does not authenticate the security token; that is performed by the method. - + method does not authenticate the security token; that is performed by the method. + ]]> @@ -282,11 +282,11 @@ Resolves the identity associated with the specified key identifier using the supporting security token authenticators provided when the instance was created and returns it as an . An that represents the identity of the specified key identifier. - security tokens are cached using their key identifier. - + security tokens are cached using their key identifier. + ]]> @@ -342,11 +342,11 @@ if the property of the parameter is in the collection; otherwise, . - method is called by the method when the property is set to or . - + method is called by the method when the property is set to or . + ]]> diff --git a/xml/System.IdentityModel.Selectors/SecurityTokenAuthenticator.xml b/xml/System.IdentityModel.Selectors/SecurityTokenAuthenticator.xml index a119b618259..905d963733d 100644 --- a/xml/System.IdentityModel.Selectors/SecurityTokenAuthenticator.xml +++ b/xml/System.IdentityModel.Selectors/SecurityTokenAuthenticator.xml @@ -254,9 +254,9 @@ When the method is overridden, follow these guidelines: -- When the security token passed into the `token` parameter cannot be validated, throw a exception. +- When the security token passed into the `token` parameter cannot be validated, throw a exception. -- When there are no authorization policies in effect for this application, return an empty of type . +- When there are no authorization policies in effect for this application, return an empty of type . When this method returns `null`, Windows Communication Foundation throws a exception. diff --git a/xml/System.IdentityModel.Selectors/UserNameSecurityTokenAuthenticator.xml b/xml/System.IdentityModel.Selectors/UserNameSecurityTokenAuthenticator.xml index c89aa4eccda..028053d45c2 100644 --- a/xml/System.IdentityModel.Selectors/UserNameSecurityTokenAuthenticator.xml +++ b/xml/System.IdentityModel.Selectors/UserNameSecurityTokenAuthenticator.xml @@ -17,26 +17,26 @@ Authenticates a security token. - class to authenticate security tokens based on a user name and password. - - Windows Communication Foundation ships with the following classes that provide support for authenticating security tokens. - -|Type|Description| -|----------|-----------------| -||Allows an application to provide a custom authentication scheme for user names and passwords. The authentication scheme is provided using a class deriving from the class.| -||Authenticates the user name and password as a Windows account.| - - Most custom authentication schemes can use the use the class and implement a class that derives from the class. However, if additional flexibility is needed, you can derive a class from the class and override the method. - - - -## Examples + class to authenticate security tokens based on a user name and password. + + Windows Communication Foundation ships with the following classes that provide support for authenticating security tokens. + +|Type|Description| +|----------|-----------------| +||Allows an application to provide a custom authentication scheme for user names and passwords. The authentication scheme is provided using a class deriving from the class.| +||Authenticates the user name and password as a Windows account.| + + Most custom authentication schemes can use the use the class and implement a class that derives from the class. However, if additional flexibility is needed, you can derive a class from the class and override the method. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/usernamesecuritytokenauthenticator/cs/mytokenauthenticator.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/usernamesecuritytokenauthenticator/vb/mytokenauthenticator.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/usernamesecuritytokenauthenticator/vb/mytokenauthenticator.vb" id="Snippet0"::: + ]]> @@ -84,11 +84,11 @@ when is a security token; otherwise, . - method does not authenticate the security token; that is performed by the method. - + method does not authenticate the security token; that is performed by the method. + ]]> @@ -117,11 +117,11 @@ Authenticates the specified security token and returns the set of authorization policies for the security token. A of type that contains the set of authorization policies in effect for this application. - method calls the method to authenticate the `token` parameter using its user name and password. - + method calls the method to authenticate the `token` parameter using its user name and password. + ]]> @@ -152,25 +152,25 @@ When overridden in a derived class, authenticates the specified user name and password and returns the set of authorization policies for security tokens. A of type that contains the set of authorization policies in effect for this application. - method to authenticate security tokens. - - When the method is overridden, follow these guidelines: - -- When the security token passed into the `token` parameter cannot be validated, throw the exception. - -- When there are no authorization policies in effect for this application, return an empty of type . - - When this method returns `null`, Windows Communication Foundation throws a exception. - - - -## Examples + method to authenticate security tokens. + + When the method is overridden, follow these guidelines: + +- When the security token passed into the `token` parameter cannot be validated, throw the exception. + +- When there are no authorization policies in effect for this application, return an empty of type . + + When this method returns `null`, Windows Communication Foundation throws a exception. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/usernamesecuritytokenauthenticator/cs/mytokenauthenticator.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/usernamesecuritytokenauthenticator/vb/mytokenauthenticator.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/usernamesecuritytokenauthenticator/vb/mytokenauthenticator.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.IdentityModel.Selectors/X509SecurityTokenAuthenticator.xml b/xml/System.IdentityModel.Selectors/X509SecurityTokenAuthenticator.xml index 993b2649cd1..79c3227c429 100644 --- a/xml/System.IdentityModel.Selectors/X509SecurityTokenAuthenticator.xml +++ b/xml/System.IdentityModel.Selectors/X509SecurityTokenAuthenticator.xml @@ -160,9 +160,9 @@ When the method is called to authenticate the token and `mapToWindows` is `true`, the X.509 certificate is mapped to a Windows account and claims are added to the with the Windows groups that the user belongs to. How the X.509 certificate is mapped to a Windows account depends upon the security token type: -- When the security token is of type , the X.509 certificate is mapped using the property. +- When the security token is of type , the X.509 certificate is mapped using the property. -- When the security token is of type `X509SecurityToken`, the X.509 certificate is mapped to a Windows account using its user principal name (UPN). +- When the security token is of type `X509SecurityToken`, the X.509 certificate is mapped to a Windows account using its user principal name (UPN). ]]> @@ -328,9 +328,9 @@ ## Remarks When the method is overridden, follow these guidelines: -- When the security token passed into the `token` parameter cannot be validated, throw the exception. +- When the security token passed into the `token` parameter cannot be validated, throw the exception. -- When there are no authorization policies in effect for this application, return an empty of type . +- When there are no authorization policies in effect for this application, return an empty of type . When this method returns `null`, Windows Communication Foundation throws a exception. diff --git a/xml/System.IdentityModel.Services/CookieHandlerElement.xml b/xml/System.IdentityModel.Services/CookieHandlerElement.xml index 1025243616a..a3ed861f502 100644 --- a/xml/System.IdentityModel.Services/CookieHandlerElement.xml +++ b/xml/System.IdentityModel.Services/CookieHandlerElement.xml @@ -16,19 +16,19 @@ Represents the configuration element. - ` element is a child element of the `` element; the property is set to an instance of the class. The `` element is used to configure the cookie handler used by the Session Authentication Module (SAM), which is represented by the class. - - A cookie handler can be configured in one of the following ways: - -- To configure a chunked cookie handler, set the property to either or and set the property with the configuration element for your chunked cookie handler. The property should not be set. - -- To configure a chunked cookie handler with the default chunk size, you can set the property as mentioned earlier, but leave both the and the properties unset. - -- To configure a custom cookie handler, set the property to and set the property with the configuration element that identifies the type of your custom cookie handler. This type must derive from the class. The property should not be set. - + ` element is a child element of the `` element; the property is set to an instance of the class. The `` element is used to configure the cookie handler used by the Session Authentication Module (SAM), which is represented by the class. + + A cookie handler can be configured in one of the following ways: + +- To configure a chunked cookie handler, set the property to either or and set the property with the configuration element for your chunked cookie handler. The property should not be set. + +- To configure a chunked cookie handler with the default chunk size, you can set the property as mentioned earlier, but leave both the and the properties unset. + +- To configure a custom cookie handler, set the property to and set the property with the configuration element that identifies the type of your custom cookie handler. This type must derive from the class. The property should not be set. + ]]> <cookieHandler> @@ -76,13 +76,13 @@ Gets or sets a chunked cookie handler. A that provides additional configuration for the chunked cookie handler. - ` child element of the `` element. It specifies a chunked cookie handler, an instance of the class, to use. If it is set, the property should be set to either or . If the property is set to either of these values but the property is not set, a chunked cookie handler with the default chunk size () is configured. - - Either the property or the property may be set, but not both. - + ` child element of the `` element. It specifies a chunked cookie handler, an instance of the class, to use. If it is set, the property should be set to either or . If the property is set to either of these values but the property is not set, a chunked cookie handler with the default chunk size () is configured. + + Either the property or the property may be set, but not both. + ]]> <chunkedCookieHandler> @@ -113,13 +113,13 @@ Gets or sets a custom cookie handler type. This property must be set when a custom cookie handler is being configured. A that defines the custom cookie handler type. - ` child element of the `` element. It specifies a custom cookie handler type to use. If this property is set, the property must be set to . The custom type specified by this property must be derived from the class. - - Either the property or the property may be set, but not both. - + ` child element of the `` element. It specifies a custom cookie handler type to use. If this property is set, the property must be set to . The custom type specified by this property must be derived from the class. + + Either the property or the property may be set, but not both. + ]]> <customCookieHandler> @@ -150,11 +150,11 @@ Gets or sets the domain value for cookies written by the handler. The domain value. The default is an empty string. - <cookieHandler> @@ -180,11 +180,11 @@ Gets a new cookie handler based on the configuration properties. The cookie handler. This will be an instance of or depending on the kind of handler that is configured by the properties of the current instance. - . - + . + ]]> A cookie handler cannot be created from the properties of the current instance. @@ -216,13 +216,13 @@ if the property should be set; otherwise, . The default is . - <cookieHandler> @@ -253,13 +253,13 @@ Gets or sets the cookie handler mode. A valid value that indicates the kind of cookie handler that is being configured. The default value is , which indicates a chunked cookie handler. - property is set), the mode should be set to either or . For a custom cookie handler (the property is set), the mode should be set to . - - Represents the `mode` attribute of the [<cookieHandler>](/dotnet/framework/configure-apps/file-schema/windows-identity-foundation/cookiehandler) element. - + property is set), the mode should be set to either or . For a custom cookie handler (the property is set), the mode should be set to . + + Represents the `mode` attribute of the [<cookieHandler>](/dotnet/framework/configure-apps/file-schema/windows-identity-foundation/cookiehandler) element. + ]]> <cookieHandler> @@ -290,11 +290,11 @@ Gets or sets the base name for any cookies written by the handler. The base name for the cookies. The default is "FedAuth". - <cookieHandler> @@ -325,13 +325,13 @@ Gets or sets the path value for cookies written by the handler. A string that contains the path. - property is used. - - Represents the `path` attribute of the [<cookieHandler>](/dotnet/framework/configure-apps/file-schema/windows-identity-foundation/cookiehandler) element. - + property is used. + + Represents the `path` attribute of the [<cookieHandler>](/dotnet/framework/configure-apps/file-schema/windows-identity-foundation/cookiehandler) element. + ]]> <cookieHandler> @@ -366,11 +366,11 @@ Gets or sets the lifetime of cookies issued by the handler. A that represents the cookie lifetime. The default is 0 days ("0.0:0:0"). The value must be a value between 0 ("0.0:0:0") and 365 ("365.0:0:0") days. - <cookieHandler> @@ -402,13 +402,13 @@ if the cookie should only be used over an SSL connection; otherwise, . The default is . - <cookieHandler> diff --git a/xml/System.IdentityModel.Services/SessionSecurityTokenCreatedEventArgs.xml b/xml/System.IdentityModel.Services/SessionSecurityTokenCreatedEventArgs.xml index e79f742bdf7..aa947dabf70 100644 --- a/xml/System.IdentityModel.Services/SessionSecurityTokenCreatedEventArgs.xml +++ b/xml/System.IdentityModel.Services/SessionSecurityTokenCreatedEventArgs.xml @@ -16,17 +16,17 @@ Provides data for the event and for the event. - event is raised from within the method after a session token () has been created. This happens, for example, if an event handler for the event modifies the token. You can use the to modify the session token before it is passed further along the pipeline and is used to authenticate the entity making the request (user). - -- In the WS-Federation authentication module (WSFAM), the event is raised from the request processing pipeline just after a session token has been created from the WS-Federation sign-in response message received from the STS and just before the SAM is called to set the thread principal and write the session cookie. - - You can use the property to modify or replace the token. You can set the to specify whether the session cookie should be written (or re-written). - + event is raised from within the method after a session token () has been created. This happens, for example, if an event handler for the event modifies the token. You can use the to modify the session token before it is passed further along the pipeline and is used to authenticate the entity making the request (user). + +- In the WS-Federation authentication module (WSFAM), the event is raised from the request processing pipeline just after a session token has been created from the WS-Federation sign-in response message received from the STS and just before the SAM is called to set the thread principal and write the session cookie. + + You can use the property to modify or replace the token. You can set the to specify whether the session cookie should be written (or re-written). + ]]> @@ -52,11 +52,11 @@ The session security token that was created. Initializes a new instance of the class by using the specified session security token. - property is set to the token specified by the `sessionToken` parameter. The property is initialized to `false`. - + property is set to the token specified by the `sessionToken` parameter. The property is initialized to `false`. + ]]> diff --git a/xml/System.IdentityModel.Services/WSFederationAuthenticationModule.xml b/xml/System.IdentityModel.Services/WSFederationAuthenticationModule.xml index 4f1d0959429..80969a57f3f 100644 --- a/xml/System.IdentityModel.Services/WSFederationAuthenticationModule.xml +++ b/xml/System.IdentityModel.Services/WSFederationAuthenticationModule.xml @@ -27,23 +27,23 @@ The WSFAM provides: -- The ability for an ASP.NET application to outsource authentication to a security token service (STS) by using the WS-Federation protocol. Identity can be federated across one or more identity realms and involve multiple STSs. +- The ability for an ASP.NET application to outsource authentication to a security token service (STS) by using the WS-Federation protocol. Identity can be federated across one or more identity realms and involve multiple STSs. -- Claims-based identity for ASP.NET applications. During authentication, the WSFAM builds a principal from the claims in the security token sent by the STS and sets this claims principal as the thread principal. You can then use this principal to make further authorization, presentation, and logic decisions about the user it represents in your code. +- Claims-based identity for ASP.NET applications. During authentication, the WSFAM builds a principal from the claims in the security token sent by the STS and sets this claims principal as the thread principal. You can then use this principal to make further authorization, presentation, and logic decisions about the user it represents in your code. The WSFAM exposes several properties that provide default message parameters to use on WS-Federation sign-in and sign-out requests. These properties are typically initialized from the [<wsFederation>](/dotnet/framework/configure-apps/file-schema/windows-identity-foundation/wsfederation) element in a configuration file. The most important of these properties are: -- The property, which specifies the address of the security token service (STS) to which to send WS-Federation sign-in and sign-out requests. +- The property, which specifies the address of the security token service (STS) to which to send WS-Federation sign-in and sign-out requests. -- The property, which specifies the wtrealm parameter to use in WS-Federation sign-in requests. The wtrealm parameter identifies the security realm of the relying party (RP) application to the STS. +- The property, which specifies the wtrealm parameter to use in WS-Federation sign-in requests. The wtrealm parameter identifies the security realm of the relying party (RP) application to the STS. Sign-in message parameters can also be changed on a per-request basis by providing an event-handler delegate for the event. Two properties control the behavior of the module. Both of these properties are also typically initialized from the `` element in configuration. -- The property specifies whether the module should perform passive redirects to the STS for authentication. +- The property specifies whether the module should perform passive redirects to the STS for authentication. -- The property specifies whether sessions should be persistent. If this property is set true, the SAM is used to write a session cookie to the client. On subsequent requests from the client, the SAM provides authentication by using the token persisted in the session cookie. +- The property specifies whether sessions should be persistent. If this property is set true, the SAM is used to write a session cookie to the client. On subsequent requests from the client, the SAM provides authentication by using the token persisted in the session cookie. The WSFAM raises several events during sign-in and sign-out, which allow ASP.NET developers to change the default behavior of the module and control the details of how authentication and claims processing take place. @@ -284,9 +284,9 @@ The default implementation performs the following: -- If the incoming request is a form POST, it calls the method to determine whether the form POST contains a sign-in response. +- If the incoming request is a form POST, it calls the method to determine whether the form POST contains a sign-in response. -- If the incoming request is not a form POST, and the request contains a WS-Federation sign-out clean-up request (the wa parameter is "wsignoutcleanup1.0"), sign-out clean-up is performed. In this case, the method is invoked (with the parameter set to `true` to indicate a sign-out clean-up) to sign out of the session. This also causes the sign-out events to be raised. +- If the incoming request is not a form POST, and the request contains a WS-Federation sign-out clean-up request (the wa parameter is "wsignoutcleanup1.0"), sign-out clean-up is performed. In this case, the method is invoked (with the parameter set to `true` to indicate a sign-out clean-up) to sign out of the session. This also causes the sign-out events to be raised. Next, if the sign-out clean-up request contains a wreply parameter, the client is redirected to the URL returned by the method; otherwise, an image of a green check mark is returned to the STS. The receipt of this image can be used by the STS as a confirmation that the sign-out clean-up request was received and successfully processed by the RP. @@ -329,19 +329,19 @@ ## Remarks Creates a WS-Federation sign-in request that is represented by a object. The properties of the new object are set as follows: -- The property (the wctx parameter) is set to a value created by using the method parameters. +- The property (the wctx parameter) is set to a value created by using the method parameters. -- The property (the wct parameter) is set to the current time. +- The property (the wct parameter) is set to the current time. -- All other properties are set by using the equivalent properties of the current instance. +- All other properties are set by using the equivalent properties of the current instance. The parameters passed to the method are used to create the wctx message parameter. This is a string with the following format: `ru=returnUrl&cx=SignInContext&rm=rememberMeSet&id=uniqueId`. -- The `ru` value is set to the value of the `returnUrl` parameter passed in to the method and it specifies the URL that the module should direct the browser to following successful authentication. This is the only value stored in the wctx string that is used by the WSFAM. The module calls the method to extract this value from the wctx parameter when processing a WS-Federation sign-in response. It should not be confused with the wreply message parameter, which is specified by the property and which provides the address at the RP to which the security token service (STS) should direct its response. +- The `ru` value is set to the value of the `returnUrl` parameter passed in to the method and it specifies the URL that the module should direct the browser to following successful authentication. This is the only value stored in the wctx string that is used by the WSFAM. The module calls the method to extract this value from the wctx parameter when processing a WS-Federation sign-in response. It should not be confused with the wreply message parameter, which is specified by the property and which provides the address at the RP to which the security token service (STS) should direct its response. -- The `cx` parameter is set to the value of the property. This property is exposed to enable you to set any application-defined context that should be stored in the wctx string; however, WSFAM does not expose a method to extract this value in the response. If the value is needed by your application, you must provide the code to parse the wctx string and read this value when processing the response. You might accomplish this by overriding the method. +- The `cx` parameter is set to the value of the property. This property is exposed to enable you to set any application-defined context that should be stored in the wctx string; however, WSFAM does not expose a method to extract this value in the response. If the value is needed by your application, you must provide the code to parse the wctx string and read this value when processing the response. You might accomplish this by overriding the method. -- Neither the `rm` value, which is set to the value of the `rememberMeSet` parameter, nor the `id` parameter, which is set to the value of the `uniqueId` parameter are used by WSFAM. These can be set to any value. +- Neither the `rm` value, which is set to the value of the `rememberMeSet` parameter, nor the `id` parameter, which is set to the value of the `uniqueId` parameter are used by WSFAM. These can be set to any value. The method is called from the method. diff --git a/xml/System.IdentityModel.Tokens/LocalIdKeyIdentifierClause.xml b/xml/System.IdentityModel.Tokens/LocalIdKeyIdentifierClause.xml index 0b6b93c31cd..59878f7bf35 100644 --- a/xml/System.IdentityModel.Tokens/LocalIdKeyIdentifierClause.xml +++ b/xml/System.IdentityModel.Tokens/LocalIdKeyIdentifierClause.xml @@ -27,13 +27,13 @@ Represents a key identifier clause that identifies a security tokens specified in the security header of the SOAP message. - does not need to be used, other than when a custom security token service is created. When a security token service returns a security token, the issued security token contains references to attached and unattached security tokens Attached references refer to security tokens that are contained within the security header of the SOAP message and unattached references are security tokens that are not included within the security header of the SOAP message. These references typically affirm the authenticity of the issued security token. - - The key identifier is placed within an `` element. - + does not need to be used, other than when a custom security token service is created. When a security token service returns a security token, the issued security token contains references to attached and unattached security tokens Attached references refer to security tokens that are contained within the security header of the SOAP message and unattached references are security tokens that are not included within the security header of the SOAP message. These references typically affirm the authenticity of the issued security token. + + The key identifier is placed within an `` element. + ]]> @@ -151,11 +151,11 @@ A that is the type of security token that is referred to by the parameter. Sets the value of the property. Initializes a new instance of the class using the specified identifier, nonce, derived key length an owner security token type. - @@ -236,17 +236,17 @@ if is of type and the values of the and properties match the current instance; otherwise, . See the remarks for more details. - property occurs when one of the following happens: - -- The value of the property for the instance represented by the `keyIdentifierClause` parameter is `null`. - -- The value of the property for the current instance is `null`. - -- The property for the two instances are identical. - + property occurs when one of the following happens: + +- The value of the property for the instance represented by the `keyIdentifierClause` parameter is `null`. + +- The value of the property for the current instance is `null`. + +- The property for the two instances are identical. + ]]> @@ -286,17 +286,17 @@ if the and parameters match the values of the and properties; otherwise, . - property occurs when one of the following happens: - -- The value of the property for the current instance is `null`. - -- The value of the `ownerType` parameter is `null`. - -- The value of the property is identical to the `ownerType` parameter for the current method. - + property occurs when one of the following happens: + +- The value of the property for the current instance is `null`. + +- The value of the `ownerType` parameter is `null`. + +- The value of the property is identical to the `ownerType` parameter for the current method. + ]]> @@ -360,11 +360,11 @@ Returns a string that represents the current object. A that represents the current object. - method returns a string that contains the values of the and properties. - + method returns a string that contains the values of the and properties. + ]]> diff --git a/xml/System.IdentityModel.Tokens/SamlAssertionKeyIdentifierClause.xml b/xml/System.IdentityModel.Tokens/SamlAssertionKeyIdentifierClause.xml index 294e2d3d1b3..48675acf9f3 100644 --- a/xml/System.IdentityModel.Tokens/SamlAssertionKeyIdentifierClause.xml +++ b/xml/System.IdentityModel.Tokens/SamlAssertionKeyIdentifierClause.xml @@ -177,9 +177,9 @@ ## Remarks This overload returns a value of `true` when either of the following is `true`: -- The property of the `keyIdentifierClause` parameter has the same value as the current instance's property. +- The property of the `keyIdentifierClause` parameter has the same value as the current instance's property. -- The `keyIdentifierClause` parameter and this instance are the same instance. +- The `keyIdentifierClause` parameter and this instance are the same instance. ]]> diff --git a/xml/System.IdentityModel.Tokens/SecurityToken.xml b/xml/System.IdentityModel.Tokens/SecurityToken.xml index f33f2ddde7c..a11d7031a74 100644 --- a/xml/System.IdentityModel.Tokens/SecurityToken.xml +++ b/xml/System.IdentityModel.Tokens/SecurityToken.xml @@ -71,11 +71,11 @@ Broadly speaking security tokens fall into three major categories: -- Tokens that carry or reference cryptographic key material. For example the and types are often used for this purpose. +- Tokens that carry or reference cryptographic key material. For example the and types are often used for this purpose. -- Tokens that represent credentials for users that have already been authenticated. For example, the , , and, in the case of a user authenticated using a certificate, the types. +- Tokens that represent credentials for users that have already been authenticated. For example, the , , and, in the case of a user authenticated using a certificate, the types. -- Tokens that are issued by a security token service (STS) in response to a security token request using either the WS-Trust or WS-Federation protocol. These are typically returned in a `wst:RequestSecurityTokenResponse` XML fragment. The and types are most often used to represent these tokens. +- Tokens that are issued by a security token service (STS) in response to a security token request using either the WS-Trust or WS-Federation protocol. These are typically returned in a `wst:RequestSecurityTokenResponse` XML fragment. The and types are most often used to represent these tokens. A special token type, the , contains information necessary to recreate a principal when using sessions in active or passive scenarios. diff --git a/xml/System.IdentityModel.Tokens/SecurityTokenHandler.xml b/xml/System.IdentityModel.Tokens/SecurityTokenHandler.xml index 6fe8f31f637..7d94928f3c4 100644 --- a/xml/System.IdentityModel.Tokens/SecurityTokenHandler.xml +++ b/xml/System.IdentityModel.Tokens/SecurityTokenHandler.xml @@ -25,15 +25,15 @@ ## Remarks The class is the base class from which all security token handlers derive. A security token handler is responsible for: -- Validating security tokens () of the type it is designed to process and packaging the claims contained in the token into a object. +- Validating security tokens () of the type it is designed to process and packaging the claims contained in the token into a object. -- Serializing and deserializing security tokens of the type it is designed to process. +- Serializing and deserializing security tokens of the type it is designed to process. -- Serializing and deserializing key identifier clauses () that refer to tokens of the type it is designed to process to and from `` elements. +- Serializing and deserializing key identifier clauses () that refer to tokens of the type it is designed to process to and from `` elements. -- Creating security tokens from a object passed by implementations of the class. +- Creating security tokens from a object passed by implementations of the class. -- Creating key identifier clauses from a security token for implementations of the class. +- Creating key identifier clauses from a security token for implementations of the class. Windows Identity Foundation (WIF) ships the following security token handlers out of the box: @@ -69,15 +69,15 @@ Validation, serialization, and deserialization functionality is exposed through properties or methods that indicate whether the handler can perform a specific function combined with the method or methods that implement the functionality. The following list pairs the properties or methods that indicate functionality with the methods that implement that functionality: -- The property and the method: Validates a token and packages the claims contained in the token into a . +- The property and the method: Validates a token and packages the claims contained in the token into a . -- The property and the methods: Token serialization. +- The property and the methods: Token serialization. -- The methods and the methods: Token deserialization. +- The methods and the methods: Token deserialization. -- The method and the method: Deserializing key identifier clauses. +- The method and the method: Deserializing key identifier clauses. -- The method and the method: Serializing key identifier clauses. +- The method and the method: Serializing key identifier clauses. The and the methods are called from the pipeline in implementations of the class. diff --git a/xml/System.IdentityModel.Tokens/SessionSecurityTokenHandler.xml b/xml/System.IdentityModel.Tokens/SessionSecurityTokenHandler.xml index 45465721997..ab2800a1ffe 100644 --- a/xml/System.IdentityModel.Tokens/SessionSecurityTokenHandler.xml +++ b/xml/System.IdentityModel.Tokens/SessionSecurityTokenHandler.xml @@ -30,13 +30,13 @@ The property gets the list of transforms that are applied to the session token in the method. All transforms derive from the class. In the default case the and the are applied. The uses the Data Protection API (DPAPI) to protect the cookie material. DPAPI uses a key that is specific to the computer on which it is running in its protection algorithms. For this reason, the default session token handler is not usable in Web farm scenarios because, in such scenarios, tokens written on one computer may need to be read on another computer. You can use many strategies to circumvent this issue. For example, you can: -- Replace the default with the . The enables you to specify signing and encryption keys under the ASP.NET `` element in the configuration file. +- Replace the default with the . The enables you to specify signing and encryption keys under the ASP.NET `` element in the configuration file. -- Provide a handler for the event in the global.asax.cs file and replace the default session token handler with an instance of that has a list of transforms that includes the and the . You can create the new instance by invoking one of the constructors that takes a list of transforms. +- Provide a handler for the event in the global.asax.cs file and replace the default session token handler with an instance of that has a list of transforms that includes the and the . You can create the new instance by invoking one of the constructors that takes a list of transforms. -- Derive a custom transform from the base class and use the method above to include it in the list of transforms to be applied. +- Derive a custom transform from the base class and use the method above to include it in the list of transforms to be applied. -- Derive a custom token handler from and implement your own mechanism. +- Derive a custom token handler from and implement your own mechanism. For more information about using sessions in Web farm scenarios, see [WIF and Web Farms](/dotnet/framework/security/wif-and-web-farms). diff --git a/xml/System.IdentityModel.Tokens/X509AsymmetricSecurityKey.xml b/xml/System.IdentityModel.Tokens/X509AsymmetricSecurityKey.xml index 7ec26882d13..f8e62e74f5b 100644 --- a/xml/System.IdentityModel.Tokens/X509AsymmetricSecurityKey.xml +++ b/xml/System.IdentityModel.Tokens/X509AsymmetricSecurityKey.xml @@ -486,9 +486,9 @@ ## Remarks The method returns `true` when one of the following is true: -- The `algorithm` parameter is and the public key for the X.509 certificate specified in the constructor is of type . +- The `algorithm` parameter is and the public key for the X.509 certificate specified in the constructor is of type . -- The `algorithm` parameter is , , or and the public key for the X.509 certificate specified in the constructor is of type . +- The `algorithm` parameter is , , or and the public key for the X.509 certificate specified in the constructor is of type . Due to collision problems with SHA-1, Microsoft recommends a security model based on SHA-256 or better. diff --git a/xml/System.IdentityModel.Tokens/X509SecurityTokenHandler.xml b/xml/System.IdentityModel.Tokens/X509SecurityTokenHandler.xml index 32751d55422..1c50b2cd812 100644 --- a/xml/System.IdentityModel.Tokens/X509SecurityTokenHandler.xml +++ b/xml/System.IdentityModel.Tokens/X509SecurityTokenHandler.xml @@ -43,11 +43,11 @@ Initializes a new instance of the class with default values. - property is set to `false` and the validator is used as the default certificate validator. - + property is set to `false` and the validator is used as the default certificate validator. + ]]> @@ -72,11 +72,11 @@ if the certificate should be mapped to a Windows account; otherwise, . Sets the property. Initializes a new instance of the class by using a value that indicates whether the certificate should be mapped to a Windows account. - validator is used as the default certificate validator. - + validator is used as the default certificate validator. + ]]> @@ -100,11 +100,11 @@ The certificate validator to use. Sets the property. Initializes a new instance of the class by using the specified certificate validator. - property is set to `false`. - + property is set to `false`. + ]]> @@ -235,17 +235,17 @@ if the is supported and if the property is set to ; otherwise, . - - -2. - -3. - + + +2. + +3. + ]]> @@ -470,10 +470,10 @@ is not assignable from . is . - The property is . - - -or- - + The property is . + + -or- + There is no issuer name registry () configured. (The property of the referenced by the property is .) The current was unable to validate the certificate in the token. The current returned when trying to resolve the issuer of the certificate in the token. @@ -504,10 +504,10 @@ Serializes the specified key identifier clause to the XML writer. To be added. - is . - - -or- - + is . + + -or- + is . The property is . @@ -537,10 +537,10 @@ Serializes the specified X.509 security token to the specified XML writer. To be added. - is . - - -or- - + is . + + -or- + is . is not assignable from . @@ -566,17 +566,17 @@ if XmlDsig-defined clause types are preferred; otherwise, . - types are: - -- X509IssuerSerial - -- X509SKI - -- X509Certificate - + types are: + +- X509IssuerSerial + +- X509SKI + +- X509Certificate + ]]> diff --git a/xml/System.IdentityModel/SecurityTokenService.xml b/xml/System.IdentityModel/SecurityTokenService.xml index 5e30640afdd..179dfb3e61f 100644 --- a/xml/System.IdentityModel/SecurityTokenService.xml +++ b/xml/System.IdentityModel/SecurityTokenService.xml @@ -26,11 +26,11 @@ The following list provides a brief overview of the methods of primary importance to the developer for use in a test or development environment. -- The method. This method returns a object that contains information about the RP. This object is used in the rest of the token issuance pipeline and includes information about the signing and encrypting credentials to use in the response, as well as the `AppliesTo` and `ReplyTo` (if required) addresses. You must override this method. +- The method. This method returns a object that contains information about the RP. This object is used in the rest of the token issuance pipeline and includes information about the signing and encrypting credentials to use in the response, as well as the `AppliesTo` and `ReplyTo` (if required) addresses. You must override this method. -- The method. This method returns an object that contains the claims to return to the RP. You must override this method. +- The method. This method returns an object that contains the claims to return to the RP. You must override this method. -- The method. This method implements the token request pipeline, which processes an incoming security token request (RST) and returns a response (RSTR) to the caller that contains a token that can be used to authenticate with an RP. Many of the other methods defined in the class are called from this method, including the and methods. You do not have to override this method, but an understanding of the token request pipeline it implements may be helpful. +- The method. This method implements the token request pipeline, which processes an incoming security token request (RST) and returns a response (RSTR) to the caller that contains a token that can be used to authenticate with an RP. Many of the other methods defined in the class are called from this method, including the and methods. You do not have to override this method, but an understanding of the token request pipeline it implements may be helpful. An STS is configured through the class. @@ -818,16 +818,16 @@ ## Remarks The method is called from the token issuance pipeline after the method and should return a object configured for the incoming request. (The token issuance pipeline is implemented in the method.) The object encapsulates information about the RP associated with the security token request (RST). This includes information about the encrypting and signing credentials to be used with the RP and whether or not to encrypt any issued tokens and/or symmetric keys in the response. Some typical tasks performed in the method are: -- Determine whether the RP for which the token is intended is a recognized RP. How this is accomplished depends on your implementation. If the intended RP is not a valid RP for this STS, then the method should throw an . +- Determine whether the RP for which the token is intended is a recognized RP. How this is accomplished depends on your implementation. If the intended RP is not a valid RP for this STS, then the method should throw an . -- Determine the signing credentials to be used in the response (RSTR) and set the property accordingly. +- Determine the signing credentials to be used in the response (RSTR) and set the property accordingly. -- Determine whether the response and/or any included symmetrical keys should be encrypted and the credentials to be used for encryption. Set the , , and properties accordingly. +- Determine whether the response and/or any included symmetrical keys should be encrypted and the credentials to be used for encryption. Set the , , and properties accordingly. > [!IMPORTANT] > By default, the and properties are set `true` to prevent the STS from issuing tokens that are not secure. It is recommended that these properties never be set to `false` in a production environment. -- Determine the address to which the response should be returned. Set either the or property accordingly. +- Determine the address to which the response should be returned. Set either the or property accordingly. diff --git a/xml/System.Linq.Expressions/Expression.xml b/xml/System.Linq.Expressions/Expression.xml index e4e63951b46..004f61368b8 100644 --- a/xml/System.Linq.Expressions/Expression.xml +++ b/xml/System.Linq.Expressions/Expression.xml @@ -855,16 +855,16 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the addition operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the addition operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -872,9 +872,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined addition operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined addition operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined addition operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined addition operator. ]]> @@ -950,18 +950,18 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The implementing method for the operation is chosen based on the following rules: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the addition operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the addition operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -969,9 +969,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined addition operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined addition operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined addition operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined addition operator. ]]> @@ -1058,16 +1058,16 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -1075,9 +1075,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `AND` operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `AND` operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `AND` operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `AND` operator. @@ -1161,18 +1161,18 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The implementing method for the operation is chosen based on the following rules: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -1180,9 +1180,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `AND` operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `AND` operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `AND` operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `AND` operator. ]]> @@ -1269,19 +1269,19 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. > [!NOTE] > The conditional `AND` operator cannot be overloaded in C# or Visual Basic. However, the conditional `AND` operator is evaluated by using the bitwise `AND` operator. Thus, a user-defined overload of the bitwise `AND` operator can be the implementing method for this node type. -- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable, and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -1291,9 +1291,9 @@ The following code example shows how to create an expression that adds two integ - `left`.Type and `right`.Type are the same Boolean type. -- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `AND` operator. +- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `AND` operator. -- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `AND` operator. +- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `AND` operator. @@ -1381,21 +1381,21 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The implementing method for the operation is chosen based on the following rules: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `AND` operator, the that represents that method is the implementing method. > [!NOTE] > The conditional `AND` operator cannot be overloaded in C# or Visual Basic. However, the conditional `AND` operator is evaluated by using the bitwise `AND` operator. Thus, a user-defined overload of the bitwise `AND` operator can be the implementing method for this node type. -- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable, and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -1405,9 +1405,9 @@ The following code example shows how to create an expression that adds two integ - `left`.Type and `right`.Type are the same Boolean type. -- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `AND` operator. +- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `AND` operator. -- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `AND` operator. +- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `AND` operator. ]]> @@ -4750,11 +4750,11 @@ The following code example shows how to create an expression that adds two integ #### Result Type The following rules determine the result type: -- If `left`.Type represents a nullable type and `right`.Type is implicitly convertible to the corresponding non-nullable type, the result type is the non-nullable equivalent of `left`.Type. +- If `left`.Type represents a nullable type and `right`.Type is implicitly convertible to the corresponding non-nullable type, the result type is the non-nullable equivalent of `left`.Type. -- Otherwise, if `right`.Type is implicitly convertible to `left`.Type, the result type is `left`.Type. +- Otherwise, if `right`.Type is implicitly convertible to `left`.Type, the result type is `left`.Type. -- Otherwise, if the non-nullable equivalent of `left`.Type is implicitly convertible to `right`.Type, the result type is `right`.Type. +- Otherwise, if the non-nullable equivalent of `left`.Type is implicitly convertible to `right`.Type, the result type is `right`.Type. ]]> @@ -4832,11 +4832,11 @@ The following code example shows how to create an expression that adds two integ The following rules determine the result type: -- If `left`.Type represents a nullable type and `right`.Type is implicitly convertible to the corresponding non-nullable type, the result type is the non-nullable equivalent of `left`.Type. +- If `left`.Type represents a nullable type and `right`.Type is implicitly convertible to the corresponding non-nullable type, the result type is the non-nullable equivalent of `left`.Type. -- Otherwise, if `right`.Type is implicitly convertible to `left`.Type, the result type is `left`.Type. +- Otherwise, if `right`.Type is implicitly convertible to `left`.Type, the result type is `left`.Type. -- Otherwise, if the non-nullable equivalent of `left`.Type is implicitly convertible to `right`.Type, the result type is `right`.Type. +- Otherwise, if the non-nullable equivalent of `left`.Type is implicitly convertible to `right`.Type, the result type is `right`.Type. ]]> @@ -5361,9 +5361,9 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. +- If either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. -- Otherwise: +- Otherwise: - If both `expression`.Type and `type` represent numeric or Boolean types, or nullable or non-nullable enumeration types, the implementing method is `null`. @@ -5372,15 +5372,15 @@ The following code example shows how to create an expression that adds two integ #### Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. +- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. -- If one or both of `expression`.Type or `type` is a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. +- If one or both of `expression`.Type or `type` is a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. If the implementing method is `null`: -- If both `expression`.Type and `type` are non-nullable, the node is not lifted. +- If both `expression`.Type and `type` are non-nullable, the node is not lifted. -- Otherwise the node is lifted. +- Otherwise the node is lifted. @@ -5462,11 +5462,11 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If method is not `null`, it is the implementing method. It must represent a non-void, `static` (`Shared` in Visual Basic) method that takes one argument. +- If method is not `null`, it is the implementing method. It must represent a non-void, `static` (`Shared` in Visual Basic) method that takes one argument. -- Otherwise, if either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. +- Otherwise, if either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. -- Otherwise: +- Otherwise: - If both `expression`.Type and `type` represent numeric or Boolean types, or nullable or non-nullable enumeration types, the implementing method is `null`. @@ -5475,15 +5475,15 @@ The following code example shows how to create an expression that adds two integ #### Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. +- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. -- If either or both of `expression`.Type or `type` are a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. +- If either or both of `expression`.Type or `type` are a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. If the implementing method is `null`: -- If both `expression`.Type and `type` are non-nullable, the node is not lifted. +- If both `expression`.Type and `type` are non-nullable, the node is not lifted. -- Otherwise the node is lifted. +- Otherwise the node is lifted. ]]> @@ -5580,9 +5580,9 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. +- If either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. -- Otherwise: +- Otherwise: - If both `expression`.Type and `type` represent numeric or Boolean types, or nullable or non-nullable enumeration types, the implementing method is `null`. @@ -5591,15 +5591,15 @@ The following code example shows how to create an expression that adds two integ #### Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. +- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. -- If either or both of `expression`.Type or `type` are a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. +- If either or both of `expression`.Type or `type` are a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. If the implementing method is `null`: -- If both `expression`.Type and `type` are non-nullable, the node is not lifted. +- If both `expression`.Type and `type` are non-nullable, the node is not lifted. -- Otherwise the node is lifted. +- Otherwise the node is lifted. ]]> @@ -5673,11 +5673,11 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If method is not `null`, it is the implementing method. It must represent a non-void, `static` (`Shared` in Visual Basic) method that takes one argument. +- If method is not `null`, it is the implementing method. It must represent a non-void, `static` (`Shared` in Visual Basic) method that takes one argument. -- Otherwise, if either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. +- Otherwise, if either `expression`.Type or `type` is a user-defined type that defines an implicit or explicit conversion operator, the that represents that operator is the implementing method. -- Otherwise: +- Otherwise: - If both `expression`.Type and `type` represent numeric or Boolean types, or nullable or non-nullable enumeration types, the implementing method is `null`. @@ -5686,15 +5686,15 @@ The following code example shows how to create an expression that adds two integ #### Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. +- If `expression`.Type is assignable to the argument type of the implementing method and the return type of the implementing method is assignable to `type`, the node is not lifted. -- If either or both of `expression`.Type or `type` are a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. +- If either or both of `expression`.Type or `type` are a nullable value type and the corresponding non-nullable value types are equal to the argument type and the return type of the implementing method respectively, the node is lifted. If the implementing method is `null`: -- If both `expression`.Type and `type` are non-nullable, the node is not lifted. +- If both `expression`.Type and `type` are non-nullable, the node is not lifted. -- Otherwise the node is lifted. +- Otherwise the node is lifted. ]]> @@ -6045,16 +6045,16 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the division operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the division operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -6062,9 +6062,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined division operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined division operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined division operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined division operator. @@ -6148,18 +6148,18 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the division operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the division operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -6167,9 +6167,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined division operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined division operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined division operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined division operator. ]]> @@ -7087,16 +7087,16 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the equality operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the equality operator, the that represents that method is the implementing method. -- Otherwise, the implementing method is `null`. +- Otherwise, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is : +- If the following two conditions are satisfied, the node is lifted and the type of the node is : - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -7104,9 +7104,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . @@ -7191,18 +7191,18 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the equality operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the equality operator, the that represents that method is the implementing method. -- Otherwise, the implementing method is `null`. +- Otherwise, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: +- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -7210,9 +7210,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. ]]> @@ -7299,16 +7299,16 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the `XOR` operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the `XOR` operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -7316,9 +7316,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined `XOR` operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined `XOR` operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined `XOR` operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined `XOR` operator. @@ -7402,18 +7402,18 @@ The following code example shows how to create an expression that adds two integ #### Implementing Method The following rules determine the chosen implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the `XOR` operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the `XOR` operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -7421,9 +7421,9 @@ The following code example shows how to create an expression that adds two integ If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined `XOR` operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined `XOR` operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined `XOR` operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined `XOR` operator. ]]> @@ -8397,16 +8397,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the "greater than" operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the "greater than" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is : +- If the following two conditions are satisfied, the node is lifted and the type of the node is : - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -8414,9 +8414,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . @@ -8503,18 +8503,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation : -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "greater than" operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "greater than" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: +- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -8522,9 +8522,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. ]]> @@ -8611,16 +8611,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the "greater than or equal" operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the "greater than or equal" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is : +- If the following two conditions are satisfied, the node is lifted and the type of the node is : - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -8628,9 +8628,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . @@ -8717,18 +8717,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "greater than or equal" operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "greater than or equal" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: +- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -8736,9 +8736,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. ]]> @@ -11304,16 +11304,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the left-shift operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the left-shift operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. +- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -11321,9 +11321,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined left-shift operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined left-shift operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined left-shift operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined left-shift operator. ]]> @@ -11399,18 +11399,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the left-shift operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the left-shift operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. +- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -11418,9 +11418,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined left-shift operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined left-shift operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined left-shift operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined left-shift operator. ]]> @@ -11704,16 +11704,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The implementing method for the operation is chosen based on the following rules: -- If the property of either `left` or `right` represents a user-defined type that overloads the "less than" operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the "less than" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is : +- If the following two conditions are satisfied, the node is lifted and the type of the node is : - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -11721,9 +11721,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . @@ -11810,18 +11810,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "less than" operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "less than" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: +- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -11829,9 +11829,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. ]]> @@ -11918,16 +11918,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the "less than or equal" operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the "less than or equal" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is : +- If the following two conditions are satisfied, the node is lifted and the type of the node is : - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -11935,9 +11935,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . @@ -12024,18 +12024,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "less than or equal" operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the "less than or equal" operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: +- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -12043,9 +12043,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. ]]> @@ -14716,16 +14716,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the modulus operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the modulus operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -14733,9 +14733,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined modulus operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined modulus operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined modulus operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined modulus operator. ]]> @@ -14811,18 +14811,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The implementing method for the operation is chosen based on the following rules: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the modulus operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the modulus operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -14830,9 +14830,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined modulus operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined modulus operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined modulus operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined modulus operator. ]]> @@ -15116,16 +15116,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -15133,9 +15133,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. @@ -15219,18 +15219,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -15238,9 +15238,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. ]]> @@ -15721,16 +15721,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -15738,9 +15738,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. ]]> @@ -15816,18 +15816,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the multiplication operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -15835,9 +15835,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined multiplication operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined multiplication operator. ]]> @@ -15920,16 +15920,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable value type is equal to the argument type of the implementing method. @@ -16015,18 +16015,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. -- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable value type is equal to the argument type of the implementing method. @@ -16119,16 +16119,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable value type is equal to the argument type of the implementing method. @@ -16206,18 +16206,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. -- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary minus operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable value type is equal to the argument type of the implementing method. @@ -17248,16 +17248,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `expression`.Type is a user-defined type that defines the unary not operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary not operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric or Boolean type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric or Boolean type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable type is equal to the argument type of the implementing method. @@ -17343,18 +17343,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. -- If `expression`.Type is a user-defined type that defines the unary not operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary not operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable value type is equal to the argument type of the implementing method. @@ -17451,16 +17451,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the inequality operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the inequality operator, the that represents that method is the implementing method. -- Otherwise, the implementing method is `null`. +- Otherwise, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is : +- If the following two conditions are satisfied, the node is lifted and the type of the node is : - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -17468,9 +17468,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is . ]]> @@ -17549,18 +17549,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the inequality operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the inequality operator, the that represents that method is the implementing method. -- Otherwise, the implementing method is `null`. +- Otherwise, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: +- If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -17568,9 +17568,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is . -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is nullable if `liftToNull` is `true` or if `liftToNull` is `false`. ]]> @@ -17777,16 +17777,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -17794,9 +17794,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `OR` operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `OR` operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `OR` operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `OR` operator. @@ -17880,18 +17880,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are integral or Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -17899,9 +17899,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `OR` operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined bitwise `OR` operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `OR` operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined bitwise `OR` operator. ]]> @@ -18185,19 +18185,19 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. > [!NOTE] > The conditional `OR` operator cannot be overloaded in C# or Visual Basic. However, the conditional `OR` operator is evaluated by using the bitwise `OR` operator. Thus, a user-defined overload of the bitwise `OR` operator can be the implementing method for this node type. -- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable, and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -18207,9 +18207,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V - `left`.Type and `right`.Type are the same Boolean type. -- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `OR` operator. +- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `OR` operator. -- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `OR` operator. +- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `OR` operator. @@ -18297,21 +18297,21 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the bitwise `OR` operator, the that represents that method is the implementing method. > [!NOTE] > The conditional `OR` operator cannot be overloaded in C# or Visual Basic. However, the conditional `OR` operator is evaluated by using the bitwise `OR` operator. Thus, a user-defined overload of the bitwise `OR` operator can be the implementing method for this node type. -- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are Boolean types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable, and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -18321,9 +18321,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V - `left`.Type and `right`.Type are the same Boolean type. -- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `OR` operator. +- If `left`.Type and `right`.Type are non-nullable, the node is not lifted. The type of the node is the result type of the predefined conditional `OR` operator. -- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `OR` operator. +- If `left`.Type and `right`.Type are nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined conditional `OR` operator. ]]> @@ -18799,15 +18799,15 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the exponentiation operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the exponentiation operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are both , the implementing method is . +- Otherwise, if `left`.Type and `right`.Type are both , the implementing method is . #### Node Type and Lifted versus Non-Lifted -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -18891,17 +18891,17 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the exponentiation operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the exponentiation operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are both , the implementing method is . +- Otherwise, if `left`.Type and `right`.Type are both , the implementing method is . #### Node Type and Lifted versus Non-Lifted -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -20675,16 +20675,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the right-shift operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the right-shift operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. +- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -20692,9 +20692,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined right-shift operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined right-shift operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined right-shift operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined right-shift operator. ]]> @@ -20770,18 +20770,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the right-shift operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the right-shift operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. +- Otherwise, if `left`.Type is an integral type (one of , , , , , , , , or the corresponding nullable types) and `right`.Type is , the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -20789,9 +20789,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined right-shift operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined right-shift operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined right-shift operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined right-shift operator. ]]> @@ -21186,16 +21186,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -21203,9 +21203,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. @@ -21289,18 +21289,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -21308,9 +21308,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. ]]> @@ -21791,16 +21791,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the selected implementing method for the operation: -- If the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. +- If the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -21808,9 +21808,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. ]]> @@ -21886,18 +21886,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation : -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes two arguments, it is the implementing method for the node. -- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. +- Otherwise, if the property of either `left` or `right` represents a user-defined type that overloads the subtraction operator, the that represents that method is the implementing method. -- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. +- Otherwise, if `left`.Type and `right`.Type are numeric types, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `left`.Type and `right`.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `left`.Type and `right`.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method. @@ -21905,9 +21905,9 @@ As with `Func`, the last argument is the return type. It can be set to `System.V If the implementing method is `null`: -- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both non-nullable, the node is not lifted. The type of the node is the result type of the predefined subtraction operator. -- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. +- If `left`.Type and `right`.Type are both nullable, the node is lifted. The type of the node is the nullable type that corresponds to the result type of the predefined subtraction operator. ]]> @@ -23640,16 +23640,16 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `expression`.Type is a user-defined type that defines the unary plus operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary plus operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable value type is equal to the argument type of the implementing method. @@ -23727,18 +23727,18 @@ As with `Func`, the last argument is the return type. It can be set to `System.V #### Implementing Method The following rules determine the implementing method for the operation: -- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. +- If `method` is not `null` and it represents a non-void, `static` (`Shared` in Visual Basic) method that takes one argument, it is the implementing method for the node. -- If `expression`.Type is a user-defined type that defines the unary plus operator, the that represents that operator is the implementing method. +- If `expression`.Type is a user-defined type that defines the unary plus operator, the that represents that operator is the implementing method. -- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. +- Otherwise, if `expression`.Type is a numeric type, the implementing method is `null`. #### Node Type and Lifted versus Non-Lifted If the implementing method is not `null`: -- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. +- If `expression`.Type is assignable to the argument type of the implementing method, the node is not lifted. The type of the node is the return type of the implementing method. -- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: +- If the following two conditions are satisfied, the node is lifted and the type of the node is the nullable type that corresponds to the return type of the implementing method: - `expression`.Type is a nullable value type and the corresponding non-nullable value type is equal to the argument type of the implementing method. diff --git a/xml/System.Messaging/AccessControlList.xml b/xml/System.Messaging/AccessControlList.xml index 13fc53c8c90..1dd98837528 100644 --- a/xml/System.Messaging/AccessControlList.xml +++ b/xml/System.Messaging/AccessControlList.xml @@ -18,23 +18,23 @@ Contains a list of access control entries, specifying access rights for one or more trustees. - class to specify multiple trustees and access rights to add with a single call when setting permissions. Construct your access control list by adding an access control entry for each trustee and access rights combination. - - A identifies the trustees that are allowed or denied access to a securable object. When a process tries to access a securable object, the system checks the access control entries in the object's access control list to determine whether to grant access to it. If the object does not have an access control list, the system grants full access to everything. If the object's access control list has no entries, the system denies all attempts to access the object. - - The system checks the access control entries in sequence until it finds one or more that allow all the requested access rights or until any of the requested access rights are denied. - - The system examines each in sequence until one of the following events occurs: - -- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. - -- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. - -- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. - + class to specify multiple trustees and access rights to add with a single call when setting permissions. Construct your access control list by adding an access control entry for each trustee and access rights combination. + + A identifies the trustees that are allowed or denied access to a securable object. When a process tries to access a securable object, the system checks the access control entries in the object's access control list to determine whether to grant access to it. If the object does not have an access control list, the system grants full access to everything. If the object's access control list has no entries, the system denies all attempts to access the object. + + The system checks the access control entries in sequence until it finds one or more that allow all the requested access rights or until any of the requested access rights are denied. + + The system examines each in sequence until one of the following events occurs: + +- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. + +- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. + +- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. + ]]> @@ -147,10 +147,10 @@ To be added. The parameter is . The parameter is less than zero. - The parameter is greater than or equal to the length of the parameter. - - -or- - + The parameter is greater than or equal to the length of the parameter. + + -or- + The number of elements in the source access control list is greater than the available space from to the end of the destination array of access control entries. @@ -210,11 +210,11 @@ A to insert into the access control list. Inserts an access control entry into the access control list at the specified position. - The parameter is not a valid index in this access control list. @@ -247,11 +247,11 @@ The to remove from the access control list. Removes the first occurrence of a specific access control entry from the access control list. - The parameter is . diff --git a/xml/System.Messaging/DefaultPropertiesToSend.xml b/xml/System.Messaging/DefaultPropertiesToSend.xml index 79afe37949b..59fb0e24e29 100644 --- a/xml/System.Messaging/DefaultPropertiesToSend.xml +++ b/xml/System.Messaging/DefaultPropertiesToSend.xml @@ -677,14 +677,14 @@ myMessageQueue.DefaultPropertiesToSend.Label = "myLabel"; The property specifies the total time in seconds for a sent message to be received from the destination queue. This time limit includes the time spent getting to the destination queue, plus the time spent waiting in the queue before the message is retrieved by an application. > [!CAUTION] -> When using dependent client computers, synchronize the clock on the client computer with the clock on the server running Message Queuing. If the two clocks are not synchronized, you might see unpredictable behavior when sending messages when is not . +> When using dependent client computers, synchronize the clock on the client computer with the clock on the server running Message Queuing. If the two clocks are not synchronized, you might see unpredictable behavior when sending messages when is not . If the interval expires before the message is removed from the queue, the Message Queuing application discards the message. The message is either sent to the dead-letter queue, if the message's property is set to `true`, or ignored, if is `false`. If is less than , takes precedence. The message's property can be set to request that Message Queuing send a negative acknowledgment message back to the sending application if the message is not retrieved before the timer expires. > [!CAUTION] -> If you have specified to receive negative acknowledgments, you will not receive them when the value of is less than the value of . +> If you have specified to receive negative acknowledgments, you will not receive them when the value of is less than the value of . When several messages are sent in a transaction, Message Queuing uses the value of the first message's property. diff --git a/xml/System.Messaging/Message.xml b/xml/System.Messaging/Message.xml index 9c683de7e48..414f7b111e3 100644 --- a/xml/System.Messaging/Message.xml +++ b/xml/System.Messaging/Message.xml @@ -652,7 +652,7 @@ The absence of the sender ID is an indication by the sending application that Message Queuing should not validate the message's sender nor verify the sender's access rights to the receiving queue. The is trustworthy only if the message was authenticated when it reached the destination queue. The message is rejected when it reaches the destination queue if the queue accepts only authenticated messages and either the or the property is `false`. > [!CAUTION] -> If a message is rejected, it is either sent to the dead-letter queue (if is `true`), or it is ignored. You can request acknowledgments when a message fails to reach a queue. Otherwise, when is `false` the message might be lost without warning. +> If a message is rejected, it is either sent to the dead-letter queue (if is `true`), or it is ignored. You can request acknowledgments when a message fails to reach a queue. Otherwise, when is `false` the message might be lost without warning. @@ -897,7 +897,7 @@ Unless you write the contents of the message directly to the property, set the property before you send the message. When the method is called on the instance, the body is serialized using the formatter contained in the property. If you send the message without specifying a value for the property, the formatter defaults to . > [!NOTE] -> Attempting to set the body of a message to will cause a when the `Send` method of the class is called and the is used. +> Attempting to set the body of a message to will cause a when the `Send` method of the class is called and the is used. @@ -1108,9 +1108,9 @@ if (myObject is float) { ## Remarks Message Queuing requires the property be set whenever an application sets a message property that is usually set by Message Queuing. An application typically uses a in the following two cases: -- Whenever a connector application passes a message. The tells the sending and receiving applications how to interpret the security and acknowledgment properties of the message. +- Whenever a connector application passes a message. The tells the sending and receiving applications how to interpret the security and acknowledgment properties of the message. -- Whenever the sending application, rather than Message Queuing, encrypts a message. The tells Message Queuing to use the property value to decrypt the message. +- Whenever the sending application, rather than Message Queuing, encrypts a message. The tells Message Queuing to use the property value to decrypt the message. You must set the property if you set any of the following properties (otherwise, the queue ignores these properties when the message is sent): @@ -2509,7 +2509,7 @@ if (myObject is float) { The property specifies the total time for a sent message to be received from the destination queue. The time limit includes the time spent getting to the destination queue and the time spent waiting in the queue before the message is received. > [!CAUTION] -> When using dependent client computers, be sure the clock on the client computer is synchronized with the clock on the server that is running Message Queuing. Otherwise, unpredictable behavior might result when sending a message whose property is not . +> When using dependent client computers, be sure the clock on the client computer is synchronized with the clock on the server that is running Message Queuing. Otherwise, unpredictable behavior might result when sending a message whose property is not . If the interval specified by the property expires before the message is removed from the queue, Message Queuing discards the message in one of two ways. If the message's property is `true`, the message is sent to the dead-letter queue. If is `false`, the message is ignored. diff --git a/xml/System.Messaging/MessageEnumerator.xml b/xml/System.Messaging/MessageEnumerator.xml index 5e75d654ae9..7cb3cfec586 100644 --- a/xml/System.Messaging/MessageEnumerator.xml +++ b/xml/System.Messaging/MessageEnumerator.xml @@ -41,7 +41,7 @@ Instances of for a given queue work independently. You can create two instances that apply to the same queue. The changes that one makes to the messages in the queue will be reflected immediately in a second enumerator if the second enumerator is positioned before the first. However, if two enumerators have the same position and one of them removes the message at that position, an exception is thrown if the other enumerator attempts to get the value of the property on the now-deleted message. > [!NOTE] -> If you create an instance of with set to `true`, no other application can modify the messages in your enumerator while you have the connection to the queue. +> If you create an instance of with set to `true`, no other application can modify the messages in your enumerator while you have the connection to the queue. diff --git a/xml/System.Messaging/MessagePropertyFilter.xml b/xml/System.Messaging/MessagePropertyFilter.xml index e750f75d749..a56e0022c38 100644 --- a/xml/System.Messaging/MessagePropertyFilter.xml +++ b/xml/System.Messaging/MessagePropertyFilter.xml @@ -33,28 +33,28 @@ Controls and selects the properties that are retrieved when peeking or receiving messages from a message queue. - on a instance controls the set of properties that are retrieved when peeking or receiving a message. The filter is set on the instance of that retrieves the message information. When you set a Boolean-valued member to `false`, you prevent the information of the associated property from being retrieved by the . - - There are several filter properties that are not Boolean values. They are integer values that get or set the default sizes of the , , or . - - Retrieving a limited set of properties helps improve performance because smaller amounts of data are transferred from the queue. - - When setting a property on , you are only indicating whether that property is retrieved when a message is received or peeked. You are not changing the associated property value for the . - - The constructor sets all filter properties to their default values, which for the Boolean values is `false`. See the constructor topic for the defaults assigned to the integer-valued properties. - - - -## Examples - The following code example sends two messages of different priorities to the queue, and retrieves them subsequently. - + on a instance controls the set of properties that are retrieved when peeking or receiving a message. The filter is set on the instance of that retrieves the message information. When you set a Boolean-valued member to `false`, you prevent the information of the associated property from being retrieved by the . + + There are several filter properties that are not Boolean values. They are integer values that get or set the default sizes of the , , or . + + Retrieving a limited set of properties helps improve performance because smaller amounts of data are transferred from the queue. + + When setting a property on , you are only indicating whether that property is retrieved when a message is received or peeked. You are not changing the associated property value for the . + + The constructor sets all filter properties to their default values, which for the Boolean values is `false`. See the constructor topic for the defaults assigned to the integer-valued properties. + + + +## Examples + The following code example sends two messages of different priorities to the queue, and retrieves them subsequently. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Message.DefaultPropertiesToSend/CPP/message_defaultandpriority.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/Message/.ctor/message_defaultandpriority.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.DefaultPropertiesToSend/VB/message_defaultandpriority.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.DefaultPropertiesToSend/VB/message_defaultandpriority.vb" id="Snippet1"::: + ]]> @@ -79,25 +79,25 @@ Initializes a new instance of the class and sets default values for all properties. - constructor sets all Boolean values to `false` and sets the integer-valued properties to the default values shown in the following table. - -|Property|Default value| -|--------------|-------------------| -||1024| -||255| -||255| - - - -## Examples - The following code example demonstrates the use of the constructor. - + constructor sets all Boolean values to `false` and sets the integer-valued properties to the default values shown in the following table. + +|Property|Default value| +|--------------|-------------------| +||1024| +||255| +||255| + + + +## Examples + The following code example demonstrates the use of the constructor. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet40"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet40"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet40"::: + ]]> @@ -136,19 +136,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the type of acknowledgment messages requested by the sending application. The type of acknowledgment defines when acknowledgments are returned. Set the property before sending the message to request a specific type of acknowledgment. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the type of acknowledgment messages requested by the sending application. The type of acknowledgment defines when acknowledgments are returned. Set the property before sending the message to request a specific type of acknowledgment. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet1"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet1"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet1"::: + ]]> @@ -188,24 +188,24 @@ to receive information; otherwise, . The default is . - property of the class specifies the type of acknowledgment messages the system posts in the administration queue, which determines when acknowledgments are generated. - - Acknowledgments are returned from the destination queue and posted as messages to the specified by the original message. The type of acknowledgment generated depends on what was requested. - - Read the property when receiving a message from an administration queue to verify the status of the message originally sent to the message queue. - - - -## Examples - The following code example sends and receives a message that contains an order to and from a queue. It specifically requests a positive acknowledgment when the original message reaches or is retrieved from the queue. - + property of the class specifies the type of acknowledgment messages the system posts in the administration queue, which determines when acknowledgments are generated. + + Acknowledgments are returned from the destination queue and posted as messages to the specified by the original message. The type of acknowledgment generated depends on what was requested. + + Read the property when receiving a message from an administration queue to verify the status of the message originally sent to the message queue. + + + +## Examples + The following code example sends and receives a message that contains an order to and from a queue. It specifically requests a positive acknowledgment when the original message reaches or is retrieved from the queue. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Message.Acknowledgment/CPP/message_acknowledgment.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/AcknowledgeTypes/Overview/message_acknowledgment.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Acknowledgment/VB/message_acknowledgment.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Acknowledgment/VB/message_acknowledgment.vb" id="Snippet1"::: + ]]> @@ -245,19 +245,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the name of the queue that receives system-generated acknowledgments. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the name of the queue that receives system-generated acknowledgments. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet2"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet2"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet2"::: + ]]> @@ -296,19 +296,19 @@ to receive information; otherwise, . The default is . - property of the class contains additional, application-specific information. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class contains additional, application-specific information. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet3"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet3"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet3"::: + ]]> @@ -347,19 +347,19 @@ to receive information; otherwise, . The default is . - property of the class indicates when the message arrived at the destination queue. This is local time, adjusted from GMT, of the computer on which the message is retrieved. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class indicates when the message arrived at the destination queue. This is local time, adjusted from GMT, of the computer on which the message is retrieved. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet4"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet4"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet4"::: + ]]> @@ -399,19 +399,19 @@ to receive information; otherwise, . The default is . - property of the class specifies whether the should be or has been attached to the message. The is set by Message Queuing and is used by the receiving Queue Manager to verify whether the sender has access rights to a queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies whether the should be or has been attached to the message. The is set by Message Queuing and is used by the receiving Queue Manager to verify whether the sender has access rights to a queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet5"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet5"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet5"::: + ]]> @@ -450,21 +450,21 @@ to receive information; otherwise, . The default is . - property of the class is used by the receiving application to determine if authentication was requested. If authentication was requested and the message is in the queue, then the message is authenticated. - - It is not possible to look at the properties of a message and determine whether a message failed authentication. Messages that fail authentication are discarded and are not delivered to the queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class is used by the receiving application to determine if authentication was requested. If authentication was requested and the message is in the queue, then the message is authenticated. + + It is not possible to look at the properties of a message and determine whether a message failed authentication. Messages that fail authentication are discarded and are not delivered to the queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet6"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet6"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet6"::: + ]]> @@ -503,21 +503,21 @@ to receive information; otherwise, . The default is . - property of the class specifies the name of the cryptographic provider used to generate the digital signature of the message. is typically used when working with foreign queues. - - A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the name of the cryptographic provider used to generate the digital signature of the message. is typically used when working with foreign queues. + + A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet7"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet7"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet7"::: + ]]> @@ -558,21 +558,21 @@ to receive information; otherwise, . The default is . - property of the class specifies the type of cryptographic provider used to generate the digital signature of the message. is typically used when working with foreign queues. - - A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the type of cryptographic provider used to generate the digital signature of the message. is typically used when working with foreign queues. + + A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet8"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet8"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet8"::: + ]]> @@ -611,19 +611,19 @@ to receive information; otherwise, . The default is . - property of the class represents the serialized contents of the message. The body can contain up to 4 MB of data. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class represents the serialized contents of the message. The body can contain up to 4 MB of data. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet9"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet9"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet9"::: + ]]> @@ -652,21 +652,21 @@ Sets all Boolean filter values to , so that no message properties are retrieved when receiving a message. - to set all Boolean properties to `false`. This causes no message properties to be retrieved when receiving messages. does not affect the values for , , or . - - After calling , it is necessary to set at least one filter property to `true` in order to receive data related to a message. You can either set individual properties to `true`, or you can call or . - - - -## Examples - The following code example calls the method. - + to set all Boolean properties to `false`. This causes no message properties to be retrieved when receiving messages. does not affect the values for , , or . + + After calling , it is necessary to set at least one filter property to `true` in order to receive data related to a message. You can either set individual properties to `true`, or you can call or . + + + +## Examples + The following code example calls the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet37"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet37"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet37"::: + ]]> @@ -732,23 +732,23 @@ to receive information; otherwise, . The default is . - property of the class is required when an application sets a message property that is typically set by Message Queuing. It is used in the following two instances: - -- When a message is passed by a connector application, the is required for the sending and receiving applications to interpret the security and acknowledgment properties of the message. - -- When sending application-encrypted messages, the property informs Message Queuing to use the symmetric key. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class is required when an application sets a message property that is typically set by Message Queuing. It is used in the following two instances: + +- When a message is passed by a connector application, the is required for the sending and receiving applications to interpret the security and acknowledgment properties of the message. + +- When sending application-encrypted messages, the property informs Message Queuing to use the symmetric key. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet10"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet10"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet10"::: + ]]> @@ -787,20 +787,20 @@ to receive information; otherwise, . The default is . - property of the class specifies a message identifier that is used by acknowledgment and report messages to reference the original message. It provides an application-defined identifier that the receiving application can use to sort messages. - - - -## Examples - The following code example sends and receives a message containing an order to and from a queue. It specifically requests a positive acknowledgment when the original message reaches or is retrieved from the queue. - + property of the class specifies a message identifier that is used by acknowledgment and report messages to reference the original message. It provides an application-defined identifier that the receiving application can use to sort messages. + + + +## Examples + The following code example sends and receives a message containing an order to and from a queue. It specifically requests a positive acknowledgment when the original message reaches or is retrieved from the queue. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Message.Acknowledgment/CPP/message_acknowledgment.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/AcknowledgeTypes/Overview/message_acknowledgment.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Acknowledgment/VB/message_acknowledgment.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Acknowledgment/VB/message_acknowledgment.vb" id="Snippet1"::: + ]]> @@ -838,19 +838,19 @@ Gets or sets the size, in bytes, of the default body buffer. The default body buffer size to create when the message is received. The default is 1024 bytes. - property of the class represents the serialized contents of the message. The body can contain up to 4 MB of data. Restricting the body size can improve performance. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class represents the serialized contents of the message. The body can contain up to 4 MB of data. Restricting the body size can improve performance. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet11"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet11"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet11"::: + ]]> The assigned value is negative. @@ -890,19 +890,19 @@ Gets or sets the size, in bytes, of the default extension buffer. The default extension buffer size to create when the message is received. The default is 255 bytes. - property of the class represents the additional, application-defined information associated with the message, such as a binary large object. It is the responsibility of the application to interpret the contents of the . - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class represents the additional, application-defined information associated with the message, such as a binary large object. It is the responsibility of the application to interpret the contents of the . + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet12"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet12"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet12"::: + ]]> The assigned value is negative. @@ -942,19 +942,19 @@ Gets or sets the size, in bytes, of the default label buffer. The default label buffer size to create when the message is received. The default is 255 bytes. - property of the class specifies the label of the message. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the label of the message. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet13"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet13"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet13"::: + ]]> The assigned value is negative. @@ -995,19 +995,19 @@ to receive information; otherwise, . The default is . - property of the class identifies the original destination queue of the message. It is typically used to determine the original destination of a message that is in a journal or dead-letter queue. It can also be used when sending a response message back to a response queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class identifies the original destination queue of the message. It is typically used to determine the original destination of a message that is in a journal or dead-letter queue. It can also be used when sending a response message back to a response queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet14"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet14"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet14"::: + ]]> @@ -1046,21 +1046,21 @@ to receive information; otherwise, . The default is . - property of the class specifies the symmetric key used to encrypt the message. It is required when you send application-encrypted messages, or when you send encrypted messages to a foreign queue. - - A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the symmetric key used to encrypt the message. It is required when you send application-encrypted messages, or when you send encrypted messages to a foreign queue. + + A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet15"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet15"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet15"::: + ]]> @@ -1099,19 +1099,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the digital signature used to authenticate the message. In most cases, it is generated and set by Message Queuing when the sending application requests authentication. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the digital signature used to authenticate the message. In most cases, it is generated and set by Message Queuing when the sending application requests authentication. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet16"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet16"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet16"::: + ]]> @@ -1151,19 +1151,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the algorithm used to encrypt the message body of a private message. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the algorithm used to encrypt the message body of a private message. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet17"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet17"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet17"::: + ]]> @@ -1202,19 +1202,19 @@ to receive information; otherwise, . The default is . - property of the class provides for additional application-defined information that is associated with the message, like a large binary object. It is the responsibility of the receiving application to interpret the contents of the . - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class provides for additional application-defined information that is associated with the message, like a large binary object. It is the responsibility of the receiving application to interpret the contents of the . + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet18"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet18"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet18"::: + ]]> @@ -1254,19 +1254,19 @@ to receive information; otherwise, . The default is . - property of the class identifies the hashing algorithm Message Queuing uses when authenticating messages. The hashing algorithm is also used when creating a digital signature for a message. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class identifies the hashing algorithm Message Queuing uses when authenticating messages. The hashing algorithm is also used when creating a digital signature for a message. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet19"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet19"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet19"::: + ]]> @@ -1307,19 +1307,19 @@ to receive information; otherwise, . The default is . - property of the class indicates the Message Queuing-generated unique identifier of the message. This identifier is generated when the message is sent. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class indicates the Message Queuing-generated unique identifier of the message. This identifier is generated when the message is sent. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet20"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet20"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet20"::: + ]]> @@ -1358,19 +1358,19 @@ to receive information; otherwise, . The default is . - property of the class is used by receiving applications to verify whether a message is the first message sent in a single transaction to a single queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class is used by receiving applications to verify whether a message is the first message sent in a single transaction to a single queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet50"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet50"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet50"::: + ]]> @@ -1411,19 +1411,19 @@ to receive information; otherwise, . The default is . - property of the class is used by receiving applications to verify whether a message is the last message sent from a single transaction to a single queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class is used by receiving applications to verify whether a message is the last message sent from a single transaction to a single queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet51"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet51"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet51"::: + ]]> @@ -1464,19 +1464,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the label of the message. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the label of the message. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet21"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet21"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet21"::: + ]]> @@ -1515,11 +1515,11 @@ to receive property information; otherwise, . The default is . - property of the class specifies the lookup identifier of the message. - + property of the class specifies the lookup identifier of the message. + ]]> @@ -1557,19 +1557,19 @@ to receive information; otherwise, . The default is . - property of the class identifies the type of the message. A message can be a normal message, a positive or negative acknowledgment message, or a report message. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class identifies the type of the message. A message can be a normal message, a positive or negative acknowledgment message, or a report message. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet22"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet22"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet22"::: + ]]> @@ -1608,22 +1608,22 @@ to receive information; otherwise, . The default is . - property of the class affects how Message Queuing handles the message while it is en route, as well as where the message is placed in the queue when it reaches its destination. - - Message priority can only be set meaningfully for non-transactional messages. The priority for transactional messages is automatically set to zero, which causes transactional message priority to be ignored. - - - -## Examples - The following code example sends two messages of different priorities to the queue, and retrieves them subsequently. - + property of the class affects how Message Queuing handles the message while it is en route, as well as where the message is placed in the queue when it reaches its destination. + + Message priority can only be set meaningfully for non-transactional messages. The priority for transactional messages is automatically set to zero, which causes transactional message priority to be ignored. + + + +## Examples + The following code example sends two messages of different priorities to the queue, and retrieves them subsequently. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Message.DefaultPropertiesToSend/CPP/message_defaultandpriority.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/Message/.ctor/message_defaultandpriority.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.DefaultPropertiesToSend/VB/message_defaultandpriority.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.DefaultPropertiesToSend/VB/message_defaultandpriority.vb" id="Snippet1"::: + ]]> @@ -1662,21 +1662,21 @@ to receive information; otherwise, . The default is . - property of the class indicates whether delivery of a message is guaranteed, even if a computer crashes while the message is en route to the destination queue. - - If delivery of a message is guaranteed, the message is stored locally at every step until the message is successfully forwarded to the next computer. Setting to `true` on the message could affect the throughput. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class indicates whether delivery of a message is guaranteed, even if a computer crashes while the message is en route to the destination queue. + + If delivery of a message is guaranteed, the message is stored locally at every step until the message is successfully forwarded to the next computer. Setting to `true` on the message could affect the throughput. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet23"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet23"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet23"::: + ]]> @@ -1715,21 +1715,21 @@ to receive information; otherwise, . The default is . - property of the class identifies the queue that receives application-generated response messages that are sent back to the sending application by the receiving application. Response queues are specified by the sending application when the application sends its messages. Any available queue can be specified as a response queue. - - Messages returned to the response queue are application-specific. The application must define what is in the messages as well as what is to be done when a message is received. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class identifies the queue that receives application-generated response messages that are sent back to the sending application by the receiving application. Response queues are specified by the sending application when the application sends its messages. Any available queue can be specified as a response queue. + + Messages returned to the response queue are application-specific. The application must define what is in the messages as well as what is to be done when a message is received. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet24"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet24"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet24"::: + ]]> @@ -1768,19 +1768,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the security certificate used to authenticate messages. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the security certificate used to authenticate messages. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet25"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet25"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet25"::: + ]]> @@ -1819,19 +1819,19 @@ to receive information; otherwise, . The default is . - property of the class is used primarily by the receiving queue manager when authenticating a message. The property is set by Message Queuing and is used by the queue manager to verify who sent the message and that the sender has access rights to the receiving queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class is used primarily by the receiving queue manager when authenticating a message. The property is set by Message Queuing and is used by the queue manager to verify who sent the message and that the sender has access rights to the receiving queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet26"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet26"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet26"::: + ]]> @@ -1871,21 +1871,21 @@ to receive information; otherwise, . The default is . - property of the class specifies the version of Message Queuing used to send the message. The property is important to be aware of when using features like transaction processing, which is only supported by Message Queuing version 2.0 and later, or digital signatures, which are used to authenticate messages sent by version 1.0. - - is set by the sending queue manager when the message is sent. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the version of Message Queuing used to send the message. The property is important to be aware of when using features like transaction processing, which is only supported by Message Queuing version 2.0 and later, or digital signatures, which are used to authenticate messages sent by version 1.0. + + is set by the sending queue manager when the message is sent. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet27"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet27"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet27"::: + ]]> @@ -1926,19 +1926,19 @@ to receive information; otherwise, . The default is . - property of the class indicates the sending machine's date and time when the message was sent by the source Queue Manager. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class indicates the sending machine's date and time when the message was sent by the source Queue Manager. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet28"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet28"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet28"::: + ]]> @@ -1967,21 +1967,21 @@ Specifies to retrieve all message properties when receiving a message. - to set all Boolean properties to `true`. This causes all message properties to be retrieved when receiving messages. does not affect the values for , , or . - - After calling , you can set individual filter values to `false` in order to restrict the properties retrieved when the message is received. - - - -## Examples - The following code example calls the method. - + to set all Boolean properties to `true`. This causes all message properties to be retrieved when receiving messages. does not affect the values for , , or . + + After calling , you can set individual filter values to `false` in order to restrict the properties retrieved when the message is received. + + + +## Examples + The following code example calls the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet39"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet39"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet39"::: + ]]> @@ -2010,51 +2010,51 @@ Sets the filter values of common Message Queuing properties to and the integer-valued properties to their default values. - to set the following Boolean-valued properties to `true`. These are the most common properties a will typically interact with the following: - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - - sets the properties in the following table to their default values. - -|Property|Default value| -|--------------|-------------------| -||1024| -||255| -||255| - - The property represents a on which has been called. - - - -## Examples - The following code example calls the method. - + to set the following Boolean-valued properties to `true`. These are the most common properties a will typically interact with the following: + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + + sets the properties in the following table to their default values. + +|Property|Default value| +|--------------|-------------------| +||1024| +||255| +||255| + + The property represents a on which has been called. + + + +## Examples + The following code example calls the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet38"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet38"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet38"::: + ]]> @@ -2094,19 +2094,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the computer where the message originated. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the computer where the message originated. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet29"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet29"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet29"::: + ]]> @@ -2145,19 +2145,19 @@ to receive information; otherwise, . The default is . - property of the class specifies the total time in seconds for a sent message to be received from the destination queue. The time limit for the message to be retrieved from the target queue includes the time spent getting to the destination queue, plus the time spent waiting in the queue before the message is retrieved by an application. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies the total time in seconds for a sent message to be received from the destination queue. The time limit for the message to be retrieved from the target queue includes the time spent getting to the destination queue, plus the time spent waiting in the queue before the message is retrieved by an application. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet30"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet30"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet30"::: + ]]> @@ -2197,19 +2197,19 @@ to receive information; otherwise, . The default is . - property of the class specifies a time limit in seconds from the time the message is sent for it to reach the destination queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies a time limit in seconds from the time the message is sent for it to reach the destination queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet31"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet31"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet31"::: + ]]> @@ -2249,19 +2249,19 @@ to receive information; otherwise, . The default is . - property of the class identifies the transaction that sent the message. Use this property within a receiving application to verify that a message was sent as part of a specific transaction. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class identifies the transaction that sent the message. Use this property within a receiving application to verify that a message was sent as part of a specific transaction. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet52"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet52"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet52"::: + ]]> @@ -2302,21 +2302,21 @@ to receive information; otherwise, . The default is . - property of the class identifies the transaction status queue on the source computer. The property is used for sending acknowledgment messages back to the sending application. The transaction status queue is used by connector applications when receiving transactional messages sent to a foreign queue. - - A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class identifies the transaction status queue on the source computer. The property is used for sending acknowledgment messages back to the sending application. The transaction status queue is used by connector applications when receiving transactional messages sent to a foreign queue. + + A foreign queue exists in a queuing system other than Microsoft Message Queuing. Microsoft Message Queuing communicates with such queues through a connector application. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet53"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet53"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet53"::: + ]]> @@ -2356,21 +2356,21 @@ to receive information; otherwise, . The default is . - property of the class specifies whether the message needs to be authenticated. - - It is not possible to look at the properties of a message and determine whether a message failed authentication. Messages that fail authentication are discarded and are not delivered to the queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies whether the message needs to be authenticated. + + It is not possible to look at the properties of a message and determine whether a message failed authentication. Messages that fail authentication are discarded and are not delivered to the queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet32"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet32"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet32"::: + ]]> @@ -2410,19 +2410,19 @@ to receive information; otherwise, . The default is . - property of the class specifies whether a copy of a message that could not be delivered should be sent to a dead-letter queue. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies whether a copy of a message that could not be delivered should be sent to a dead-letter queue. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet33"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet33"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet33"::: + ]]> @@ -2461,19 +2461,19 @@ to receive information; otherwise, . The default is . - property of the class specifies whether to encrypt a message. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies whether to encrypt a message. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet34"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet34"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet34"::: + ]]> @@ -2512,19 +2512,19 @@ to receive information; otherwise, . The default is . - property of the class specifies whether a copy of the message should be kept in a machine journal on the originating computer. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies whether a copy of the message should be kept in a machine journal on the originating computer. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet35"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet35"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet35"::: + ]]> @@ -2563,21 +2563,21 @@ to receive information; otherwise, . The default is . - property of the class specifies whether to track the route of a message as it moves toward its destination queue. If `true`, each time the original message passes through a Message Queuing routing server, a Message Queuing-generated report message is sent to the system report queue. - - Using tracing involves setting up Active Directory and specifying a report queue for the Message Queuing enterprise. These settings are configured by the administrator. - - - -## Examples - The following code example demonstrates the use of the property. - + property of the class specifies whether to track the route of a message as it moves toward its destination queue. If `true`, each time the original message passes through a Message Queuing routing server, a Message Queuing-generated report message is sent to the system report queue. + + Using tracing involves setting up Active Directory and specifying a report queue for the Message Queuing enterprise. These settings are configured by the administrator. + + + +## Examples + The following code example demonstrates the use of the property. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/MessagePropertyFilter/CPP/class1.cpp" id="Snippet36"::: - :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet36"::: - + :::code language="csharp" source="~/snippets/csharp/System.Messaging/MessagePropertyFilter/.ctor/class1.cs" id="Snippet36"::: + ]]> diff --git a/xml/System.Messaging/MessageQueue.xml b/xml/System.Messaging/MessageQueue.xml index 17189409160..f53c89c3686 100644 --- a/xml/System.Messaging/MessageQueue.xml +++ b/xml/System.Messaging/MessageQueue.xml @@ -1695,11 +1695,11 @@ myMessageQueue.Send("Text 2."); //Resources are re-acquired. does not always free the read and write handles to a queue, because they might be shared. You can take any of the following steps to ensure that frees the read and write handles to a queue: -- Create the with exclusive access. To do so, call the or constructor, and set the `sharedModeDenyReceive` parameter to `true`. +- Create the with exclusive access. To do so, call the or constructor, and set the `sharedModeDenyReceive` parameter to `true`. -- Create the with connection caching disabled. To do so, call the constructor and set the `enableConnectionCache` parameter to `false`. +- Create the with connection caching disabled. To do so, call the constructor and set the `enableConnectionCache` parameter to `false`. -- Disable connection caching. To do so, set the property to `false`. +- Disable connection caching. To do so, set the property to `false`. You should call for a queue before you delete the queue on the Message Queuing server. Otherwise, messages sent to the queue could throw exceptions or appear in the dead-letter queue. @@ -2508,7 +2508,7 @@ myMessageQueue.Send("Text 2."); //Resources are re-acquired. is an expensive operation. Use it only when it is necessary within the application. > [!NOTE] -> The method does not support the prefix. +> The method does not support the prefix. The syntax for the `path` parameter depends on the type of queue, as shown in the following table. @@ -4257,7 +4257,7 @@ The name of the computer is not valid, possibly because the syntax is incorrect. |Remote computer and direct format name|Yes| > [!NOTE] -> In workgroup mode you can only use private queues. You specify the path using the private queue syntax `MachineName`\\`Private$`\\`QueueName`. +> In workgroup mode you can only use private queues. You specify the path using the private queue syntax `MachineName`\\`Private$`\\`QueueName`. @@ -6974,11 +6974,11 @@ The name of the computer is not valid, possibly because the syntax is incorrect. ## Remarks When you call , you return the permission list to its default values. Generally, this grants the queue creator all permissions, and gives the group Everyone the following rights: -- Get the properties of the queue. +- Get the properties of the queue. -- Get queue permissions. +- Get queue permissions. -- Write to the queue. +- Write to the queue. The following table shows whether this method is available in various Workgroup modes. @@ -7527,59 +7527,59 @@ The name of the computer is not valid, possibly because the syntax is incorrect. The system examines each in sequence until one of the following events occurs: -- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. +- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. -- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. +- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. -- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. +- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. When you construct the `dacl` parameter, you add instances to your collection. When you construct each access control entry, you can specify generic or standard access rights. The rights to a queue can be any combination of the following: -- Delete +- Delete -- Read Security +- Read Security -- Write Security +- Write Security -- Synchronize +- Synchronize -- Modify Owner +- Modify Owner -- Read +- Read -- Write +- Write -- Execute +- Execute -- Required +- Required -- All +- All -- None +- None These rights are a set of bit flags that you can combine using the OR bitwise operator. -- Full Control +- Full Control -- Delete Message +- Delete Message -- Receive Message +- Receive Message -- Peek Message +- Peek Message -- Receive Journal Message +- Receive Journal Message -- Get Queue Properties +- Get Queue Properties -- Set Queue Properties +- Set Queue Properties -- Get Permissions +- Get Permissions -- Set Permissions +- Set Permissions -- Take Queue Ownership +- Take Queue Ownership -- Write Message +- Write Message The following table shows whether this method is available in various Workgroup modes. @@ -7641,35 +7641,35 @@ The name of the computer is not valid, possibly because the syntax is incorrect. The system examines each in sequence until one of the following events occurs: -- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. +- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. -- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. +- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. -- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. +- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. The rights to a queue, which you specify in the `rights` parameter when you construct your , can be any combination of the following: -- Full Control +- Full Control -- Delete Message +- Delete Message -- Receive Message +- Receive Message -- Peek Message +- Peek Message -- Receive Journal Message +- Receive Journal Message -- Get Queue Properties +- Get Queue Properties -- Set Queue Properties +- Set Queue Properties -- Get Permissions +- Get Permissions -- Set Permissions +- Set Permissions -- Take Queue Ownership +- Take Queue Ownership -- Write Message +- Write Message The `rights` parameter you specify in the constructor for the `ace` parameter is a flag of the enumeration. It represents a set of bit flags that you can combine using the bitwise operator OR when you build the `rights` parameter. @@ -7734,35 +7734,35 @@ The name of the computer is not valid, possibly because the syntax is incorrect. The system examines each in sequence until one of the following events occurs: -- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. +- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. -- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. +- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. -- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. +- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. The rights to a queue, specified in the `rights` parameter, can be any combination of the following: -- Full Control +- Full Control -- Delete Message +- Delete Message -- Receive Message +- Receive Message -- Peek Message +- Peek Message -- Receive Journal Message +- Receive Journal Message -- Get Queue Properties +- Get Queue Properties -- Set Queue Properties +- Set Queue Properties -- Get Permissions +- Get Permissions -- Set Permissions +- Set Permissions -- Take Queue Ownership +- Take Queue Ownership -- Write Message +- Write Message The enumeration represents a set of bit flags that you can combine using the bitwise operator OR to build the `rights` parameter. @@ -7831,35 +7831,35 @@ The name of the computer is not valid, possibly because the syntax is incorrect. The system examines each in sequence until one of the following events occurs: -- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. +- An access-denied explicitly denies any of the requested access rights to one of the trustees listed in the thread's access token. -- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. +- One or more access-allowed items for trustees listed in the thread's access token explicitly grant all the requested access rights. -- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. +- All items have been checked and there is still at least one requested access right that has not been explicitly allowed, in which case, access is implicitly denied. The rights to a queue, specified in the `rights` parameter, can be any combination of the following: -- Full Control +- Full Control -- Delete Message +- Delete Message -- Receive Message +- Receive Message -- Peek Message +- Peek Message -- Receive Journal Message +- Receive Journal Message -- Get Queue Properties +- Get Queue Properties -- Set Queue Properties +- Set Queue Properties -- Get Permissions +- Get Permissions -- Set Permissions +- Set Permissions -- Take Queue Ownership +- Take Queue Ownership -- Write Message +- Write Message The enumeration represents a set of bit flags that you can combine using the bitwise operator OR to build the `rights` parameter. diff --git a/xml/System.Messaging/MessageQueueInstaller.xml b/xml/System.Messaging/MessageQueueInstaller.xml index 13a9052040b..a93ee52f526 100644 --- a/xml/System.Messaging/MessageQueueInstaller.xml +++ b/xml/System.Messaging/MessageQueueInstaller.xml @@ -18,23 +18,23 @@ Allows you to install and configure a queue that your application needs in order to run. This class is called by the installation utility, for example, InstallUtil.exe, when installing a . - is used by the installation utility to write registry values that are associated with the queue. For more information about installation utilities, see [Installutil.exe (Installer Tool)](/dotnet/framework/tools/installutil-exe-installer-tool). - - To install a queue, create a project installer class that inherits from the , and set the for the class to `true`. Within your project, create a instance for each queue in the installation and add the instance to your project installer class. - - When creating a instance, you can optionally pass an existing (for example, from a test server) to the constructor. This approach automatically provides the configuration settings for the new queue by mirroring the settings of the queue passed in. Alternatively, you can manually set the properties in the instance to the states you want and call the parameterless constructor. - - When the install utility is called, it looks for the . If it is `true`, the utility installs all the queues in the collection associated with your project installer. If is `false`, the utility ignores the project installer. - - You modify other properties of a instance either before or after adding the instance to the collection of your project installer. For example, a queue's must be set before the install utility executes. - - Typically, you do not call the methods of the from within your code; they are generally called only by the installutil.exe installation utility. The utility automatically calls the method during the installation process and calls if the installation did not throw an exception. It backs out failures, if necessary, by calling for the object that generated the exception. - - An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information is continuously updated as each instance is installed by the utility. It is not usually necessary for your code to explicitly modify the state information. - + is used by the installation utility to write registry values that are associated with the queue. For more information about installation utilities, see [Installutil.exe (Installer Tool)](/dotnet/framework/tools/installutil-exe-installer-tool). + + To install a queue, create a project installer class that inherits from the , and set the for the class to `true`. Within your project, create a instance for each queue in the installation and add the instance to your project installer class. + + When creating a instance, you can optionally pass an existing (for example, from a test server) to the constructor. This approach automatically provides the configuration settings for the new queue by mirroring the settings of the queue passed in. Alternatively, you can manually set the properties in the instance to the states you want and call the parameterless constructor. + + When the install utility is called, it looks for the . If it is `true`, the utility installs all the queues in the collection associated with your project installer. If is `false`, the utility ignores the project installer. + + You modify other properties of a instance either before or after adding the instance to the collection of your project installer. For example, a queue's must be set before the install utility executes. + + Typically, you do not call the methods of the from within your code; they are generally called only by the installutil.exe installation utility. The utility automatically calls the method during the installation process and calls if the installation did not throw an exception. It backs out failures, if necessary, by calling for the object that generated the exception. + + An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information is continuously updated as each instance is installed by the utility. It is not usually necessary for your code to explicitly modify the state information. + ]]> Installutil.exe (Installer Tool) @@ -119,11 +119,11 @@ if the queue accepts only authenticated messages; otherwise, . The default is . - for the message. Otherwise, there is no indication that the message was rejected, so the message can be lost unless you send it to the dead-letter queue. - + for the message. Otherwise, there is no indication that the message was rejected, so the message can be lost unless you send it to the dead-letter queue. + ]]> @@ -155,13 +155,13 @@ Gets or sets the base priority that is used to route a public queue's messages over the network. The single base priority for all messages sent to the public queue. The default is zero (0). - is used for routing the queue's messages over the network. Use the to give the messages sent to the queue a higher or lower priority than that for messages sent to other queues. When a queue's base priority is set, all the messages sent to it are given a higher priority than that of the messages sent to queues with a lower base priority. The queue's base priority has no effect on the order of the messages in the queue or on how messages are read from the queue. - - The applies only to public queues that are accessed through the domain controller (in other words, using the public format name). The base priority of private queues and of directly accessed public queues is always zero. - + is used for routing the queue's messages over the network. Use the to give the messages sent to the queue a higher or lower priority than that for messages sent to other queues. When a queue's base priority is set, all the messages sent to it are given a higher priority than that of the messages sent to queues with a lower base priority. The queue's base priority has no effect on the order of the messages in the queue or on how messages are read from the queue. + + The applies only to public queues that are accessed through the domain controller (in other words, using the public format name). The base priority of private queues and of directly accessed public queues is always zero. + ]]> @@ -201,13 +201,13 @@ Gets or sets an implementation-specific queue type. A that represents the queue category (or Message Queuing type identifier), which allows applications to categorize their queues according to how they are used. The default is . - can be a null reference. You can also define a new category. - - The property provides access to the Message Queuing type identifier property, which is associated with a particular queue and is read/write. You can use the method to create a category value that is guaranteed to be unique across all values. However, it is necessary only for the category value to be distinct from other categories, not from all other values. For example, you can set the for one group of queues to {00000000-0000-0000-0000-000000000001} and the for another group to {00000000-0000-0000-0000-000000000002}. - + can be a null reference. You can also define a new category. + + The property provides access to the Message Queuing type identifier property, which is associated with a particular queue and is read/write. You can use the method to create a category value that is guaranteed to be unique across all values. However, it is necessary only for the category value to be distinct from other categories, not from all other values. For example, you can set the for one group of queues to {00000000-0000-0000-0000-000000000001} and the for another group to {00000000-0000-0000-0000-000000000002}. + ]]> @@ -236,15 +236,15 @@ A that contains the post-installation state of the computer. Completes the installation process by committing the installation information that the method wrote to the registry. This method is meant to be used by installation tools, which automatically call the appropriate methods. - from within your code; they are generally called only by the installutil.exe installation utility. The utility automatically calls the method during the installation process. Installation is transactional, so if there is a failure of any installation project component during the installation, all the previously installed components are rolled back to their pre-installation states. This is accomplished by calling each component's method. - - After a successful installation of all the components that are associated with the installation project has occurred, the installation utility commits the installations. completes the installation of the by setting the queue to the appropriate initial state. If the queue specified by the property already exists and contains messages, clears the messages. , rather than , clears the messages because the act of purging the messages cannot be rolled back. - - An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information, which is passed to as the `savedState` parameter, is continuously updated as the utility commits each instance. Usually, it is not necessary for your code to explicitly modify this state information. When the queue has been cleared, posts a log entry to the `savedState` that is associated with the installation. - + from within your code; they are generally called only by the installutil.exe installation utility. The utility automatically calls the method during the installation process. Installation is transactional, so if there is a failure of any installation project component during the installation, all the previously installed components are rolled back to their pre-installation states. This is accomplished by calling each component's method. + + After a successful installation of all the components that are associated with the installation project has occurred, the installation utility commits the installations. completes the installation of the by setting the queue to the appropriate initial state. If the queue specified by the property already exists and contains messages, clears the messages. , rather than , clears the messages because the act of purging the messages cannot be rolled back. + + An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information, which is passed to as the `savedState` parameter, is continuously updated as the utility commits each instance. Usually, it is not necessary for your code to explicitly modify this state information. When the queue has been cleared, posts a log entry to the `savedState` that is associated with the installation. + ]]> @@ -276,13 +276,13 @@ A to use as a template for the . Copies the property values of a component that are required at install time for a message queue. - from within your code; they are generally called only by the installutil.exe installation utility. is used by the installation utility to set the property values for the to the values of an existing . - - If the of the that is passed in is an empty string (""), you must set the property to a non-empty value before the installer executes. - + from within your code; they are generally called only by the installutil.exe installation utility. is used by the installation utility to set the property values for the to the values of an existing . + + If the of the that is passed in is an empty string (""), you must set the property to a non-empty value before the installer executes. + ]]> The component associated with this is not a . @@ -315,11 +315,11 @@ Gets or sets a value that indicates whether the queue accepts only private, or encrypted, messages. One of the values that indicates the encryption level required on messages sent to the queue. The default is . - of a message is encrypted. Other properties, such as the , are not encrypted. - + of a message is encrypted. Other properties, such as the , are not encrypted. + ]]> @@ -348,20 +348,20 @@ A used to save information needed to perform a commit, rollback, or uninstall operation. Performs the installation and writes message queue information to the registry. This method is meant to be used by installation tools, which automatically call the appropriate methods. - method writes message queue information to the registry, and associates the instance with a queue that is located at the path specified by the property. If the queue does not already exist, creates a transactional queue. sets the new or existing queue properties to those that you have specified in the . If the queue already exists, its properties are reset to those of the . If the existing queue is not transactional, it is deleted and then recreated as a transactional queue. - + method writes message queue information to the registry, and associates the instance with a queue that is located at the path specified by the property. If the queue does not already exist, creates a transactional queue. sets the new or existing queue properties to those that you have specified in the . If the queue already exists, its properties are reset to those of the . If the existing queue is not transactional, it is deleted and then recreated as a transactional queue. + > [!CAUTION] -> If it is necessary to recreate the queue, messages in the queue will be lost. - - Typically, you do not call the methods of the from within your code; they are generally called only by the installutil.exe installation utility. The utility automatically calls the method during the installation process to write registry information that is associated with the message queue being installed. Installation is transactional, so if there is a failure of any installation project component during the installation, all the previously installed components are rolled back to their pre-installation states. This is accomplished by calling each component's method. - - After a successful installation of all the components that are associated with the installation project has occurred, the installation utility commits the installations. completes the installation of the by setting the queue to the appropriate initial state. If the queue specified by the property already exists and contains messages, clears the messages. , rather than , clears the messages because the act of purging the messages cannot be rolled back. - - An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information, which is passed to as the `stateSaver` parameter, is continuously updated as the utility installs each instance. Usually, it is not necessary for your code to explicitly modify this state information. - +> If it is necessary to recreate the queue, messages in the queue will be lost. + + Typically, you do not call the methods of the from within your code; they are generally called only by the installutil.exe installation utility. The utility automatically calls the method during the installation process to write registry information that is associated with the message queue being installed. Installation is transactional, so if there is a failure of any installation project component during the installation, all the previously installed components are rolled back to their pre-installation states. This is accomplished by calling each component's method. + + After a successful installation of all the components that are associated with the installation project has occurred, the installation utility commits the installations. completes the installation of the by setting the queue to the appropriate initial state. If the queue specified by the property already exists and contains messages, clears the messages. , rather than , clears the messages because the act of purging the messages cannot be rolled back. + + An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information, which is passed to as the `stateSaver` parameter, is continuously updated as the utility installs each instance. Usually, it is not necessary for your code to explicitly modify this state information. + ]]> @@ -396,11 +396,11 @@ if this installer and the installer specified by the parameter can handle the same kind of installation; otherwise, . - returns `true` only if this installer and the installer specified by the `otherInstaller` parameter are of the same type. - + returns `true` only if this installer and the installer specified by the `otherInstaller` parameter are of the same type. + ]]> @@ -432,11 +432,11 @@ Gets or sets a description of the queue. The label that describes the message queue. The default is an empty string (""). - property does not need to be unique across queues. - + property does not need to be unique across queues. + ]]> The is . @@ -469,15 +469,15 @@ Gets or sets the maximum size of the journal that is associated with the queue. The maximum size, in kilobytes, of the journal queue, which records messages that are removed from the queue. The Message Queuing default is no limit. - @@ -509,11 +509,11 @@ Gets or sets the maximum size of the queue. The maximum size, in kilobytes, of the queue. The Message Queuing default is no limit. - @@ -542,10 +542,10 @@ Introduced in MSMQ 3.0. Gets or sets the multicast address associated with the queue. - A that contains a valid multicast address (in the form shown below) or , which indicates that the queue is not associated with a multicast address. - -``` -<address>:<port> + A that contains a valid multicast address (in the form shown below) or , which indicates that the queue is not associated with a multicast address. + +``` +<address>:<port> ``` To be added. @@ -604,37 +604,37 @@ Gets or sets the location of the queue that is referenced by this object. The path that represents the location of the queue in the network. - property depends on the type of queue it references. The following table shows the syntax you should use for queues of various types. - -|Queue type|Syntax| -|----------------|------------| -|Public queue|`machineName`\\`queueName`| -|Private queue|`machineName`\\`Private$`\\`queueName`| -|Journal queue|`machineName`\\`queueName`\\`Journal$`| -|Machine journal queue|`machineName`\\`Journal$`| -|Machine dead-letter queue|`machineName`\\`Deadletter$`| -|Machine transactional dead-letter queue|`machineName`\\`XactDeadletter$`| - - Use "." for the local computer. - - You can also use the or of a Message Queuing application object to describe the queue path. The following table shows the proper syntax for each type of reference. - -|Reference|Syntax| -|---------------|------------| -|Format name|FormatName:[ *format name* ]| -|Label|Label:[ *label* ]| - - If you are working offline, you must use the format name to define the queue . If you do not, the application will throw an exception, because the primary domain controller is unavailable to resolve the into the . - + property depends on the type of queue it references. The following table shows the syntax you should use for queues of various types. + +|Queue type|Syntax| +|----------------|------------| +|Public queue|`machineName`\\`queueName`| +|Private queue|`machineName`\\`Private$`\\`queueName`| +|Journal queue|`machineName`\\`queueName`\\`Journal$`| +|Machine journal queue|`machineName`\\`Journal$`| +|Machine dead-letter queue|`machineName`\\`Deadletter$`| +|Machine transactional dead-letter queue|`machineName`\\`XactDeadletter$`| + + Use "." for the local computer. + + You can also use the or of a Message Queuing application object to describe the queue path. The following table shows the proper syntax for each type of reference. + +|Reference|Syntax| +|---------------|------------| +|Format name|FormatName:[ *format name* ]| +|Label|Label:[ *label* ]| + + If you are working offline, you must use the format name to define the queue . If you do not, the application will throw an exception, because the primary domain controller is unavailable to resolve the into the . + ]]> - The was set to an invalid value, possibly because the syntax is not valid. - - -or- - + The was set to an invalid value, possibly because the syntax is not valid. + + -or- + The is . @@ -669,59 +669,59 @@ Gets or sets permissions associated with the queue. A that contains one or more access control entries that specify the trustees and permissions to grant for the queue. - property, add instances to your collection. When you construct each access control entry, you can specify generic or standard access rights. The rights to a queue can be any combination of the following: - -- Delete - -- Read Security - -- Write Security - -- Synchronize - -- Modify Owner - -- Read - -- Write - -- Execute - -- Required - -- All - -- None - - These rights are a set of bit flags that you can combine using the bitwise OR: - -- Full Control - -- Delete Message - -- Receive Message - -- Peek Message - -- Receive Journal Message - -- Get Queue Properties - -- Set Queue Properties - -- Get Permissions - -- Set Permissions - -- Take Queue Ownership - -- Write Message - + property, add instances to your collection. When you construct each access control entry, you can specify generic or standard access rights. The rights to a queue can be any combination of the following: + +- Delete + +- Read Security + +- Write Security + +- Synchronize + +- Modify Owner + +- Read + +- Write + +- Execute + +- Required + +- All + +- None + + These rights are a set of bit flags that you can combine using the bitwise OR: + +- Full Control + +- Delete Message + +- Receive Message + +- Peek Message + +- Receive Journal Message + +- Get Queue Properties + +- Set Queue Properties + +- Get Permissions + +- Set Permissions + +- Take Queue Ownership + +- Write Message + ]]> @@ -751,15 +751,15 @@ A that contains the pre-installation state of the computer. Restores the computer to the state it was in before the installation, by rolling back the queue information that the installation procedure wrote to the registry. This method is meant to be used by installation tools, which automatically call the appropriate methods. - method undoes the effects of the method. is called if the installation of any component in the installation project fails. The method creates or sets the properties for a queue. either deletes the queue or resets the properties of a pre-existing queue to their pre-installation values. - - Typically, you do not call the methods of the from within your code; they are generally called only by the InstallUtil.exe installation utility. The utility automatically calls the method after an installation failure to undo any changes that the installation process has already made. - - An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information, which is passed to as the `savedState` parameter, is continuously updated as the utility rolls back each instance. Usually, it is not necessary for your code to explicitly modify this state information. - + method undoes the effects of the method. is called if the installation of any component in the installation project fails. The method creates or sets the properties for a queue. either deletes the queue or resets the properties of a pre-existing queue to their pre-installation values. + + Typically, you do not call the methods of the from within your code; they are generally called only by the InstallUtil.exe installation utility. The utility automatically calls the method after an installation failure to undo any changes that the installation process has already made. + + An application's install routine uses the project installer's to automatically maintain information about the components that have already been installed. This state information, which is passed to as the `savedState` parameter, is continuously updated as the utility rolls back each instance. Usually, it is not necessary for your code to explicitly modify this state information. + ]]> @@ -796,11 +796,11 @@ if the queue can only accept messages sent as part of a transaction; otherwise, . The default is . - @@ -829,15 +829,15 @@ A that contains the post-installation state of the computer. Removes an installation by removing queue information from the registry. This method is meant to be used by uninstallation tools, which automatically call the appropriate methods. - is `Remove`, also deletes the queue associated with the . - - Typically, you do not call the methods of the from within your code; they are generally called only by the InstallUtil.exe installation utility (in uninstall mode). The utility automatically calls the method to restore the parts of the system that were affected by the installation to their pre-installation states. This includes deleting registry information that is associated with the MessageQueue being uninstalled. - - An application's uninstall routine uses the project installer's to automatically maintain information about the components that have already been uninstalled. This state information, which is passed to as the `savedState` parameter, is continuously updated as the utility uninstalls each instance. Usually, it is not necessary for your code to explicitly modify this state information. - + is `Remove`, also deletes the queue associated with the . + + Typically, you do not call the methods of the from within your code; they are generally called only by the InstallUtil.exe installation utility (in uninstall mode). The utility automatically calls the method to restore the parts of the system that were affected by the installation to their pre-installation states. This includes deleting registry information that is associated with the MessageQueue being uninstalled. + + An application's uninstall routine uses the project installer's to automatically maintain information about the components that have already been uninstalled. This state information, which is passed to as the `savedState` parameter, is continuously updated as the utility uninstalls each instance. Usually, it is not necessary for your code to explicitly modify this state information. + ]]> @@ -871,11 +871,11 @@ Gets or sets a value that indicates what the installer does with the queue at uninstall time: remove it, restore it to its pre-installation state, or leave it in its current installed state. One of the values that indicates what state to leave the queue in when the is uninstalled. The default is . - to their pre-installation values. - + to their pre-installation values. + ]]> @@ -909,13 +909,13 @@ to copy messages that are retrieved from the queue to the journal queue; otherwise, . The default is . - diff --git a/xml/System.Messaging/XmlMessageFormatter.xml b/xml/System.Messaging/XmlMessageFormatter.xml index ca5983d2844..a42ef711ec6 100644 --- a/xml/System.Messaging/XmlMessageFormatter.xml +++ b/xml/System.Messaging/XmlMessageFormatter.xml @@ -25,54 +25,54 @@ Serializes and deserializes objects to or from the body of a message, using the XML format based on the XSD schema definition. - is the default formatter that an instance of uses to serialize messages written to the queue. When you create an instance of , an instance of is created for you and associated with the . You can specify a different formatter by creating it in your code and assigning it to the property of your . - - A queue's default instance can be used to write to the queue, but it cannot be used to read from the queue until you set either the or property on the formatter. You can either set one or both of these values on the default formatter instance, or you can create a new instance of the formatter and set the values automatically by passing them as arguments into the appropriate constructor. - - When specifying rather than , type existence is checked at compile time rather than read time, reducing possibility for error. requires every entry to be fully qualified, specifying its assembly name. Further, when working with multiple concurrent versions, the version number must also be appended to the target type name as well. - - The and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. - - The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. - - Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which property to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown when the message is read. - - The is a crucial component of loosely coupled XML-based messaging. The XSD.exe utility uses the XML format is used to generate XML schema, such as when you use the utility to serialize a class used by your application. The class must have a parameterless constructor. - - The format is used again in the reverse process when the utility generates a class based on the schema you distribute to describe your class data. The use of the utility and the XML schema it generates enables you to avoid redistributing.dll files every time you recompile a class after the implementation of your class has changed. As long as the schema does not change on the client or the server, other changes on either side do not affect the other. - - - -## Examples - The following code example includes three pieces of code: a server component, an order class, and client code. The order class can be used by the XSD.exe utility to generate schema that the server recognizes within incoming messages. The schema is an XML formatted file that describes the "shape" of the class. This schema can then be used on the client side to generate a client-specific order class that shares the same schema as the server class. - - The following code example represents a server component that receives orders through a message queue. The body of the message should be an order object whose schema matches the Order.cs class below. The server process or application deserializes the order. - + is the default formatter that an instance of uses to serialize messages written to the queue. When you create an instance of , an instance of is created for you and associated with the . You can specify a different formatter by creating it in your code and assigning it to the property of your . + + A queue's default instance can be used to write to the queue, but it cannot be used to read from the queue until you set either the or property on the formatter. You can either set one or both of these values on the default formatter instance, or you can create a new instance of the formatter and set the values automatically by passing them as arguments into the appropriate constructor. + + When specifying rather than , type existence is checked at compile time rather than read time, reducing possibility for error. requires every entry to be fully qualified, specifying its assembly name. Further, when working with multiple concurrent versions, the version number must also be appended to the target type name as well. + + The and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. + + The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. + + Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which property to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown when the message is read. + + The is a crucial component of loosely coupled XML-based messaging. The XSD.exe utility uses the XML format is used to generate XML schema, such as when you use the utility to serialize a class used by your application. The class must have a parameterless constructor. + + The format is used again in the reverse process when the utility generates a class based on the schema you distribute to describe your class data. The use of the utility and the XML schema it generates enables you to avoid redistributing.dll files every time you recompile a class after the implementation of your class has changed. As long as the schema does not change on the client or the server, other changes on either side do not affect the other. + + + +## Examples + The following code example includes three pieces of code: a server component, an order class, and client code. The order class can be used by the XSD.exe utility to generate schema that the server recognizes within incoming messages. The schema is an XML formatted file that describes the "shape" of the class. This schema can then be used on the client side to generate a client-specific order class that shares the same schema as the server class. + + The following code example represents a server component that receives orders through a message queue. The body of the message should be an order object whose schema matches the Order.cs class below. The server process or application deserializes the order. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/XmlMessageFormatter/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/VB/source.vb" id="Snippet1"::: - - The following code example represents the order class that provides a schema for the order objects that the application on the server receives and deserializes. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/VB/source.vb" id="Snippet1"::: + + The following code example represents the order class that provides a schema for the order objects that the application on the server receives and deserializes. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/CPP/source2.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/XmlMessageFormatter/Overview/source2.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/VB/source2.vb" id="Snippet2"::: - - Any client application that interacts with the application on the server must send messages to the server by serializing information in a locally defined order class into the message body. The locally defined order class must have the same schema as the server-defined order class into which the application on the server will attempt to deserialize the message body. The XSD.exe utility lets the manager of the application on the server create and distribute the schema the client must use to serialize messages going to the server. - - When the manager of the client application receives the schema for the order class, the XSD.exe utility is used again to generate a client-specific order class from the schema. It is this class that is used in the client code example below, not the server's order class (the XSD.exe utility causes the schema-generated class to have the same name as the original class). This new order class is used to serialize the order into the message body. - - The following code example is the client-side processing, used to serialize an order and send the information associated with the order to a queue. The code associates Item, Quantity, and Address information with elements of the schema that were generated for the Order.cs class by the XSD.exe utility. An order is sent to the Orders queue on the local computer. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/VB/source2.vb" id="Snippet2"::: + + Any client application that interacts with the application on the server must send messages to the server by serializing information in a locally defined order class into the message body. The locally defined order class must have the same schema as the server-defined order class into which the application on the server will attempt to deserialize the message body. The XSD.exe utility lets the manager of the application on the server create and distribute the schema the client must use to serialize messages going to the server. + + When the manager of the client application receives the schema for the order class, the XSD.exe utility is used again to generate a client-specific order class from the schema. It is this class that is used in the client code example below, not the server's order class (the XSD.exe utility causes the schema-generated class to have the same name as the original class). This new order class is used to serialize the order into the message body. + + The following code example is the client-side processing, used to serialize an order and send the information associated with the order to a queue. The code associates Item, Quantity, and Address information with elements of the schema that were generated for the Order.cs class by the XSD.exe utility. An order is sent to the Orders queue on the local computer. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/CPP/source3.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/XmlMessageFormatter/Overview/source3.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/VB/source3.vb" id="Snippet3"::: - - After the schema is generated from the order class on the server, you can modify the class. Unless the schema changes, you do not need to redistribute the schema. After you have distributed the schema and generated a client-side order class, that client class can also be modified independently of the server's order class, as long as the schema itself is not modified. The two classes have become loosely coupled. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic XmlMessageFormatter Example/VB/source3.vb" id="Snippet3"::: + + After the schema is generated from the order class on the server, you can modify the class. Unless the schema changes, you do not need to redistribute the schema. After you have distributed the schema and generated a client-side order class, that client class can also be modified independently of the server's order class, as long as the schema itself is not modified. The two classes have become loosely coupled. + ]]> @@ -107,15 +107,15 @@ Initializes a new instance of the class, without target types set. - created using this constructor, you must set the or properties so the formatter knows what types to attempt to deserialize. - - When you create a new , a default instance is created, without the target types set. As with a formatter created using this constructor, you must set target types for that formatter instance if you want to read from the queue. - + created using this constructor, you must set the or properties so the formatter knows what types to attempt to deserialize. + + When you create a new , a default instance is created, without the target types set. As with a formatter created using this constructor, you must set target types for that formatter instance if you want to read from the queue. + ]]> @@ -141,26 +141,26 @@ An array of type that specifies the set of possible types that will be deserialized by the formatter from the message provided. These values must be fully qualified, for example, "MyNamespace.MyOrders, MyOrdersAssemblyName". Initializes a new instance of the class, setting target types passed in as an array of (fully qualified) string values. - constructor sets the property to the array values passed in through the `targetTypeNames` parameter. Setting this property enables a using this instance to read messages containing objects of given types. - - Both the and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. - - The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. - - Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which one to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown at read time. - - - -## Examples + constructor sets the property to the array values passed in through the `targetTypeNames` parameter. Setting this property enables a using this instance to read messages containing objects of given types. + + Both the and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. + + The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. + + Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which one to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown at read time. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Message.Body/CPP/message_sendreceive.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/Message/Overview/message_sendreceive.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Body/VB/message_sendreceive.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Body/VB/message_sendreceive.vb" id="Snippet1"::: + ]]> The parameter is . @@ -187,27 +187,27 @@ An array of type that specifies the set of possible types that will be deserialized by the formatter from the message provided. Initializes a new instance of the class, setting target types passed in as an array of object types. - constructor sets the property to the array values passed in through the `targetTypes` parameter. Setting this property enables a using this instance to read messages containing objects of the given types. - - Both the and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. - - The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. - - Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which one to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown at read time. - - When specifying rather than , type existence is checked at compile time rather than read time, reducing possibility for error. requires every entry to be fully qualified, specifying its assembly name. Further, when working with multiple concurrent versions, the version number must also be appended to the target type name as well. - - When using , you can add each object (for example, `MyClass`) to the list in a way demonstrated by the following C# code. - -``` -TargetTypes = new Type[]{typeof(MyClass)} -``` - + constructor sets the property to the array values passed in through the `targetTypes` parameter. Setting this property enables a using this instance to read messages containing objects of the given types. + + Both the and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. + + The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. + + Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which one to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown at read time. + + When specifying rather than , type existence is checked at compile time rather than read time, reducing possibility for error. requires every entry to be fully qualified, specifying its assembly name. Further, when working with multiple concurrent versions, the version number must also be appended to the target type name as well. + + When using , you can add each object (for example, `MyClass`) to the list in a way demonstrated by the following C# code. + +``` +TargetTypes = new Type[]{typeof(MyClass)} +``` + ]]> The parameter is . @@ -242,17 +242,17 @@ TargetTypes = new Type[]{typeof(MyClass)} if the XML formatter can deserialize the message; otherwise, . - is called, the formatter attempts to determine if the contents of the message are something it can deserialize. The formatter can only deserialize the message if the type in the message body has the same schema as one of the types in the array represented by the and properties. returns `false` under the following two circumstances: - -- The message was not formatted using the . - -- The schema of the message body is not among those listed in either the or property. - - The and properties tell the formatter what types of objects it must be able to deserialize. If any type is missing from the list, yet is found within the message, returns `false`. - + is called, the formatter attempts to determine if the contents of the message are something it can deserialize. The formatter can only deserialize the message if the type in the message body has the same schema as one of the types in the array represented by the and properties. returns `false` under the following two circumstances: + +- The message was not formatted using the . + +- The schema of the message body is not among those listed in either the or property. + + The and properties tell the formatter what types of objects it must be able to deserialize. If any type is missing from the list, yet is found within the message, returns `false`. + ]]> Neither the nor property has been set. @@ -288,11 +288,11 @@ TargetTypes = new Type[]{typeof(MyClass)} Creates an instance of the class whose read/write properties (the sets of target types) are the same as the current instance. An object whose properties are identical to those of this instance, but whose metadata does not specify it to be a formatter class instance. - object. - + object. + ]]> @@ -326,21 +326,21 @@ TargetTypes = new Type[]{typeof(MyClass)} Reads the contents from the given message and creates an object that contains the deserialized message. The deserialized message. - and properties tell the formatter what schemas to attempt to match when deserializing a message. One of these properties must be set before the message can be deserialized. - - The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. - - The target types do not have to be specified in order to write to the queue. - + and properties tell the formatter what schemas to attempt to match when deserializing a message. One of these properties must be set before the message can be deserialized. + + The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. + + The target types do not have to be specified in order to write to the queue. + ]]> - Neither the nor property has been set. - - -or- - + Neither the nor property has been set. + + -or- + The instance serialized in the message body does not comply with any of the schemas represented by the types in the and properties. The parameter is . @@ -377,19 +377,19 @@ TargetTypes = new Type[]{typeof(MyClass)} Specifies the set of possible types that will be deserialized by the formatter from the message provided. An array of type that specifies the types of objects to deserialize from the message body when reading the message. - and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. - - The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. - - Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which property to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown when the message is read. - - requires every entry to be fully qualified, specifying its assembly name. Further, when working with multiple concurrent versions, the version number must also be appended to the target type name as well. - - The target types are only required when reading from the queue. The and properties do not need to be set to write to the queue. - + and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. + + The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. + + Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which property to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown when the message is read. + + requires every entry to be fully qualified, specifying its assembly name. Further, when working with multiple concurrent versions, the version number must also be appended to the target type name as well. + + The target types are only required when reading from the queue. The and properties do not need to be set to write to the queue. + ]]> The property is . @@ -433,30 +433,30 @@ TargetTypes = new Type[]{typeof(MyClass)} Specifies the set of possible types that will be deserialized by the formatter from the message provided. An array of type that specifies the types of objects to deserialize from the message body when reading the message. - and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. - - The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. - - Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which property to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown when the message is read. - - The target types are only required when reading from the queue. The and properties do not need to be set to write to the queue. - - When specifying rather than , type existence is checked at compile time rather than read time, reducing possibility for error. - - When using , you can add each object (for example, `MyClass`) to the list in a way demonstrated by the C# code `TargetTypes = new Type[]{typeof(MyClass), typeof (MyOtherClass)};`. - - - -## Examples - The following code example sends and receives a message that contains an order to and from a queue. - + and properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body. + + The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it. + + Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which property to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown when the message is read. + + The target types are only required when reading from the queue. The and properties do not need to be set to write to the queue. + + When specifying rather than , type existence is checked at compile time rather than read time, reducing possibility for error. + + When using , you can add each object (for example, `MyClass`) to the list in a way demonstrated by the C# code `TargetTypes = new Type[]{typeof(MyClass), typeof (MyOtherClass)};`. + + + +## Examples + The following code example sends and receives a message that contains an order to and from a queue. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Message.Body/CPP/message_sendreceive.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Messaging/Message/Overview/message_sendreceive.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Body/VB/message_sendreceive.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Message.Body/VB/message_sendreceive.vb" id="Snippet1"::: + ]]> The property is . @@ -494,19 +494,19 @@ TargetTypes = new Type[]{typeof(MyClass)} The to be serialized into the message body. Serializes an object into the body of the message. - or property is used by the formatter only when deserializing a message. - - The makes use of the class, which defines what can be serialized. Only public fields and public properties can be serialized. Structures, structures with arrays, and arrays of structures are all serializable, as long as they do not use the encoded style with the SOAP protocol. - + or property is used by the formatter only when deserializing a message. + + The makes use of the class, which defines what can be serialized. Only public fields and public properties can be serialized. Structures, structures with arrays, and arrays of structures are all serializable, as long as they do not use the encoded style with the SOAP protocol. + ]]> - The parameter is . - - -or- - + The parameter is . + + -or- + The parameter is . diff --git a/xml/System.Net.Configuration/HttpListenerElement.xml b/xml/System.Net.Configuration/HttpListenerElement.xml index 25a259eff8f..b0e6c3b1b41 100644 --- a/xml/System.Net.Configuration/HttpListenerElement.xml +++ b/xml/System.Net.Configuration/HttpListenerElement.xml @@ -16,74 +16,74 @@ Represents the HttpListener element in the configuration file. This class cannot be inherited. - Element (Network Settings) configuration element. This class provides programmatic access to information that can be stored in configuration files. - - The property indicates if uses the raw unescaped URI instead of the converted URI where any percent-encoded values are converted and other normalization steps are taken. - - When a instance receives a request through the `http.sys` service, it creates an instance of the URI string provided by `http.sys`, and exposes it as the property. - - The `http.sys` service exposes two request URI strings: - -- Raw URI - -- Converted URI - - The raw URI is the provided in the request line of a HTTP request: - - `GET /path/` - - `Host: www.contoso.com` - - The raw URI provided by `http.sys` for the request mentioned above, is "/path/". This represents the string following the HTTP verb as it was sent over the network. - - The `http.sys` service creates a converted URI from the information provided in the request by using the URI provided in the HTTP request line and the Host header to determine the origin server the request should be forwarded to. This is done by comparing the information from the request with a set of registered URI prefixes. The HTTP Server SDK documentation refers to this converted URI as the [HTTP_COOKED_URL](https://go.microsoft.com/fwlink/?LinkID=166108) structure. - - In order to be able to compare the request with registered URI prefixes, some normalization to the request needs to be done. For the sample above the converted URI would be as follows: - - `http://www.contoso.com/path/` - - The `http.sys` service combines the property value and the string in the request line to create a converted URI. In addition, `http.sys` and the class also do the following: - -- Un-escapes all percent encoded values. - -- Converts percent-encoded non-ASCII characters into a UTF-16 character representation. Note that UTF-8 and ANSI/DBCS characters are supported as well as Unicode characters (Unicode encoding using the %uXXXX format). - -- Executes other normalization steps, like path compression. - - Since the request doesn't contain any information about the encoding used for percent-encoded values, it may not be possible to determine the correct encoding just by parsing the percent-encoded values. - - Therefore `http.sys` provides two registry keys for modifying the process: - -|Registry Key|Default Value|Description| -|------------------|-------------------|-----------------| -|EnableNonUTF8|1|If zero, `http.sys` accepts only UTF-8-encoded URLs.

If non-zero, `http.sys` also accepts ANSI-encoded or DBCS-encoded URLs in requests.| -|FavorUTF8|1|If non-zero, `http.sys` always tries to decode a URL as UTF-8 first; if that conversion fails and EnableNonUTF8 is non-zero, Http.sys then tries to decode it as ANSI or DBCS.

If zero (and EnableNonUTF8 is non-zero), `http.sys` tries to decode it as ANSI or DBCS; if that is not successful, it tries a UTF-8 conversion.| - - When receives a request, it uses the converted URI from `http.sys` as input to the property. - - There is a need for supporting characters besides characters and numbers in URIs. An example is the following URI, which is used to retrieve customer information for customer number "1/3812": - - `http://www.contoso.com/Customer('1%2F3812')/` - - Note the percent-encoded slash in the Uri (%2F). This is necessary, since in this case the slash character represents data and not a path delimiter. - - Passing the string to Uri constructor will lead to the following URI: - - `http://www.contoso.com/Customer('1/3812')/` - - Splitting the path into its segments would result in the following elements: - - `Customer('1` - - `3812')` - - This is not the intent of the sender of the request. - - If the property is set to false, then when the receives a request, it uses the raw URI instead of the converted URI from `http.sys` as input to the property. - + Element (Network Settings) configuration element. This class provides programmatic access to information that can be stored in configuration files. + + The property indicates if uses the raw unescaped URI instead of the converted URI where any percent-encoded values are converted and other normalization steps are taken. + + When a instance receives a request through the `http.sys` service, it creates an instance of the URI string provided by `http.sys`, and exposes it as the property. + + The `http.sys` service exposes two request URI strings: + +- Raw URI + +- Converted URI + + The raw URI is the provided in the request line of a HTTP request: + + `GET /path/` + + `Host: www.contoso.com` + + The raw URI provided by `http.sys` for the request mentioned above, is "/path/". This represents the string following the HTTP verb as it was sent over the network. + + The `http.sys` service creates a converted URI from the information provided in the request by using the URI provided in the HTTP request line and the Host header to determine the origin server the request should be forwarded to. This is done by comparing the information from the request with a set of registered URI prefixes. The HTTP Server SDK documentation refers to this converted URI as the [HTTP_COOKED_URL](https://go.microsoft.com/fwlink/?LinkID=166108) structure. + + In order to be able to compare the request with registered URI prefixes, some normalization to the request needs to be done. For the sample above the converted URI would be as follows: + + `http://www.contoso.com/path/` + + The `http.sys` service combines the property value and the string in the request line to create a converted URI. In addition, `http.sys` and the class also do the following: + +- Un-escapes all percent encoded values. + +- Converts percent-encoded non-ASCII characters into a UTF-16 character representation. Note that UTF-8 and ANSI/DBCS characters are supported as well as Unicode characters (Unicode encoding using the %uXXXX format). + +- Executes other normalization steps, like path compression. + + Since the request doesn't contain any information about the encoding used for percent-encoded values, it may not be possible to determine the correct encoding just by parsing the percent-encoded values. + + Therefore `http.sys` provides two registry keys for modifying the process: + +|Registry Key|Default Value|Description| +|------------------|-------------------|-----------------| +|EnableNonUTF8|1|If zero, `http.sys` accepts only UTF-8-encoded URLs.

If non-zero, `http.sys` also accepts ANSI-encoded or DBCS-encoded URLs in requests.| +|FavorUTF8|1|If non-zero, `http.sys` always tries to decode a URL as UTF-8 first; if that conversion fails and EnableNonUTF8 is non-zero, Http.sys then tries to decode it as ANSI or DBCS.

If zero (and EnableNonUTF8 is non-zero), `http.sys` tries to decode it as ANSI or DBCS; if that is not successful, it tries a UTF-8 conversion.| + + When receives a request, it uses the converted URI from `http.sys` as input to the property. + + There is a need for supporting characters besides characters and numbers in URIs. An example is the following URI, which is used to retrieve customer information for customer number "1/3812": + + `http://www.contoso.com/Customer('1%2F3812')/` + + Note the percent-encoded slash in the Uri (%2F). This is necessary, since in this case the slash character represents data and not a path delimiter. + + Passing the string to Uri constructor will lead to the following URI: + + `http://www.contoso.com/Customer('1/3812')/` + + Splitting the path into its segments would result in the following elements: + + `Customer('1` + + `3812')` + + This is not the intent of the sender of the request. + + If the property is set to false, then when the receives a request, it uses the raw URI instead of the converted URI from `http.sys` as input to the property. + ]]>
@@ -197,72 +197,72 @@ Gets a value that indicates if uses the raw unescaped URI instead of the converted URI. A Boolean value that indicates if uses the raw unescaped URI, rather than the converted URI. - property indicates if uses the raw unescaped URI instead of the converted URI where any percent-encoded values are converted and other normalization steps are taken. - - When a instance receives a request through the `http.sys` service, it creates an instance of the URI string provided by `http.sys`, and exposes it as the property. - - The `http.sys` service exposes two request URI strings: - -- Raw URI - -- Converted URI - - The raw URI is the provided in the request line of a HTTP request: - - `GET /path/` - - `Host: www.contoso.com` - - The raw URI provided by `http.sys` for the request mentioned above, is "/path/". This represents the string following the HTTP verb as it was sent over the network. - - The `http.sys` service creates a converted URI from the information provided in the request by using the URI provided in the HTTP request line and the Host header to determine the origin server the request should be forwarded to. This is done by comparing the information from the request with a set of registered URI prefixes. The HTTP Server SDK documentation refers to this converted URI as the [HTTP_COOKED_URL](https://go.microsoft.com/fwlink/?LinkID=166108) structure. - - In order to be able to compare the request with registered URI prefixes, some normalization to the request needs to be done. For the sample above the converted URI would be as follows: - - `http://www.contoso.com/path/` - - The `http.sys` service combines the property value and the string in the request line to create a converted URI. In addition, `http.sys` and the class also do the following: - -- Un-escapes all percent encoded values. - -- Converts percent-encoded non-ASCII characters into a UTF-16 character representation. Note that UTF-8 and ANSI/DBCS characters are supported as well as Unicode characters (Unicode encoding using the %uXXXX format). - -- Executes other normalization steps, like path compression. - - Since the request doesn't contain any information about the encoding used for percent-encoded values, it may not be possible to determine the correct encoding just by parsing the percent-encoded values. - - Therefore `http.sys` provides two registry keys for modifying the process: - -|Registry Key|Default Value|Description| -|------------------|-------------------|-----------------| -|EnableNonUTF8|1|If zero, `http.sys` accepts only UTF-8-encoded URLs.

If non-zero, `http.sys` also accepts ANSI-encoded or DBCS-encoded URLs in requests.| -|FavorUTF8|1|If non-zero, `http.sys` always tries to decode a URL as UTF-8 first; if that conversion fails and EnableNonUTF8 is non-zero, Http.sys then tries to decode it as ANSI or DBCS.

If zero (and EnableNonUTF8 is non-zero), `http.sys` tries to decode it as ANSI or DBCS; if that is not successful, it tries a UTF-8 conversion.| - - When receives a request, it uses the converted URI from `http.sys` as input to the property. - - There is a need for supporting characters besides characters and numbers in URIs. An example is the following URI, which is used to retrieve customer information for customer number "1/3812": - - `http://www.contoso.com/Customer('1%2F3812')/` - - Note the percent-encoded slash in the Uri (%2F). This is necessary, since in this case the slash character represents data and not a path delimiter. - - Passing the string to Uri constructor will lead to the following URI: - - `http://www.contoso.com/Customer('1/3812')/` - - Splitting the path into its segments would result in the following elements: - - `Customer('1` - - `3812')` - - This is not the intent of the sender of the request. - - If the property is set to false, then when the receives a request, it uses the raw URI instead of the converted URI from `http.sys` as input to the property. - + property indicates if uses the raw unescaped URI instead of the converted URI where any percent-encoded values are converted and other normalization steps are taken. + + When a instance receives a request through the `http.sys` service, it creates an instance of the URI string provided by `http.sys`, and exposes it as the property. + + The `http.sys` service exposes two request URI strings: + +- Raw URI + +- Converted URI + + The raw URI is the provided in the request line of a HTTP request: + + `GET /path/` + + `Host: www.contoso.com` + + The raw URI provided by `http.sys` for the request mentioned above, is "/path/". This represents the string following the HTTP verb as it was sent over the network. + + The `http.sys` service creates a converted URI from the information provided in the request by using the URI provided in the HTTP request line and the Host header to determine the origin server the request should be forwarded to. This is done by comparing the information from the request with a set of registered URI prefixes. The HTTP Server SDK documentation refers to this converted URI as the [HTTP_COOKED_URL](https://go.microsoft.com/fwlink/?LinkID=166108) structure. + + In order to be able to compare the request with registered URI prefixes, some normalization to the request needs to be done. For the sample above the converted URI would be as follows: + + `http://www.contoso.com/path/` + + The `http.sys` service combines the property value and the string in the request line to create a converted URI. In addition, `http.sys` and the class also do the following: + +- Un-escapes all percent encoded values. + +- Converts percent-encoded non-ASCII characters into a UTF-16 character representation. Note that UTF-8 and ANSI/DBCS characters are supported as well as Unicode characters (Unicode encoding using the %uXXXX format). + +- Executes other normalization steps, like path compression. + + Since the request doesn't contain any information about the encoding used for percent-encoded values, it may not be possible to determine the correct encoding just by parsing the percent-encoded values. + + Therefore `http.sys` provides two registry keys for modifying the process: + +|Registry Key|Default Value|Description| +|------------------|-------------------|-----------------| +|EnableNonUTF8|1|If zero, `http.sys` accepts only UTF-8-encoded URLs.

If non-zero, `http.sys` also accepts ANSI-encoded or DBCS-encoded URLs in requests.| +|FavorUTF8|1|If non-zero, `http.sys` always tries to decode a URL as UTF-8 first; if that conversion fails and EnableNonUTF8 is non-zero, Http.sys then tries to decode it as ANSI or DBCS.

If zero (and EnableNonUTF8 is non-zero), `http.sys` tries to decode it as ANSI or DBCS; if that is not successful, it tries a UTF-8 conversion.| + + When receives a request, it uses the converted URI from `http.sys` as input to the property. + + There is a need for supporting characters besides characters and numbers in URIs. An example is the following URI, which is used to retrieve customer information for customer number "1/3812": + + `http://www.contoso.com/Customer('1%2F3812')/` + + Note the percent-encoded slash in the Uri (%2F). This is necessary, since in this case the slash character represents data and not a path delimiter. + + Passing the string to Uri constructor will lead to the following URI: + + `http://www.contoso.com/Customer('1/3812')/` + + Splitting the path into its segments would result in the following elements: + + `Customer('1` + + `3812')` + + This is not the intent of the sender of the request. + + If the property is set to false, then when the receives a request, it uses the raw URI instead of the converted URI from `http.sys` as input to the property. + ]]>
diff --git a/xml/System.Net.Configuration/HttpWebRequestElement.xml b/xml/System.Net.Configuration/HttpWebRequestElement.xml index 7a3d9e054f9..e59b4eeaf50 100644 --- a/xml/System.Net.Configuration/HttpWebRequestElement.xml +++ b/xml/System.Net.Configuration/HttpWebRequestElement.xml @@ -17,15 +17,15 @@ Represents the maximum length for response headers. This class cannot be inherited. - and classes. - - This class provides programmatic access to information that can be stored in configuration files. - + and classes. + + This class provides programmatic access to information that can be stored in configuration files. + ]]> @@ -48,11 +48,11 @@ Initializes a new instance of the class. - object that represents the to the collection. - + object that represents the to the collection. + ]]> @@ -113,13 +113,13 @@ Gets or sets the maximum allowed length of the response headers. A 32-bit signed integer containing the maximum length in kilobytes (1024 bytes) of the response headers. The default value is 64. - @@ -150,8 +150,8 @@ Gets or sets the maximum length of an upload in response to an unauthorized error code. - A 32-bit signed integer containing the maximum length (in multiple of 1,024 byte units) of an upload in response to an unauthorized error code. A value of -1 indicates that no size limit will be imposed on the upload. Setting the property to any other value will only send the request body if it is smaller than the number of bytes specified. So a value of 1 would indicate to only send the request body if it is smaller than 1,024 bytes. - + A 32-bit signed integer containing the maximum length (in multiple of 1,024 byte units) of an upload in response to an unauthorized error code. A value of -1 indicates that no size limit will be imposed on the upload. Setting the property to any other value will only send the request body if it is smaller than the number of bytes specified. So a value of 1 would indicate to only send the request body if it is smaller than 1,024 bytes. + The default value for this property is -1. To be added. @@ -235,25 +235,25 @@ Setting this property ignores validation errors that occur during HTTP parsing. Boolean that indicates whether this property has been set. - exception is thrown with the status set to . If the `UseUnsafeHeaderParsing` property is set to `true`, validation errors are ignored. - - Setting this property to `true` has security implications, so it should only be done if backward compatibility with a server is required. - + exception is thrown with the status set to . If the `UseUnsafeHeaderParsing` property is set to `true`, validation errors are ignored. + + Setting this property to `true` has security implications, so it should only be done if backward compatibility with a server is required. + ]]> diff --git a/xml/System.Net.Configuration/WebRequestModuleElement.xml b/xml/System.Net.Configuration/WebRequestModuleElement.xml index 93eb495868c..af1b3d01464 100644 --- a/xml/System.Net.Configuration/WebRequestModuleElement.xml +++ b/xml/System.Net.Configuration/WebRequestModuleElement.xml @@ -17,27 +17,27 @@ Represents a URI prefix and the associated class that handles creating Web requests for the prefix. This class cannot be inherited. - and classes, applications can request resources for any valid . Use this configuration element to specify a module that is registered to work with the overloads to create new requests. - - This class corresponds to the [<add> Element for webRequestModules (Network Settings)](/dotnet/framework/configure-apps/file-schema/network/add-element-for-webrequestmodules-network-settings) configuration element. - - This class is used to specify modules registered to authenticate requests made with the and classes. - - This class provides programmatic access to information that can be stored in configuration files. - - The .NET Framework version 2.0 provides Web request modules that create requests for resources with the following prefixes: - -- HTTP - -- HTTPS - -- FTP - -- FILE - + and classes, applications can request resources for any valid . Use this configuration element to specify a module that is registered to work with the overloads to create new requests. + + This class corresponds to the [<add> Element for webRequestModules (Network Settings)](/dotnet/framework/configure-apps/file-schema/network/add-element-for-webrequestmodules-network-settings) configuration element. + + This class is used to specify modules registered to authenticate requests made with the and classes. + + This class provides programmatic access to information that can be stored in configuration files. + + The .NET Framework version 2.0 provides Web request modules that create requests for resources with the following prefixes: + +- HTTP + +- HTTPS + +- FTP + +- FILE + ]]> @@ -91,13 +91,13 @@ A string containing the type and assembly information for the class that handles creating requests for resources that use the URI prefix. Initializes a new instance of the class using the specified URI prefix and type information. - property is set to `prefix` and the property is set to `type`. - + property is set to `prefix` and the property is set to `type`. + ]]> @@ -124,11 +124,11 @@ A that identifies the class that handles creating requests for resources that use the URI prefix. Initializes a new instance of the class using the specified URI prefix and type identifier. - property is set to `prefix` and the property is set to `type`. - + property is set to `prefix` and the property is set to `type`. + ]]> @@ -159,19 +159,19 @@ Gets or sets the URI prefix for the current Web request module. A string that contains a URI prefix. -
@@ -234,21 +234,21 @@ Gets or sets a class that creates Web requests. A instance that identifies a Web request module. - and classes, applications can request resources for any valid . Use this property to specify a type that is registered to work with the method to create new requests. - - The .NET Framework version 2.0 provides Web request modules that create requests for resources with the following prefixes: - -- HTTP - -- HTTPS - -- FTP - -- FILE - + and classes, applications can request resources for any valid . Use this property to specify a type that is registered to work with the method to create new requests. + + The .NET Framework version 2.0 provides Web request modules that create requests for resources with the following prefixes: + +- HTTP + +- HTTPS + +- FTP + +- FILE + ]]> diff --git a/xml/System.Net.Http/HttpClientHandler.xml b/xml/System.Net.Http/HttpClientHandler.xml index 5bb51b4934b..7df9dda569f 100644 --- a/xml/System.Net.Http/HttpClientHandler.xml +++ b/xml/System.Net.Http/HttpClientHandler.xml @@ -1234,8 +1234,8 @@ handler.ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousA System.Security.Authentication.SslProtocols - Gets or sets the TLS/SSL protocol used by the objects managed by the HttpClientHandler object. - One of the values defined in the enumeration. + Gets or sets the TLS/SSL protocols used by the objects managed by the HttpClientHandler object. + A bitwise combination of the enumeration values that specify the TLS/SSL protocols. To be added. .NET Framework 4.7.1 only: This property is not implemented. diff --git a/xml/System.Net.Http/WebRequestHandler.xml b/xml/System.Net.Http/WebRequestHandler.xml index 1a416f2eb79..84e739c5beb 100644 --- a/xml/System.Net.Http/WebRequestHandler.xml +++ b/xml/System.Net.Http/WebRequestHandler.xml @@ -16,11 +16,11 @@ Provides desktop-specific features not available to Windows Store apps or other environments. - instances to send HTTP requests to servers. - + instances to send HTTP requests to servers. + ]]> @@ -59,15 +59,15 @@ Gets or sets a value that indicates whether to pipeline the request to the Internet resource. - Returns . - + Returns . + if the request should be pipelined; otherwise, . The default is . - property to indicate a preference for pipelined connections. When is `true`, an application makes pipelined connections to the servers that support them. - + property to indicate a preference for pipelined connections. When is `true`, an application makes pipelined connections to the servers that support them. + ]]> @@ -91,11 +91,11 @@ Gets or sets a value indicating the level of authentication and impersonation used for this request. A bitwise combination of the values. The default value is . - and values are relevant for Kerberos authentication. Kerberos authentication can be supported directly, or can be used if the Negotiate security protocol is used to select the actual security protocol. For more information about authentication protocols, see [Internet Authentication](/dotnet/framework/network-programming/internet-authentication). - + and values are relevant for Kerberos authentication. Kerberos authentication can be supported directly, or can be used if the Negotiate security protocol is used to select the actual security protocol. For more information about authentication protocols, see [Internet Authentication](/dotnet/framework/network-programming/internet-authentication). + ]]> @@ -119,15 +119,15 @@ Gets or sets the cache policy for this request. A object that defines a cache policy. The default is . - property. - - A copy of a resource is only added to the cache if the response stream for the resource is retrieved and read to the end of the stream. So another request for the same resource could use a cached copy, depending on the cache policy level for this request. - + property. + + A copy of a resource is only added to the cache if the response stream for the resource is retrieved and read to the end of the stream. So another request for the same resource could use a cached copy, depending on the cache policy level for this request. + ]]> @@ -193,11 +193,11 @@ Gets or sets the impersonation level for the current request. The impersonation level for the request. The default is . - @@ -221,15 +221,15 @@ Gets or sets the maximum allowed length of the response headers. The length, in kilobytes (1024 bytes), of the response headers. - property is not explicitly set, it defaults to the value of the property. - - If the length of the response header received exceeds the value of the property, an exception is thrown when the response is accessed. - + property is not explicitly set, it defaults to the value of the property. + + If the length of the response header received exceeds the value of the property, an exception is thrown when the response is accessed. + ]]> @@ -274,11 +274,11 @@ Gets or sets a callback method to validate the server certificate. A callback method to validate the server certificate. - is `null`, the server certificate will be validated using standard well-known certificate authorities. - + is `null`, the server certificate will be validated using standard well-known certificate authorities. + ]]> @@ -306,26 +306,26 @@ Gets or sets a value that indicates whether to allow high-speed NTLM-authenticated connection sharing. - Returns . - + Returns . + to keep the authenticated connection open; otherwise, . - [!CAUTION] -> Because it is possible for an application to use the connection without being authenticated, you need to be sure that there is no administrative vulnerability in your system when setting this property to `true`. If your application sends requests for multiple users (impersonates multiple user accounts) and relies on authentication to protect resources, do not set this property to `true` unless you use connection groups as described below. - - You may want to consider enabling this mechanism if your are having performance problems and your application is running on a Web server with integrated Windows authentication. - - Enabling this setting opens the system to security risks. If you set the property to `true` be sure to take the following precautions: - -- Run your application in a protected environment to help avoid possible connection exploits. - - If you control the back-end server, as an alternative you might consider turning off authentication persistence. This increases performance to a lesser degree, but it is safer. For more details, search for AuthPersistence at . - +> Because it is possible for an application to use the connection without being authenticated, you need to be sure that there is no administrative vulnerability in your system when setting this property to `true`. If your application sends requests for multiple users (impersonates multiple user accounts) and relies on authentication to protect resources, do not set this property to `true` unless you use connection groups as described below. + + You may want to consider enabling this mechanism if your are having performance problems and your application is running on a Web server with integrated Windows authentication. + + Enabling this setting opens the system to security risks. If you set the property to `true` be sure to take the following precautions: + +- Run your application in a protected environment to help avoid possible connection exploits. + + If you control the back-end server, as an alternative you might consider turning off authentication persistence. This increases performance to a lesser degree, but it is safer. For more details, search for AuthPersistence at . + ]]> diff --git a/xml/System.Net.Mail/SmtpClient.xml b/xml/System.Net.Mail/SmtpClient.xml index 9a4c5ffe2ff..4623bea8dc6 100644 --- a/xml/System.Net.Mail/SmtpClient.xml +++ b/xml/System.Net.Mail/SmtpClient.xml @@ -523,11 +523,11 @@ The following code example demonstrates sending an email message asynchronously. ## Remarks Delivery methods include: -- An SMTP server. +- An SMTP server. -- Moving the email into the pickup directory for IIS, which then delivers the message. +- Moving the email into the pickup directory for IIS, which then delivers the message. -- Moving the email to a directory specified by for later delivery by another application. +- Moving the email to a directory specified by for later delivery by another application. The default value for this property can also be set in a machine or application configuration file. Any changes made to the property override the configuration file settings. diff --git a/xml/System.Net.NetworkInformation/IcmpV6Statistics.xml b/xml/System.Net.NetworkInformation/IcmpV6Statistics.xml index bb8634a70c6..a799f4363c9 100644 --- a/xml/System.Net.NetworkInformation/IcmpV6Statistics.xml +++ b/xml/System.Net.NetworkInformation/IcmpV6Statistics.xml @@ -55,7 +55,7 @@ ## Examples The following example displays the current ICMPv6 statistics. - + :::code language="csharp" source="~/snippets/csharp/System.Net.NetworkInformation/IcmpV4Statistics/Overview/netinfo.cs" id="Snippet7"::: ]]> @@ -156,13 +156,13 @@ ## Remarks A Destination Unreachable message can be sent to the computer that is the source of a packet for any of the following reasons: -- The computer cannot find a route to the destination address. +- The computer cannot find a route to the destination address. -- Communication with the destination address is administratively prohibited. For example, a firewall prevents delivery of packets to the destination. +- Communication with the destination address is administratively prohibited. For example, a firewall prevents delivery of packets to the destination. -- The destination address is unreachable. +- The destination address is unreachable. -- The destination port is unreachable. For example, there is no listener available for the packet's protocol. +- The destination port is unreachable. For example, there is no listener available for the packet's protocol. @@ -220,13 +220,13 @@ ## Remarks A Destination Unreachable message can be sent to the computer that is the source of a packet for any of the following reasons: -- The computer cannot find a route to the destination address. +- The computer cannot find a route to the destination address. -- Communication with the destination address is administratively prohibited. For example, a firewall prevents delivery of packets to the destination. +- Communication with the destination address is administratively prohibited. For example, a firewall prevents delivery of packets to the destination. -- The destination address is unreachable. +- The destination address is unreachable. -- The destination port is unreachable. For example, there is no listener available for the packet's protocol. +- The destination port is unreachable. For example, there is no listener available for the packet's protocol. diff --git a/xml/System.Net.NetworkInformation/Ping.xml b/xml/System.Net.NetworkInformation/Ping.xml index 9f403805f34..adf16a4433e 100644 --- a/xml/System.Net.NetworkInformation/Ping.xml +++ b/xml/System.Net.NetworkInformation/Ping.xml @@ -91,13 +91,13 @@ You can also specify any of the following types of information: -- Data to accompany the request. Specifying `buffer` allows you to learn the amount of time required for a packet of a particular size to travel to and from the remote host and the maximum transmission unit of the network path. (See the or overloads that take a `buffer` parameter.) +- Data to accompany the request. Specifying `buffer` allows you to learn the amount of time required for a packet of a particular size to travel to and from the remote host and the maximum transmission unit of the network path. (See the or overloads that take a `buffer` parameter.) -- Whether the ICMP Echo packet can be fragmented in transit. (See the property and the or overloads that take an `options` parameter.) +- Whether the ICMP Echo packet can be fragmented in transit. (See the property and the or overloads that take an `options` parameter.) -- How many times routing nodes, such as routers or gateways, can forward the packet before it either reaches the destination computer or is discarded. (See and the or overloads that take an `options` parameter.) +- How many times routing nodes, such as routers or gateways, can forward the packet before it either reaches the destination computer or is discarded. (See and the or overloads that take an `options` parameter.) -- The time limit within which the reply must be received. (See the or overloads that take a `timeout` parameter. +- The time limit within which the reply must be received. (See the or overloads that take a `timeout` parameter. The class offers both synchronous and asynchronous methods for sending the request. If your application should block while waiting for a reply, use the methods; these methods are synchronous. If your application should not block, use the asynchronous methods. A call to executes in its own thread that is automatically allocated from the thread pool. When the asynchronous operation completes, it raises the event. Applications use a delegate to specify the method that is called for events. You must add a delegate to the event before calling . The delegate's method receives a object that contains a object that describes the result of the call. diff --git a/xml/System.Net.PeerToPeer.Collaboration/ApplicationChangedEventArgs.xml b/xml/System.Net.PeerToPeer.Collaboration/ApplicationChangedEventArgs.xml index 69d5e987ee7..46694160e3b 100644 --- a/xml/System.Net.PeerToPeer.Collaboration/ApplicationChangedEventArgs.xml +++ b/xml/System.Net.PeerToPeer.Collaboration/ApplicationChangedEventArgs.xml @@ -17,23 +17,23 @@ Provides qualifying information to a callback method when a event occurs. - event is raised when: - -- A peer starts an application within a collaboration - -- A peer ends an application within a collaboration - -- The object that represents a collaborating peer has a change in its properties, such as the associated Nickname - -- The scope of the application is changed on that peer contact's computer - -- A peer moves to a different IP address on the network - - Every class that uses the class requires a of Unrestricted. This state is created when the object is constructed. - + event is raised when: + +- A peer starts an application within a collaboration + +- A peer ends an application within a collaboration + +- The object that represents a collaborating peer has a change in its properties, such as the associated Nickname + +- The scope of the application is changed on that peer contact's computer + +- A peer moves to a different IP address on the network + + Every class that uses the class requires a of Unrestricted. This state is created when the object is constructed. + ]]> @@ -59,11 +59,11 @@ Gets the for which the event was raised. The instance that was updated. - @@ -89,11 +89,11 @@ Gets the type of change to the that occurred. The enumeration value that specifies the type of change that was performed on the . - diff --git a/xml/System.Net.PeerToPeer.Collaboration/ContactManager.xml b/xml/System.Net.PeerToPeer.Collaboration/ContactManager.xml index 158104fbc5e..d9e29ec203a 100644 --- a/xml/System.Net.PeerToPeer.Collaboration/ContactManager.xml +++ b/xml/System.Net.PeerToPeer.Collaboration/ContactManager.xml @@ -21,22 +21,22 @@ Represents a collection of objects which persist in a Windows Address Book. - class. - - Address books that are associated with management include those associated with the host peer and a remote peer. Either computer may collaborate with other peers; when a peer is local to the remote peer but not the host peer, it can be added to the of the host peer. Certain operations on the class, such as and , correlate to the associated operations being performed on the Windows Address book of the remote peer. - - The host peer has access to this persistent storage for information, which can be associated with the applications in which a peer intends to participate. A can identify itself as a user of a persistent store on a computer. - - - -## Examples - The following example code illustrates how to enumerate a and add it as a to the local : - - :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet3"::: - + class. + + Address books that are associated with management include those associated with the host peer and a remote peer. Either computer may collaborate with other peers; when a peer is local to the remote peer but not the host peer, it can be added to the of the host peer. Certain operations on the class, such as and , correlate to the associated operations being performed on the Windows Address book of the remote peer. + + The host peer has access to this persistent storage for information, which can be associated with the applications in which a peer intends to participate. A can identify itself as a user of a persistent store on a computer. + + + +## Examples + The following example code illustrates how to enumerate a and add it as a to the local : + + :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet3"::: + ]]> @@ -73,27 +73,27 @@ The instance to add to . Adds the specified to the of the local peer. - of . - - - -## Examples - The following example code illustrates how to enumerate a and add it as a to the local : - - :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet3"::: - + of . + + + +## Examples + The following example code illustrates how to enumerate a and add it as a to the local : + + :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet3"::: + ]]> The specified by already exists. is . The specified has been disposed. - - The specified by could not be reconstituted from its serialized XML format. - -- Unable to add the local peer to the instance being constructed. + - The specified by could not be reconstituted from its serialized XML format. + +- Unable to add the local peer to the instance being constructed. @@ -127,15 +127,15 @@ Raised whenever a associated with a in the has changed. - method. - - This event requires a of . - + method. + + This event requires a of . + ]]> The calling object has been disposed. @@ -174,19 +174,19 @@ Creates a instance for the specified object. A instance for the specified . - of . - + of . + ]]> is . This object has been disposed. - - The contact manager of the remote peer passed in could not be reached, or the contact could not be read from it. - -- The instance passed in has no endpoints set on it. + - The contact manager of the remote peer passed in could not be reached, or the contact could not be read from it. + +- The instance passed in has no endpoints set on it. @@ -215,11 +215,11 @@ A user-defined that contains information about the operation. It will be passed to the callback of the asynchronous operation for identification. Creates a contact instance for the specified object. - of . - + of . + ]]> @@ -250,13 +250,13 @@ Raised whenever a method has completed. - method has completed. It is also raised if the operation completes in error or is cancelled. - - This event requires a of . - + method has completed. It is also raised if the operation completes in error or is cancelled. + + This event requires a of . + ]]> The calling object has been disposed. @@ -296,18 +296,18 @@ The to remove from the . Removes the specified from the of the local peer. - of . - - - -## Examples - The following code example illustrates how to delete a from the local : - - :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet6"::: - + of . + + + +## Examples + The following code example illustrates how to delete a from the local : + + :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet6"::: + ]]> @@ -344,18 +344,18 @@ The associated with the to remove from the . Removes the associated with the specified from the of the local peer. - of . - - - -## Examples - The following code example illustrates how to delete a from the local : - - :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet6"::: - + of . + + + +## Examples + The following code example illustrates how to delete a from the local : + + :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet6"::: + ]]> The associated with could not be found in the contact manager. @@ -428,19 +428,19 @@ associated with the supplied . - of . - + of . + ]]> is . This object has been disposed. - - Contact not found in . - -- Unable to obtain the contact for the supplied . + - Contact not found in . + +- Unable to obtain the contact for the supplied . @@ -472,22 +472,22 @@ Returns a that contains all contacts within the of the remote peer. - that contains all contacts within the of the remote peer. - + that contains all contacts within the of the remote peer. + If the contact manager is empty, then a collection of size zero (0) is returned. - of . - - - -## Examples - The following code example illustrates how to retrieve a representing the contacts contained in the local : - - :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet3"::: - + of . + + + +## Examples + The following code example illustrates how to retrieve a representing the contacts contained in the local : + + :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer.Collaboration/ContactManager/Overview/NCLPNRPContacts.cs" id="Snippet3"::: + ]]> This object has been disposed. @@ -523,13 +523,13 @@ Gets the representing the local peer. The instance representing the local peer. - of . - + of . + ]]> @@ -566,13 +566,13 @@ Raised whenever the associated with a in the has changed. - . - - This event requires a of . - + . + + This event requires a of . + ]]> The calling object has been disposed. @@ -610,13 +610,13 @@ Raised whenever an object within a contact's registered objects has changed. - methods. - - This event requires a of . - + methods. + + This event requires a of . + ]]> The object has been disposed. @@ -654,13 +654,13 @@ Raised whenever the presence status of a in the has changed. - method. - - This event requires a of . - + method. + + This event requires a of . + ]]> The object has been disposed. @@ -698,13 +698,13 @@ Raised when the list of subscribed contacts changes. - of . - + of . + ]]> The object has been disposed. @@ -747,13 +747,13 @@ When this property value is set, all events not fired as the result of an asynchronous operation will have the associated event handlers called back on the thread that created the specific . Object that implements the interface and is used by instances of this type for event handler synchronization on the thread that created it. - instance. - + instance. + ]]> The calling object has been disposed. @@ -789,11 +789,11 @@ The to be updated. Updates the data associated with the . - of . - + of . + ]]> - not found in . diff --git a/xml/System.Net.PeerToPeer.Collaboration/Peer.xml b/xml/System.Net.PeerToPeer.Collaboration/Peer.xml index 85ca2b420f9..4604a89ee81 100644 --- a/xml/System.Net.PeerToPeer.Collaboration/Peer.xml +++ b/xml/System.Net.PeerToPeer.Collaboration/Peer.xml @@ -418,7 +418,7 @@ - An error occurred during the invitation process. -- The currently executing application is not registered with the Peer Collaboration infrastructure. +- The currently executing application is not registered with the Peer Collaboration infrastructure. @@ -463,7 +463,7 @@ is larger than 16,384 bytes. - An error occurred during the invitation process. -- The currently executing application is not registered with the peer collaboration infrastructure. +- The currently executing application is not registered with the peer collaboration infrastructure.
@@ -512,7 +512,7 @@ is .
- An error occurred during the invitation process. -- The currently executing application is not registered with the collaboration infrastructure. +- The currently executing application is not registered with the collaboration infrastructure.
@@ -561,7 +561,7 @@ is larger than 16,384 bytes.
- An error occurred during the invitation process. -- The currently executing application is not registered with the collaboration infrastructure. +- The currently executing application is not registered with the collaboration infrastructure.
diff --git a/xml/System.Net.PeerToPeer.Collaboration/PeerCollaboration.xml b/xml/System.Net.PeerToPeer.Collaboration/PeerCollaboration.xml index e16abd55dd0..760d9d52c08 100644 --- a/xml/System.Net.PeerToPeer.Collaboration/PeerCollaboration.xml +++ b/xml/System.Net.PeerToPeer.Collaboration/PeerCollaboration.xml @@ -24,15 +24,15 @@ Methods and properties in this class can be used to: -- Launch and manage collaborative applications +- Launch and manage collaborative applications -- Register and delete applications and collaboration objects (such as certificates, pictures, avatars, and text descriptions) +- Register and delete applications and collaboration objects (such as certificates, pictures, avatars, and text descriptions) -- Invite peers to collaboration sessions, including items such as scope and objects which will identify them over the Internet +- Invite peers to collaboration sessions, including items such as scope and objects which will identify them over the Internet -- Allow peers to and of the collaboration infrastructure, manage lists of contacts, or publish their presence to each other +- Allow peers to and of the collaboration infrastructure, manage lists of contacts, or publish their presence to each other -- Utilize properties and events to coordinate asynchronous application communication, especially for changes in name, presence, application, or other objects. +- Utilize properties and events to coordinate asynchronous application communication, especially for changes in name, presence, application, or other objects. "Link-local cloud", "subnet of the calling peer", and "NearMe scope" are synonymous terms. "Internet scope" and "serverless presence" are synonymous. The site-local has no equivalent in the collaboration namespace. @@ -576,7 +576,7 @@ cannot specify
- is offline -- Unable to set +- Unable to set
@@ -631,7 +631,7 @@ - The property on the object passed to is . -- The peer application instance provided has the same globally unique as an application which is already registered. The existing registration must be unregistered before a new application can be registered with the provided identifier. +- The peer application instance provided has the same globally unique as an application which is already registered. The existing registration must be unregistered before a new application can be registered with the provided identifier.
The and parameters cannot be . Both parameters must be specified. The type parameter is not set to a known value in the enumeration. The operation cannot be completed until the caller has signed-in to the infrastructure. diff --git a/xml/System.Net.PeerToPeer.Collaboration/PeerCollaborationPermission.xml b/xml/System.Net.PeerToPeer.Collaboration/PeerCollaborationPermission.xml index 6791bd4cf18..882b087d968 100644 --- a/xml/System.Net.PeerToPeer.Collaboration/PeerCollaborationPermission.xml +++ b/xml/System.Net.PeerToPeer.Collaboration/PeerCollaborationPermission.xml @@ -47,16 +47,16 @@ Specifies the values that define or are used in object permissions. - allow all local and Intranet zone applications to access collaboration services, and no permission is granted for Internet zone applications. In other words, if the default permissions are not changed, all link-local and site-local applications have access to Peer-To-Peer collaboration services, but global applications have no access. - - This class is not derivable. - + The default allow all local and Intranet zone applications to access collaboration services, and no permission is granted for Internet zone applications. In other words, if the default permissions are not changed, all link-local and site-local applications have access to Peer-To-Peer collaboration services, but global applications have no access. + + This class is not derivable. + ]]> @@ -95,13 +95,13 @@ One of the values in the enumeration. Initializes a new instance of the . The initial for this instance is passed when the constructor is called. - , the instance passes all demands. If state contains any other value, the instance fails all demands. - + , the instance passes all demands. If state contains any other value, the instance fails all demands. + ]]> @@ -140,11 +140,11 @@ Creates and returns a copy of the current . A that contains a copy of the current instance of . - instance grants the same access to resources as the original permission. - + instance grants the same access to resources as the original permission. + ]]> @@ -184,13 +184,13 @@ The XML encoding to use to reconstruct the permission. Represents the XML object model for encoding security objects. - The parameter is not a valid permission element. @@ -242,19 +242,19 @@ The parameter's version number is not supported. Creates and returns a permission that is the intersection of the current and the specified permission. A new permission that represents the intersection of the current and the specified permission. This new permission is a reference ( in Visual Basic) if the intersection is empty. - method. X and Y represent object references that are not a `null` reference (`Nothing` in Visual Basic). - -- X.Intersect(X) returns a value equal to X. - -- X.Intersect(Y) returns the same value as Y.Intersect(X). - -- X.Intersect(a `null` reference) returns a `null` reference. - + method. X and Y represent object references that are not a `null` reference (`Nothing` in Visual Basic). + +- X.Intersect(X) returns a value equal to X. + +- X.Intersect(Y) returns the same value as Y.Intersect(X). + +- X.Intersect(a `null` reference) returns a `null` reference. + ]]> The target parameter is not a reference ( in Visual Basic) and is not an instance of the same class as the current permission. @@ -299,21 +299,21 @@ The parameter's version number is not supported.
if the current is a subset of the specified permission; otherwise, . - is a subset of the specified permission if the current permission specifies a set of operations that is wholly contained by the specified permission. For example, a permission that represents access to "*C:\example.txt*" is a subset of a permission that represents access to "*C:\\*". If this method returns `true`, the current permission represents no more access to the protected resource than does the specified permission. - - The following statements are required to be `true` for all implementations of the method. X, Y, and Z represent objects that are not a `null` reference (`Nothing` in Visual Basic). - -- X.IsSubsetOf(X) returns `true`. - -- X.IsSubsetOf(Y) returns the same value as Y.IsSubsetOf(X) if and only if X and Y represent the same set of permissions. - -- If X.IsSubsetOf(Y) and Y.IsSubsetOf(Z) both return `true`, X.IsSubsetOf(Z) returns `true`. - - If X represents an empty object with a permission state of `None`, and Y represents an `IPermission` object that is a `null` reference (`Nothing` in Visual Basic), X.IsSubsetOf(Y) returns `true`. If Z is also an empty permission, the compound set operation X.Union(Z).IsSubsetOf(Y) also returns `true` because the of two empty permissions is an empty permission. - + is a subset of the specified permission if the current permission specifies a set of operations that is wholly contained by the specified permission. For example, a permission that represents access to "*C:\example.txt*" is a subset of a permission that represents access to "*C:\\*". If this method returns `true`, the current permission represents no more access to the protected resource than does the specified permission. + + The following statements are required to be `true` for all implementations of the method. X, Y, and Z represent objects that are not a `null` reference (`Nothing` in Visual Basic). + +- X.IsSubsetOf(X) returns `true`. + +- X.IsSubsetOf(Y) returns the same value as Y.IsSubsetOf(X) if and only if X and Y represent the same set of permissions. + +- If X.IsSubsetOf(Y) and Y.IsSubsetOf(Z) both return `true`, X.IsSubsetOf(Z) returns `true`. + + If X represents an empty object with a permission state of `None`, and Y represents an `IPermission` object that is a `null` reference (`Nothing` in Visual Basic), X.IsSubsetOf(Y) returns `true`. If Z is also an empty permission, the compound set operation X.Union(Z).IsSubsetOf(Y) also returns `true` because the of two empty permissions is an empty permission. + ]]> The parameter is a reference ( in Visual Basic). @@ -358,11 +358,11 @@ The parameter's version number is not supported.
if the current permission is unrestricted; otherwise, . - @@ -402,11 +402,11 @@ The parameter's version number is not supported. Creates an XML encoding of the and its current state. An XML encoding of the permission, including any state information. - @@ -448,19 +448,19 @@ The parameter's version number is not supported. Creates a permission that is the union of the current and the specified permission. A new permission that represents the of the current and the specified permission. - is a permission that represents all the operations represented by both the current and the specified permission. Any demand that passes either permission passes their union. - - The following statements are required to be `true` for all implementations of the Union method. X and Y represent objects that are not a `null` reference (`Nothing` in Visual Basic). - -- X.Union(X) returns an object that has the same value as X. - -- X.Union(Y) returns an object that has the same value as the object returned by Y.Union(X). - -- X.Union(a `null` reference (`Nothing` in Visual Basic)) returns an object that has the same value as X. - + is a permission that represents all the operations represented by both the current and the specified permission. Any demand that passes either permission passes their union. + + The following statements are required to be `true` for all implementations of the Union method. X and Y represent objects that are not a `null` reference (`Nothing` in Visual Basic). + +- X.Union(X) returns an object that has the same value as X. + +- X.Union(Y) returns an object that has the same value as the object returned by Y.Union(X). + +- X.Union(a `null` reference (`Nothing` in Visual Basic)) returns an object that has the same value as X. + ]]> The parameter is a reference ( in Visual Basic). diff --git a/xml/System.Net.PeerToPeer.Collaboration/PeerContact.xml b/xml/System.Net.PeerToPeer.Collaboration/PeerContact.xml index cfd935f085d..914f0d1738c 100644 --- a/xml/System.Net.PeerToPeer.Collaboration/PeerContact.xml +++ b/xml/System.Net.PeerToPeer.Collaboration/PeerContact.xml @@ -429,7 +429,7 @@ Parameter cannot be . - Unable to complete operation -- Parameter is not a valid object. +- Parameter is not a valid object. @@ -489,7 +489,7 @@ - The calling peer is not subscribed to the . -- The calling peer has not yet called the method. +- The calling peer has not yet called the method. Unable to complete operation. Calling this method requires a of . This state is created when the peer collaboration session begins. @@ -539,7 +539,7 @@ - The calling peer is not subscribed to the . -- The calling peer has not yet called the method. +- The calling peer has not yet called the method. Unable to complete operation. Calling this method requires a of . This state is created when the peer collaboration session begins. @@ -592,7 +592,7 @@ cannot be . - The calling peer is not subscribed to the . -- The calling peer has not yet called the method. +- The calling peer has not yet called the method. Unable to complete operation. Calling this method requires a of . This state is created when the peer collaboration session begins. @@ -650,7 +650,7 @@ cannot be . - The calling peer is not subscribed to the . -- The calling peer has not yet called the method. +- The calling peer has not yet called the method. Unable to complete operation. Calling this method requires a of . This state is created when the peer collaboration session begins. @@ -786,7 +786,7 @@ cannot be . - The calling peer is not subscribed to the associated with the . -- The calling peer has not yet called the method. +- The calling peer has not yet called the method. Unable to complete operation. Additional overloads are defined on the class instead of the subclasses and . @@ -842,7 +842,7 @@ cannot be . - The calling peer is not subscribed to the . -- The calling peer has not yet called the method. +- The calling peer has not yet called the method. Unable to complete operation. Additional overloads are defined on the class instead of the subclasses and . @@ -959,7 +959,7 @@ The object has been disposed. - Unable to complete operation. -- The currently executing application is not registered with the peer collaboration infrastructure. +- The currently executing application is not registered with the peer collaboration infrastructure. - specified by object is not valid. @@ -1198,7 +1198,7 @@ - cannot be . -- Endpoint in cannot be . +- Endpoint in cannot be . object cannot be . The object has been disposed. @@ -1263,7 +1263,7 @@ The object has been disposed. - The for the current application does not exist or is empty. -- Endpoint collection is empty or . +- Endpoint collection is empty or . Additional overloads are defined on the class instead of the subclasses and . @@ -1320,7 +1320,7 @@ - cannot be null. -- Endpoint specified by cannot be . +- Endpoint specified by cannot be . and objects cannot be . The object has been disposed. diff --git a/xml/System.Net.PeerToPeer.Collaboration/PeerNearMe.xml b/xml/System.Net.PeerToPeer.Collaboration/PeerNearMe.xml index 3e5045ce203..c3679d1e817 100644 --- a/xml/System.Net.PeerToPeer.Collaboration/PeerNearMe.xml +++ b/xml/System.Net.PeerToPeer.Collaboration/PeerNearMe.xml @@ -30,13 +30,13 @@ Represents a peer located by the "People Near Me" infrastructure. - method to return a collection of nearby peers. - - A peer represented by a object is not necessarily in the calling peer's address book. - + method to return a collection of nearby peers. + + A peer represented by a object is not necessarily in the calling peer's address book. + ]]> @@ -197,11 +197,11 @@ object associated with the . - does not map to a signed-in peer on the same subnet, `null` is returned. - + does not map to a signed-in peer on the same subnet, `null` is returned. + ]]> The is . @@ -417,15 +417,15 @@ Specifies the application, object, and presence data relevant to a instance. Initiates a network operation to retrieve the application, object and presence data specific to a instance. - and methods as well as the property. The method only needs to be used if the caller is not subscribed to the specified , , or . - - This method blocks additional calls until the network operation is complete and the cache has been updated. - - The caller is not required to sign in with the method or via a user interface in to complete this operation successfully. - + and methods as well as the property. The method only needs to be used if the caller is not subscribed to the specified , , or . + + This method blocks additional calls until the network operation is complete and the cache has been updated. + + The caller is not required to sign in with the method or via a user interface in to complete this operation successfully. + ]]> @@ -468,9 +468,9 @@ object containing the relevant value specified by the remote peer. To be added. The object has been disposed. - - The associated with the specified by the is or has a value count of '0' associated endpoints. - -- A has not been associated with the current peer-to-peer application. + - The associated with the specified by the is or has a value count of '0' associated endpoints. + +- A has not been associated with the current peer-to-peer application. @@ -510,9 +510,9 @@ To be added. The object has been disposed. The argument specifies . - - The argument specifies an empty . - -- The associated with the specified by the is or has a value count of '0' associated endpoints. + - The argument specifies an empty . + +- The associated with the specified by the is or has a value count of '0' associated endpoints. @@ -596,9 +596,9 @@ The object has been disposed. The argument specifies . The argument specifies . - - The endpoint specified by was not found. - -- The argument specifies an empty . + - The endpoint specified by was not found. + +- The argument specifies an empty . @@ -622,11 +622,11 @@ that represents the Nickname of the object. - object, the associated contact Nickname is populated with this property value. - + object, the associated contact Nickname is populated with this property value. + ]]> The object has been disposed. @@ -655,13 +655,13 @@ Event data contained in a instance. Signals the event. - event occurs. - - This method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - + event occurs. + + This method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + ]]> @@ -726,15 +726,15 @@ Initiates a network operation to retrieve the application, object and presence data specific to a instance. - and methods as well as the property. This method only needs to be used if the caller is not subscribed to the specified , , or . - - This method blocks additional calls until the network operation is complete and cache has been updated. - - The caller is not required to sign in with the method or via a user interface in to complete this operation successfully. - + and methods as well as the property. This method only needs to be used if the caller is not subscribed to the specified , , or . + + This method blocks additional calls until the network operation is complete and cache has been updated. + + The caller is not required to sign in with the method or via a user interface in to complete this operation successfully. + ]]> The object has been disposed. @@ -769,15 +769,15 @@ User-specified state object that is passed to the delegate when this method completes the operation. Initiates a network operation to retrieve the application, object and presence data specific to a instance. - and methods as well as the property. The method only needs to be used if the caller is not subscribed to the specified , , or . - - This method blocks additional calls until the network operation is complete and cache has been updated. - - The caller is not required to sign in with the method or via a user interface in to complete this operation successfully. - + and methods as well as the property. The method only needs to be used if the caller is not subscribed to the specified , , or . + + This method blocks additional calls until the network operation is complete and cache has been updated. + + The caller is not required to sign in with the method or via a user interface in to complete this operation successfully. + ]]> The object has been disposed. diff --git a/xml/System.Net.PeerToPeer/Cloud.xml b/xml/System.Net.PeerToPeer/Cloud.xml index d25200bafcc..692e1c3d720 100644 --- a/xml/System.Net.PeerToPeer/Cloud.xml +++ b/xml/System.Net.PeerToPeer/Cloud.xml @@ -132,7 +132,7 @@ ## Remarks -- This field is used to automatically call or to on all possible clouds. +- This field is used to automatically call or to on all possible clouds. ]]> diff --git a/xml/System.Net.PeerToPeer/PeerName.xml b/xml/System.Net.PeerToPeer/PeerName.xml index 10dc4818295..86301a179de 100644 --- a/xml/System.Net.PeerToPeer/PeerName.xml +++ b/xml/System.Net.PeerToPeer/PeerName.xml @@ -148,7 +148,7 @@ One or more parameters are . - The Default Identity used as the basis of the could not be retrieved. -- The could not be created. +- The could not be created. diff --git a/xml/System.Net.PeerToPeer/PeerNameRegistration.xml b/xml/System.Net.PeerToPeer/PeerNameRegistration.xml index 3802c2b8e9e..a937a4de538 100644 --- a/xml/System.Net.PeerToPeer/PeerNameRegistration.xml +++ b/xml/System.Net.PeerToPeer/PeerNameRegistration.xml @@ -30,13 +30,13 @@ Registers a in a or set of clouds. - in a peer cloud or clouds. - - It is possible to have multiple objects for the same peer name. In such a case, if the peer name is secured, each instance represents in a different cloud. However, if the peer name is not secured, it can be registered in the same cloud multiple times, providing that each registration is from a different process. - + in a peer cloud or clouds. + + It is possible to have multiple objects for the same peer name. In such a case, if the peer name is secured, each instance represents in a different cloud. However, if the peer name is not secured, it can be registered in the same cloud multiple times, providing that each registration is from a different process. + ]]> @@ -66,13 +66,13 @@ Initializes a new default instance of the class. - . It does not perform peer name registration during construction. - - After instantiating an object with this constructor, the caller should populate the appropriate fields in the instance prior to calling or . - + . It does not perform peer name registration during construction. + + After instantiating an object with this constructor, the caller should populate the appropriate fields in the instance prior to calling or . + ]]> @@ -105,22 +105,22 @@ Integer value that specifies the port number to register. Initializes a new instance of the class with the specified name and port number. - and are populated. - - If the peer name is secured and was previously registered in a the peer is currently participating in, an is thrown. - - This constructor only creates a instance; it does not perform the registration. After instantiating the registration object with this constructor and populating its fields, the application must call to perform the actual registration. - + and are populated. + + If the peer name is secured and was previously registered in a the peer is currently participating in, an is thrown. + + This constructor only creates a instance; it does not perform the registration. After instantiating the registration object with this constructor and populating its fields, the application must call to perform the actual registration. + ]]> The parameter cannot be . The specified port number is less than zero. Port numbers must be greater than or equal to zero and less than 65,535 (0xFFFF). - - The specified has already been registered from this host. - -- The remote peer does not own the for the supplied object. + - The specified has already been registered from this host. + +- The remote peer does not own the for the supplied object. @@ -175,22 +175,22 @@ in which to register the peer name. Initializes a new instance of the class with the specified peer name, port number, and . - . If the object is constructed successfully, the properties are populated with the specified , and . - - If the cloud parameter is `null`, the name is registered using the shortcut, which initializes default values for the , , and . - - After instantiation, the method must be called to register the . - + . If the object is constructed successfully, the properties are populated with the specified , and . + + If the cloud parameter is `null`, the name is registered using the shortcut, which initializes default values for the , , and . + + After instantiation, the method must be called to register the . + ]]> The parameter cannot be . The specified port number is less than zero. Port numbers must be greater than or equal to zero and less than 65,535 (0xFFFF). - - The specified has already been registered from this host. - -- The remote peer does not own the for the supplied object. + - The specified has already been registered from this host. + +- The remote peer does not own the for the supplied object. @@ -264,11 +264,11 @@ Gets or sets application-defined binary data for the object. An array of bytes that holds the binary data associated with the entry. This property is set to by default. - that can be supplied is 4,096 bytes. - + that can be supplied is 4,096 bytes. + ]]> The specified is greater than 4096 bytes. @@ -282,13 +282,13 @@ Releases the resources used by the object. - , the cloud no longer requires the object associated with the peer. Whether the registration object is stopped or disposed is dependent upon whether the cloud will reuse the object to register this peer or another peer. If there are any other endpoint(s) within the registration object with which the peer host expected to communicate, registering those endpoints within the cloud must occur before stopping or disposing of this object. - - If the cloud expects to register more peers, the method is recommended; when the cloud no longer needs the memory, it should be returned to the operating system via the method. - + , the cloud no longer requires the object associated with the peer. Whether the registration object is stopped or disposed is dependent upon whether the cloud will reuse the object to register this peer or another peer. If there are any other endpoint(s) within the registration object with which the peer host expected to communicate, registering those endpoints within the cloud must occur before stopping or disposing of this object. + + If the cloud expects to register more peers, the method is recommended; when the cloud no longer needs the memory, it should be returned to the operating system via the method. + ]]> @@ -370,15 +370,15 @@ Gets the collection of network endpoints for which the associated peer name is registered. An object that contains the network endpoints for which the associated peer name is registered. Unless explicitly specified, the default value for all properties is for reference types. - namespace, an represents a network endpoint as an IP address and a port number. For PNRP, an IP address and port value must be provided for each endpoint. The maximum number of endpoints that can be provided is ten. Automatic address selection is used when this parameter is `null`. - - If a registration method is used that automatically selects the addresses to register, there is no method to determine the addresses for which the peer name was registered. That is, the property will not be updated to reflect the addresses selected. - - When a peer name is registered for more than one node, each is distinct and the property defined on each registration instance will be different. Also, when a is registered into more than one , each registration is distinct and the collection of endpoints will usually be different for each instance. - + namespace, an represents a network endpoint as an IP address and a port number. For PNRP, an IP address and port value must be provided for each endpoint. The maximum number of endpoints that can be provided is ten. Automatic address selection is used when this parameter is `null`. + + If a registration method is used that automatically selects the addresses to register, there is no method to determine the addresses for which the peer name was registered. That is, the property will not be updated to reflect the addresses selected. + + When a peer name is registered for more than one node, each is distinct and the property defined on each registration instance will be different. Also, when a is registered into more than one , each registration is distinct and the collection of endpoints will usually be different for each instance. + ]]> @@ -460,11 +460,11 @@ Gets or sets the peer name to register with a peer cloud. An object of type that contains values associated with this object. Unless explicitly specified, the default value for all properties is for reference types. - instance is distinct. The property associated with each corresponding instance is different. Also, it is possible to register a peer name for more than one cloud that the node is connected to; each of these registrations is distinct. The peer name's will be different in each of these instances. - + instance is distinct. The property associated with each corresponding instance is different. Also, it is possible to register a peer name for more than one cloud that the node is connected to; each of these registrations is distinct. The peer name's will be different in each of these instances. + ]]> @@ -491,11 +491,11 @@ Gets or sets the TCP/IP port number used by the peer being registered into the object. An integer value indicating the TCP port number of the . Unless explicitly specified, the default value for this property is zero (0). - method only when no endpoints are specified. - + method only when no endpoints are specified. + ]]> The specified port value is less than zero. Port numbers must be greater than or equal to zero and less than 65,535 (0xFFFF). @@ -529,35 +529,35 @@ Registers the into the . If no is specified, automatic address selection is used with the port value specified by the property. - property with all source addresses and the specified in the constructor. The default port is used by this method only when no endpoints are specified. - - If the property is `null`, this method registers the peer name specified in the property using the field, which initializes default values for the , , and . - - After a object has been started, the method is used to stop it. - - To update a registration, the method must be used. - - - -## Examples - The following code example creates a and registers it along with the metadata specified. - - :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer/PeerNameRegistration/Start/RegisterPeerName.cs" id="Snippet1"::: - + property with all source addresses and the specified in the constructor. The default port is used by this method only when no endpoints are specified. + + If the property is `null`, this method registers the peer name specified in the property using the field, which initializes default values for the , , and . + + After a object has been started, the method is used to stop it. + + To update a registration, the method must be used. + + + +## Examples + The following code example creates a and registers it along with the metadata specified. + + :::code language="csharp" source="~/snippets/csharp/System.Net.PeerToPeer/PeerNameRegistration/Start/RegisterPeerName.cs" id="Snippet1"::: + ]]> The property is set to . This object had Dispose() called on it previously. - - The specified has already been registered. The method must be used to update a registration. - -- The remote peer does not own the for the specified. - -- Either the or the is not specified; at least one needs to be provided. - -- The message or data elements are invalid. Or, is not set and no data blob or is specified. + - The specified has already been registered. The method must be used to update a registration. + +- The remote peer does not own the for the specified. + +- Either the or the is not specified; at least one needs to be provided. + +- The message or data elements are invalid. Or, is not set and no data blob or is specified. @@ -586,15 +586,15 @@ Unregisters the peer name specified in the property from all the clouds in which it was registered. - method may be used to restart it. - - It is possible to have multiple registration objects for the same peer name. In such a case, if the peer name is secured, each instance will represent a registration in a different PNRP cloud. However, if the peer name is not secured, it can be registered in the same cloud multiple times. - - If this instance is already stopped, calling this method has no effect. - + method may be used to restart it. + + It is possible to have multiple registration objects for the same peer name. In such a case, if the peer name is secured, each instance will represent a registration in a different PNRP cloud. However, if the peer name is not secured, it can be registered in the same cloud multiple times. + + If this instance is already stopped, calling this method has no effect. + ]]> The property has not yet been registered. This occurs when a object is constructed using the empty constructor. The property must be populated in this instance prior to calling . @@ -668,19 +668,19 @@ Updates the for a node registered with a specific . Update is performed using the information specified in the properties. - prior to the call is completely discarded. The new data is not combined with the existing registration. To update a , first update the properties on this instance and then call this method. - - After a is registered, the property cannot be updated. All other fields in the record may be updated. - + prior to the call is completely discarded. The new data is not combined with the existing registration. To update a , first update the properties on this instance and then call this method. + + After a is registered, the property cannot be updated. All other fields in the record may be updated. + ]]> The property is set to . - - The property has not yet been registered. The method cannot be called until the peer name specified in the property is registered in one or more clouds. - -- The peer name specified in the property has changed since the corresponding was registered. + - The property has not yet been registered. The method cannot be called until the peer name specified in the property is registered in one or more clouds. + +- The peer name specified in the property has changed since the corresponding was registered. An object that has been disposed cannot be registered. A property is set to . @@ -712,17 +712,17 @@ if automatic endpoint selection is to be used; if some other method will be used to determine an endpoint. The default value is . - , the system chooses individual endpoints and publishes them with the associated peer name into all available clouds. If the port is not specified, auto selection chooses zero as the . - - When set to `false`, auto selection as described above is not performed. This enables the registration process to publish a peer name along with a data blob (as specified by the property). No endpoints are associated with the name. - - If a registration method is used that automatically selects the addresses to register, there is no method to determine what addresses for which the object was registered. That is, the property will not be updated to reflect the addresses selected. - - Updating this property after peer name registration has started has no effect. - + , the system chooses individual endpoints and publishes them with the associated peer name into all available clouds. If the port is not specified, auto selection chooses zero as the . + + When set to `false`, auto selection as described above is not performed. This enables the registration process to publish a peer name along with a data blob (as specified by the property). No endpoints are associated with the name. + + If a registration method is used that automatically selects the addresses to register, there is no method to determine what addresses for which the object was registered. That is, the property will not be updated to reflect the addresses selected. + + Updating this property after peer name registration has started has no effect. + ]]> diff --git a/xml/System.Net.PeerToPeer/PnrpPermission.xml b/xml/System.Net.PeerToPeer/PnrpPermission.xml index 0e9951cab04..cb6796a0221 100644 --- a/xml/System.Net.PeerToPeer/PnrpPermission.xml +++ b/xml/System.Net.PeerToPeer/PnrpPermission.xml @@ -261,11 +261,11 @@ The parameter's version number is not supported. The following statements are required to be `true` for all implementations of the Intersect method. X and Y represent object references that are not a `null` reference (Nothing in Visual Basic). -- X.Intersect(X) returns a value equal to X. +- X.Intersect(X) returns a value equal to X. -- X.Intersect(Y) returns the same value as Y.Intersect(X). +- X.Intersect(Y) returns the same value as Y.Intersect(X). -- X.Intersect(a `null` reference (`Nothing` in Visual Basic)) returns a `null` reference (`Nothing` in Visual Basic). +- X.Intersect(a `null` reference (`Nothing` in Visual Basic)) returns a `null` reference (`Nothing` in Visual Basic). ]]> @@ -462,11 +462,11 @@ If X represents an empty object with a permis The following statements are required to be `true` for all implementations of the Union method. X and Y represent objects that are not a `null` reference (`Nothing` in Visual Basic). -- X.Union(X) returns an object that has the same value as X. +- X.Union(X) returns an object that has the same value as X. -- X.Union(Y) returns an object that has the same value as the object returned by Y.Union(X). +- X.Union(Y) returns an object that has the same value as the object returned by Y.Union(X). -- X.Union(a `null` reference (`Nothing` in Visual Basic)) returns an object that has the same value as X. +- X.Union(a `null` reference (`Nothing` in Visual Basic)) returns an object that has the same value as X. ]]> diff --git a/xml/System.Net.Security/SslStream.xml b/xml/System.Net.Security/SslStream.xml index 97c1624af16..8d8433c12c0 100644 --- a/xml/System.Net.Security/SslStream.xml +++ b/xml/System.Net.Security/SslStream.xml @@ -3013,21 +3013,21 @@ This property returns one of the following values: -- 0 +- 0 -- 40 +- 40 -- 56 +- 56 -- 80 +- 80 -- 128 +- 128 -- 168 +- 168 -- 192 +- 192 -- 256 +- 256 @@ -4079,13 +4079,13 @@ Authentication has not occurred. In common scenarios, the value of this property is one of the following: -- 512 +- 512 -- 768 +- 768 -- 1024 +- 1024 -- 2048 +- 2048 diff --git a/xml/System.Net.Sockets/Socket.xml b/xml/System.Net.Sockets/Socket.xml index 72c02214c2a..877de1afa98 100644 --- a/xml/System.Net.Sockets/Socket.xml +++ b/xml/System.Net.Sockets/Socket.xml @@ -14492,9 +14492,9 @@ The specifies that subsequent calls to are not allowed. This has no effect on lower protocol layers. If you are using a connection-oriented protocol, the connection is terminated if either of the following conditions exist after a call to : -- Data is in the incoming network buffer waiting to be received. +- Data is in the incoming network buffer waiting to be received. -- More data has arrived. +- More data has arrived. If you are using a connectionless protocol, datagrams are accepted and queued. However, if no buffer space is available for additional incoming datagrams, they will be discarded and no error will be returned to the sender. Using on a connectionless is not recommended. diff --git a/xml/System.Net.Sockets/SocketAsyncEventArgs.xml b/xml/System.Net.Sockets/SocketAsyncEventArgs.xml index 690b33791fa..77bb71d2049 100644 --- a/xml/System.Net.Sockets/SocketAsyncEventArgs.xml +++ b/xml/System.Net.Sockets/SocketAsyncEventArgs.xml @@ -153,15 +153,15 @@ ## Remarks After calling this constructor all properties will have their default values: -- Object references will be null +- Object references will be null -- Properties that return an integer will return zero. +- Properties that return an integer will return zero. -- The property will be equal to . +- The property will be equal to . -- The property will be equal to , which specifies no flags will be used. +- The property will be equal to , which specifies no flags will be used. -- The property will be equal to . +- The property will be equal to . The caller must set the appropriate properties prior to passing the object to the appropriate asynchronous socket (xxxAsync) method. diff --git a/xml/System.Net.Sockets/TcpClient.xml b/xml/System.Net.Sockets/TcpClient.xml index fcee1a20104..4544f9cad20 100644 --- a/xml/System.Net.Sockets/TcpClient.xml +++ b/xml/System.Net.Sockets/TcpClient.xml @@ -62,9 +62,9 @@ In order for `TcpClient` to connect and exchange data, a or created with the TCP must be listening for incoming connection requests. You can connect to this listener in one of the following two ways: -- Create a `TcpClient` and call one of the three available methods. +- Create a `TcpClient` and call one of the three available methods. -- Create a `TcpClient` using the host name and port number of the remote host. This constructor will automatically attempt a connection. +- Create a `TcpClient` using the host name and port number of the remote host. This constructor will automatically attempt a connection. > [!NOTE] > If you want to send connectionless datagrams in synchronous blocking mode, use the class. diff --git a/xml/System.Net.Sockets/UdpClient.xml b/xml/System.Net.Sockets/UdpClient.xml index c7827046ae9..d1c9a5293be 100644 --- a/xml/System.Net.Sockets/UdpClient.xml +++ b/xml/System.Net.Sockets/UdpClient.xml @@ -60,9 +60,9 @@ ## Remarks The class provides simple methods for sending and receiving connectionless UDP datagrams in blocking synchronous mode. Because UDP is a connectionless transport protocol, you do not need to establish a remote host connection prior to sending and receiving data. You do, however, have the option of establishing a default remote host in one of the following two ways: -- Create an instance of the class using the remote host name and port number as parameters. +- Create an instance of the class using the remote host name and port number as parameters. -- Create an instance of the class and then call the method. +- Create an instance of the class and then call the method. You can use any of the send methods provided in the to send data to a remote device. Use the method to receive data from remote hosts. diff --git a/xml/System.Net/CredentialCache.xml b/xml/System.Net/CredentialCache.xml index 06ae1e29522..fe1a10cd17f 100644 --- a/xml/System.Net/CredentialCache.xml +++ b/xml/System.Net/CredentialCache.xml @@ -354,7 +354,7 @@ To get the credentials as a instance, use the property. > [!NOTE] -> The instance returned by cannot be used to view the user name, password, or domain of the current security context. +> The instance returned by cannot be used to view the user name, password, or domain of the current security context. ## Examples The following code example uses the property to get the system credentials of the application. diff --git a/xml/System.Net/Dns.xml b/xml/System.Net/Dns.xml index 23314b1d64e..481f0b11b03 100644 --- a/xml/System.Net/Dns.xml +++ b/xml/System.Net/Dns.xml @@ -66,7 +66,7 @@ ## Examples The following example queries the DNS database for information on the host `www.contoso.com`. - + :::code language="csharp" source="~/snippets/csharp/System.Net/Dns/Overview/source.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic Dns Example/VB/source.vb" id="Snippet1"::: @@ -141,7 +141,7 @@ The method asynchronously queries a DNS server for the IP addresses that are associated with a host name. If `hostNameOrAddress` is an IP address, this address is returned without querying the DNS server. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). If an empty string is passed as the `hostNameOrAddress` argument, then this method returns the IPv4 and IPv6 addresses of the local host. @@ -247,7 +247,7 @@ For detailed information about using the asynchronous programming model, see [Calling Synchronous Methods Asynchronously](/dotnet/standard/asynchronous-programming-patterns/calling-synchronous-methods-asynchronously). > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -536,7 +536,7 @@ For more information about using the asynchronous programming model, see [Calling Synchronous Methods Asynchronously](/dotnet/standard/asynchronous-programming-patterns/calling-synchronous-methods-asynchronously). > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -604,7 +604,7 @@ If an empty string is passed as the `hostNameOrAddress` argument, then this method returns the IPv4 and IPv6 addresses of the local host. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -677,7 +677,7 @@ If the property is set to `true`, the property of the instance returned is not populated by this method and will always be empty. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -738,7 +738,7 @@ To perform this operation synchronously, use a method. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -813,7 +813,7 @@ To perform this operation synchronously, use the method. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -884,7 +884,7 @@ This method is implemented using the underlying operating system's name resolution APIs (such as the Win32 API getaddrinfo on Windows, and equivalent APIs on other platforms). If a host is described in the `hosts` file, the IP address or addresses there will be returned without querying the DNS server. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1142,7 +1142,7 @@ ## Remarks > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1221,7 +1221,7 @@ ## Remarks > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -1299,7 +1299,7 @@ If the property is set to `true`, the property of the instance returned is not populated by this method and will always be empty. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1379,7 +1379,7 @@ The property of the instance returned is not populated by this method and will always be empty. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ## Examples The following code example uses the method to resolve an IP address to an instance. @@ -1468,7 +1468,7 @@ The property of the instance returned is not populated by this method and will always be empty. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1584,7 +1584,7 @@ The property of the instance returned is not populated by this method and will always be empty. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . @@ -1673,7 +1673,7 @@ This method is implemented using the underlying operating system's name resolution APIs (such as the Win32 API getaddrinfo on Windows, and equivalent APIs on other platforms). If a host is described in the `hosts` file, the IP address or addresses there will be returned without querying the DNS server. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . @@ -1877,7 +1877,7 @@ If the property is set to `true`, the property of the instance returned is not populated by this method and will always be empty. > [!NOTE] -> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member emits trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). diff --git a/xml/System.Net/EndpointPermission.xml b/xml/System.Net/EndpointPermission.xml index 1fae7aa0d15..7b66861a39e 100644 --- a/xml/System.Net/EndpointPermission.xml +++ b/xml/System.Net/EndpointPermission.xml @@ -41,14 +41,14 @@ Defines an endpoint that is authorized by a instance. - class defines a network endpoint, including host name, network port number, and transport type used to make the connection. - + class defines a network endpoint, including host name, network port number, and transport type used to make the connection. + > [!NOTE] -> Avoid creating EndPoint permissions using host names because these names will have to be resolved to IP address, which could block the stack. - +> Avoid creating EndPoint permissions using host names because these names will have to be resolved to IP address, which could block the stack. + ]]> @@ -238,11 +238,11 @@ Returns a string that represents the current instance. A string that represents the current instance. - method returns a string that represents the contents for the instance. The string is in the form # # . - + method returns a string that represents the contents for the instance. The string is in the form # # . + ]]> diff --git a/xml/System.Net/FileWebRequest.xml b/xml/System.Net/FileWebRequest.xml index 83fde77cc61..4394eb1cbe9 100644 --- a/xml/System.Net/FileWebRequest.xml +++ b/xml/System.Net/FileWebRequest.xml @@ -79,7 +79,7 @@ ## Examples The following code example uses the class to access a file system resource. - + :::code language="csharp" source="~/snippets/csharp/System.Net/FileWebRequest/Overview/getrequeststream.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/System.Net.FileWebRequest/VB/getrequeststream.vb" id="Snippet1"::: @@ -645,7 +645,7 @@ The method completes an asynchronous stream request that was started by the method. > [!NOTE] -> To avoid timing issues with garbage collection, be sure to close the response stream by calling the method on the stream returned by the method after calling the method. +> To avoid timing issues with garbage collection, be sure to close the response stream by calling the method on the stream returned by the method after calling the method. diff --git a/xml/System.Net/FileWebResponse.xml b/xml/System.Net/FileWebResponse.xml index 8516fdf3500..05c461d51a0 100644 --- a/xml/System.Net/FileWebResponse.xml +++ b/xml/System.Net/FileWebResponse.xml @@ -199,13 +199,13 @@ The method cleans up the resources used by a and closes the response stream by calling the method. > [!NOTE] -> The response stream must be closed to avoid running out of system resources. You can closes the response stream by calling either or +> The response stream must be closed to avoid running out of system resources. You can closes the response stream by calling either or ## Examples The following example uses the method to close the response stream. - + :::code language="csharp" source="~/snippets/csharp/System.Net/FileWebResponse/Close/filewebresponse_close.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/FileWebResponse_Close/VB/filewebresponse_close.vb" id="Snippet1"::: @@ -460,7 +460,7 @@ The method returns the data stream from the file system resource. > [!NOTE] -> The response stream must be closed to avoid running out of system resources. The response stream can be closed by calling or +> The response stream must be closed to avoid running out of system resources. The response stream can be closed by calling or diff --git a/xml/System.Net/FtpWebRequest.xml b/xml/System.Net/FtpWebRequest.xml index 66294ced204..98ec9c60589 100644 --- a/xml/System.Net/FtpWebRequest.xml +++ b/xml/System.Net/FtpWebRequest.xml @@ -54,7 +54,7 @@ ## Remarks > [!IMPORTANT] -> We don't recommend that you use the `FtpWebRequest` class for new development. For more information and alternatives to `FtpWebRequest`, see [WebRequest shouldn't be used](https://github.com/dotnet/platform-compat/blob/master/docs/DE0003.md) on GitHub. +> We don't recommend that you use the `FtpWebRequest` class for new development. For more information and alternatives to `FtpWebRequest`, see [WebRequest shouldn't be used](https://github.com/dotnet/platform-compat/blob/master/docs/DE0003.md) on GitHub. To obtain an instance of , use the method. You can also use the class to upload and download information from an FTP server. Using either of these approaches, when you specify a network resource that uses the FTP scheme (for example, `"ftp://contoso.com"`) the class provides the ability to programmatically interact with FTP servers. @@ -63,7 +63,7 @@ You must have a valid user name and password for the server or the server must allow anonymous logon. You can specify the credentials used to connect to the server by setting the property or you can include them in the portion of the URI passed to the method. If you include information in the URI, the property is set to a new network credential with the specified user name and password information. > [!CAUTION] -> Unless the property is `true`, all data and commands, including your user name and password information, are sent to the server in clear text. Anyone monitoring network traffic can view your credentials and use them to connect to the server. If you are connecting to an FTP server that requires credentials and supports Secure Sockets Layer (SSL), you should set to `true`. +> Unless the property is `true`, all data and commands, including your user name and password information, are sent to the server in clear text. Anyone monitoring network traffic can view your credentials and use them to connect to the server. If you are connecting to an FTP server that requires credentials and supports Secure Sockets Layer (SSL), you should set to `true`. You must have to access the FTP resource; otherwise, a exception is thrown. @@ -154,7 +154,7 @@ If there is no operation in progress, this method does nothing. If a file transfer is in progress, this method terminates the transfer. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -234,7 +234,7 @@ For detailed information about using the asynchronous programming model, see [Calling Synchronous Methods Asynchronously](/dotnet/standard/asynchronous-programming-patterns/calling-synchronous-methods-asynchronously). > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -324,7 +324,7 @@ This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). > [!NOTE] -> If a is thrown, use the and properties of the exception to determine the response from the server. +> If a is thrown, use the and properties of the exception to determine the response from the server. @@ -398,7 +398,7 @@ Client certificates are used to authenticate the client during the initial SSL connection negotiation. For more information, see . > [!NOTE] -> The .NET Framework caches SSL sessions as they are created and attempts to reuse a cached session for a new request, if possible. When attempting to reuse an SSL session, the .NET Framework uses the first element of (if there is one), or tries to reuse an anonymous session if is empty. +> The .NET Framework caches SSL sessions as they are created and attempts to reuse a cached session for a new request, if possible. When attempting to reuse an SSL session, the .NET Framework uses the first element of (if there is one), or tries to reuse an anonymous session if is empty. ]]> @@ -713,7 +713,7 @@ You are not required to specify credentials when connecting using anonymous logon. You must set the property by using a credential of type ; this ensures that the user name and password can be read and sent to the server. > [!CAUTION] -> Credentials information is not encrypted when transmitted to the server unless the property is set to `true`. +> Credentials information is not encrypted when transmitted to the server unless the property is set to `true`. Changing after calling the , , , or method causes an exception. @@ -793,7 +793,7 @@ ||If a cached resource exists, it is deleted. The resource is downloaded from the server and is returned to the caller.| > [!NOTE] -> Setting overrides any configuration setting. +> Setting overrides any configuration setting. ]]> @@ -851,7 +851,7 @@ ## Remarks > [!CAUTION] -> Unless the property is `true`, all data and commands, including your user name and password information, are sent to the server in clear text. Anyone monitoring network traffic can view your credentials and use them to connect to the server. If you are connecting to an FTP server that requires credentials and supports SSL, you should set to `true`. +> Unless the property is `true`, all data and commands, including your user name and password information, are sent to the server in clear text. Anyone monitoring network traffic can view your credentials and use them to connect to the server. If you are connecting to an FTP server that requires credentials and supports SSL, you should set to `true`. The `"AUTH TLS"` command is sent to the server to request an encrypted session. If the server does not recognize this command, you receive a exception. @@ -923,7 +923,7 @@ In addition to the exceptions noted in "Exceptions," rethrows exceptions that were thrown while opening the stream for writing. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -997,7 +997,7 @@ In addition to the exceptions noted in "Exceptions," rethrows exceptions that were thrown while communicating with the server. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1075,7 +1075,7 @@ blocks while waiting for the stream. To prevent this, call the method in place of . > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1158,7 +1158,7 @@ This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). > [!NOTE] -> Multiple calls to return the same response object; the request is not reissued. +> Multiple calls to return the same response object; the request is not reissued. diff --git a/xml/System.Net/FtpWebResponse.xml b/xml/System.Net/FtpWebResponse.xml index 229bbdcc094..8888ed01c01 100644 --- a/xml/System.Net/FtpWebResponse.xml +++ b/xml/System.Net/FtpWebResponse.xml @@ -69,7 +69,7 @@ ## Examples The following code example sends a request to delete a file on an FTP server and displays the status message from the server's response to the request. For additional examples, see the members of the and classes. - + :::code language="csharp" source="~/snippets/csharp/System.Net/FtpStatusCode/Overview/ftptests.cs" id="Snippet4"::: ]]> @@ -188,7 +188,7 @@ The method closes the data stream returned by the method if the property is `false`. During the close, data might be sent to the server on the control connection. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). diff --git a/xml/System.Net/HttpListener.xml b/xml/System.Net/HttpListener.xml index dc75a7b863c..fbf622cb9a2 100644 --- a/xml/System.Net/HttpListener.xml +++ b/xml/System.Net/HttpListener.xml @@ -232,7 +232,7 @@ If you want an object to use different authentication mechanisms based on characteristics of the requests it receives (for example, the request's or property), you must implement a method that chooses the authentication scheme. For instructions about how to do this, see the property documentation. > [!NOTE] -> To set this property to enable Digest, NTLM, or Negotiate requires the , . +> To set this property to enable Digest, NTLM, or Negotiate requires the , . @@ -297,14 +297,14 @@ ## Remarks > [!NOTE] -> If you want the same authentication protocol to be used for all requests handled by a particular instance of , you do not need to set this property. To specify a protocol to be used for all client requests, use the property. +> If you want the same authentication protocol to be used for all requests handled by a particular instance of , you do not need to set this property. To specify a protocol to be used for all client requests, use the property. If the client has not specified authentication information in its headers, the calls the specified delegate for each unauthenticated incoming request to determine which, if any, protocol to use to authenticate the client. The and methods return an incoming request only if the successfully authenticated the request. If a request cannot be authenticated, the automatically sends back a 401 response. You can get the identity of a successfully authenticated client using the property. The ability to delegate the choice of authentication protocol to an application-specific method is useful if you want an instance of to use different authentication protocols depending on the characteristics of the requests it receives (for example, the request's or property). > [!NOTE] -> To set this property to enable Digest, NTLM, or Negotiate requires the , . +> To set this property to enable Digest, NTLM, or Negotiate requires the , . @@ -1226,7 +1226,7 @@ The following code example demonstrates calling the `Close` method: After you have started an object, you can use the method to stop it. > [!NOTE] -> If this listener instance uses https, you must install and select a Server Certificate. Otherwise, an query of this will fail with an unexpected close of the connection. You can configure Server Certificates and other listener options by using [HttpCfg.exe](/windows/win32/http/httpcfg-exe). +> If this listener instance uses https, you must install and select a Server Certificate. Otherwise, an query of this will fail with an unexpected close of the connection. You can configure Server Certificates and other listener options by using [HttpCfg.exe](/windows/win32/http/httpcfg-exe). @@ -1462,7 +1462,7 @@ The following code example demonstrates using the [!NOTE] -> While setting this property to `true` increases performance because the does not send additional NTLM authentication challenges, there is a security risk in not requiring all requests to provide authentication information. You must determine whether the increase in performance is worth this risk. +> While setting this property to `true` increases performance because the does not send additional NTLM authentication challenges, there is a security risk in not requiring all requests to provide authentication information. You must determine whether the increase in performance is worth this risk. diff --git a/xml/System.Net/HttpListenerRequest.xml b/xml/System.Net/HttpListenerRequest.xml index 8c27840d77c..c9c5fa50c72 100644 --- a/xml/System.Net/HttpListenerRequest.xml +++ b/xml/System.Net/HttpListenerRequest.xml @@ -892,7 +892,7 @@ If the client transmits data (for example, using the HTTP `POST` method), the stream returned by this method contains that data. > [!NOTE] -> Closing the request does not close the stream returned by this property. When you no longer need the stream, you should close it by calling the method. +> Closing the request does not close the stream returned by this property. When you no longer need the stream, you should close it by calling the method. @@ -1741,9 +1741,9 @@ The `http.sys` service exposes two request URI strings: -- Raw URI +- Raw URI -- Converted URI +- Converted URI The raw URI is the provided in the request line of a HTTP request: @@ -1759,11 +1759,11 @@ The `http.sys` service combines the property value and the string in the request line to create a converted URI. In addition, `http.sys` and the class also do the following: -- Un-escapes all percent encoded values. +- Un-escapes all percent encoded values. -- Converts percent-encoded non-ASCII characters into a UTF-16 character representation. Note that UTF-8 and ANSI/DBCS characters are supported as well as Unicode characters (Unicode encoding using the %uXXXX format). +- Converts percent-encoded non-ASCII characters into a UTF-16 character representation. Note that UTF-8 and ANSI/DBCS characters are supported as well as Unicode characters (Unicode encoding using the %uXXXX format). -- Executes other normalization steps, like path compression. +- Executes other normalization steps, like path compression. Since the request doesn't contain any information about the encoding used for percent-encoded values, it may not be possible to determine the correct encoding just by parsing the percent-encoded values. diff --git a/xml/System.Net/HttpListenerResponse.xml b/xml/System.Net/HttpListenerResponse.xml index 61f5a581f32..3bf74308f3a 100644 --- a/xml/System.Net/HttpListenerResponse.xml +++ b/xml/System.Net/HttpListenerResponse.xml @@ -53,14 +53,14 @@ Represents a response to a request being handled by an object. - object, the request and response are made available to your application in an object. The request is represented by an object and is available in the property. The response is represented by an object and is available in the property. - - You can customize the response by setting various properties, such as , , and . Use the property to obtain a instance to which response data can be written. Finally, send the response data to the client by calling the method. - - + object, the request and response are made available to your application in an object. The request is represented by an object and is available in the property. The response is represented by an object and is available in the property. + + You can customize the response by setting various properties, such as , , and . Use the property to obtain a instance to which response data can be written. Finally, send the response data to the client by calling the method. + + ]]> @@ -112,11 +112,11 @@ Closes the connection to the client without sending a response. - and objects. The connection to the client is also closed, regardless of the property value of the client request. - + and objects. The connection to the client is also closed, regardless of the property value of the client request. + ]]> @@ -167,29 +167,29 @@ The value for the header. Adds the specified header and value to the HTTP headers for this response. - method on the collection returned by the property. - - If the header specified in `name` does not exist, this method inserts a new header into the property's collection. If `name` is present in the collection, this method replaces the existing value with `value`. To add a value to an existing header without replacing the existing value, use the method. - - - -## Examples - The following code example demonstrates adding a header using this property. - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet26"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet26"::: - + method on the collection returned by the property. + + If the header specified in `name` does not exist, this method inserts a new header into the property's collection. If `name` is present in the collection, this method replaces the existing value with `value`. To add a value to an existing header without replacing the existing value, use the method. + + + +## Examples + The following code example demonstrates adding a header using this property. + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet26"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet26"::: + ]]> is or an empty string (""). - You are not allowed to specify a value for the specified header. - - -or- - + You are not allowed to specify a value for the specified header. + + -or- + or contains invalid characters. .NET Framework and .NET Core versions 2.0 - 3.1 only: The length of is greater than 65,535 characters. @@ -239,21 +239,21 @@ The to add to the collection to be sent with this response. Adds the specified to the collection of cookies for this response. - method on the collection returned by the property. - - If the specified cookie does not exist in the property's collection, `cookie` is added. If the cookie exists in the collection, `cookie` replaces it. - - - -## Examples - The following code example demonstrates adding a cookie to a response - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet20"::: - + method on the collection returned by the property. + + If the specified cookie does not exist in the property's collection, `cookie` is added. If the cookie exists in the collection, `cookie` replaces it. + + + +## Examples + The following code example demonstrates adding a cookie to a response + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet20"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet20"::: + ]]> @@ -306,24 +306,24 @@ The value to append to the header. Appends a value to the specified HTTP header to be sent with this response. - method on the collection returned by the property. - - If the header specified in `header` does not exist, this method inserts a new header into the property's collection. If `header` is present in the collection, this method adds `value` to the existing values. To replace the value of an existing header, use the method. - + method on the collection returned by the property. + + If the header specified in `header` does not exist, this method inserts a new header into the property's collection. If `header` is present in the collection, this method adds `value` to the existing values. To replace the value of an existing header, use the method. + ]]> - is or an empty string (""). - - -or- - - You are not allowed to specify a value for the specified header. - - -or- - + is or an empty string (""). + + -or- + + You are not allowed to specify a value for the specified header. + + -or- + or contains invalid characters. .NET Framework and .NET Core versions 2.0 - 3.1 only: The length of is greater than 65,535 characters. @@ -385,19 +385,19 @@ Sends the response to the client and releases the resources held by this instance. - associated with the response. - - - -## Examples - The following code example demonstrates calling this method to send a (403) response to the client. - + associated with the response. + + + +## Examples + The following code example demonstrates calling this method to send a (403) response to the client. + :::code language="csharp" source="~/snippets/csharp/System.Net/AuthenticationSchemes/Overview/sample.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet5"::: + ]]> @@ -455,24 +455,24 @@ to block execution while flushing the stream to the client; otherwise, . Returns the specified byte array to the client and releases the resources held by this instance. - array instead of writing the body data to the property and calling the method. - + array instead of writing the body data to the property and calling the method. + This method closes the response stream and the associated with the response. If `false` is specified as the `willBlock`, the method returns immediately and the connection is closed asynchronously once the data is sent. > [!NOTE] -> If closing asynchronously, it is not possible for the caller to determine when the data have been sent. In addition to that, disposing the , or may close the connection before all the data are sent. - -## Examples - The following code example demonstrates calling this method. - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet24"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet24"::: - +> If closing asynchronously, it is not possible for the caller to determine when the data have been sent. In addition to that, disposing the , or may close the connection before all the data are sent. + +## Examples + The following code example demonstrates calling this method. + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet24"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet24"::: + ]]> @@ -536,19 +536,19 @@ Gets or sets the for this response's . An object suitable for use with the data in the property, or if no encoding is specified. - object can be used to convert byte sequences into character sets (code pages) and characters into byte sequences. - - - -## Examples - The following code example demonstrates using this property. - + object can be used to convert byte sequences into character sets (code pages) and characters into byte sequences. + + + +## Examples + The following code example demonstrates using this property. + :::code language="csharp" source="~/snippets/csharp/System.Net/AuthenticationSchemes/Overview/sample.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet5"::: + ]]> @@ -600,21 +600,21 @@ Gets or sets the number of bytes in the body data included in the response. The value of the response's header. - property. If you do not, the does not send the response data. - - For a complete list of response headers, see the enumeration. - - - -## Examples - The following code example demonstrates setting the value of this property. - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet2"::: - + property. If you do not, the does not send the response data. + + For a complete list of response headers, see the enumeration. + + + +## Examples + The following code example demonstrates setting the value of this property. + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet2"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet2"::: + ]]> The value specified for a set operation is less than zero. @@ -670,13 +670,13 @@ Gets or sets the MIME type of the content returned. A instance that contains the text of the response's header. - enumeration. - + enumeration. + ]]> The value specified for a set operation is . @@ -731,19 +731,19 @@ Gets or sets the collection of cookies returned with the response. A that contains cookies to accompany the response. The collection is empty if no cookies have been added to the response. - @@ -792,33 +792,33 @@ The instance to copy. Copies properties from the specified to this response. - instance as a template. Customize the template response once and, instead of configuring each response separately, call the method to configure a new response based on property values in the template response. - - The following properties are copied from `templateResponse` to the current instance. - -- - -- - -- - -- - -- - -- - - - -## Examples - The following code example demonstrates creating a response by copying a template response. - + instance as a template. Customize the template response once and, instead of configuring each response separately, call the method to configure a new response based on property values in the template response. + + The following properties are copied from `templateResponse` to the current instance. + +- + +- + +- + +- + +- + +- + + + +## Examples + The following code example demonstrates creating a response by copying a template response. + :::code language="csharp" source="~/snippets/csharp/System.Net/AuthenticationSchemes/Overview/sample.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet5"::: + ]]> @@ -870,24 +870,24 @@ Gets or sets the collection of header name/value pairs returned by the server. A instance that contains all the explicitly set HTTP headers to be included in the response. - enumeration. - + enumeration. + > [!NOTE] -> If you attempt to set a Content-Length, Keep-Alive, Transfer-Encoding, or WWW-Authenticate header using the Headers property, an exception will be thrown. Use the or properties to set these headers. You cannot set the Transfer-Encoding or WWW-Authenticate headers manually. - - - -## Examples - The following code example demonstrates displaying the headers in a . - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet23"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet23"::: - +> If you attempt to set a Content-Length, Keep-Alive, Transfer-Encoding, or WWW-Authenticate header using the Headers property, an exception will be thrown. Use the or properties to set these headers. You cannot set the Transfer-Encoding or WWW-Authenticate headers manually. + + + +## Examples + The following code example demonstrates displaying the headers in a . + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet23"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet23"::: + ]]> The instance specified for a set operation is not valid for a response. @@ -941,21 +941,21 @@ if the server requests a persistent connection; otherwise, . The default is . - This object is closed. @@ -1002,22 +1002,22 @@ Gets a object to which a response can be written. A object to which a response can be written. - property must be set explicitly before writing to the returned object. - + property must be set explicitly before writing to the returned object. + > [!NOTE] -> Closing the request does not close the stream returned by this property. When you no longer need the stream, you should close it by calling the Close method. - - - -## Examples - The following code example demonstrates calling this method. - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet3"::: - +> Closing the request does not close the stream returned by this property. When you no longer need the stream, you should close it by calling the Close method. + + + +## Examples + The following code example demonstrates calling this method. + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet3"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet3"::: + ]]> This object is closed. @@ -1064,19 +1064,19 @@ Gets or sets the HTTP version used for the response. A object indicating the version of HTTP used when responding to the client. Note that this property is now obsolete. - The value specified for a set operation is . @@ -1135,19 +1135,19 @@ The URL that the client should use to locate the requested resource. Configures the response to redirect the client to the specified URL. - method is used to redirect a client to the new location for a resource. This method sets the response's `Location` header to `url`, the property to , and the property to "Found". - - - -## Examples - The following code example demonstrates calling this method. - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet27"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet27"::: - + method is used to redirect a client to the new location for a resource. This method sets the response's `Location` header to `url`, the property to , and the property to "Found". + + + +## Examples + The following code example demonstrates calling this method. + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet27"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet27"::: + ]]> @@ -1200,22 +1200,22 @@ Gets or sets the value of the HTTP header in this response. A that contains the absolute URL to be sent to the client in the header. - [!NOTE] -> Setting this property does not automatically set the property. - - - -## Examples - The following code example demonstrates setting this property. - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet25"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet25"::: - +> Setting this property does not automatically set the property. + + + +## Examples + The following code example demonstrates setting this property. + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet25"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet25"::: + ]]> The value specified for a set operation is an empty string (""). @@ -1264,11 +1264,11 @@ if the response is set to use chunked transfer encoding; otherwise, . The default is . - @@ -1314,19 +1314,19 @@ A for this response. Adds or updates a in the collection of cookies sent with this response. - , , and properties are the same. If these three pieces of information are the same, the method attempts to update the cookie. The name and domain comparisons are not case sensitive, but the path comparison is case sensitive. - - - -## Examples - The following code example demonstrates calling this method. - - :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet28"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet28"::: - + , , and properties are the same. If these three pieces of information are the same, the method attempts to update the cookie. The name and domain comparisons are not case sensitive, but the path comparison is case sensitive. + + + +## Examples + The following code example demonstrates calling this method. + + :::code language="csharp" source="~/snippets/csharp/System.Net/HttpListener/Overview/test.cs" id="Snippet28"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Net_Listener_Basic/VB/test.vb" id="Snippet28"::: + ]]> @@ -1375,21 +1375,21 @@ Gets or sets the HTTP status code to be returned to the client. An value that specifies the HTTP status code for the requested resource. The default is , indicating that the server successfully processed the client's request and included the requested resource in the response body. - indicates that the server successfully processed the client's request and included the requested resource in the response body. Other common status codes include , indicating that the requested resource was not found on the server, and , indicating that it was unnecessary to return the requested resource in the response body because the client's cached copy of the resource is up-to-date. - - For a complete list of possible status codes, see the enumeration. - - - -## Examples - The following code example demonstrates setting the value of this property. - + indicates that the server successfully processed the client's request and included the requested resource in the response body. Other common status codes include , indicating that the requested resource was not found on the server, and , indicating that it was unnecessary to return the requested resource in the response body because the client's cached copy of the resource is up-to-date. + + For a complete list of possible status codes, see the enumeration. + + + +## Examples + The following code example demonstrates setting the value of this property. + :::code language="csharp" source="~/snippets/csharp/System.Net/AuthenticationSchemes/Overview/sample.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet7"::: + ]]> This object is closed. @@ -1437,19 +1437,19 @@ Gets or sets a text description of the HTTP status code returned to the client. The text description of the HTTP status code returned to the client. The default is the RFC 2616 description for the property value, or an empty string ("") if an RFC 2616 description does not exist. - value. - - - -## Examples - The following code example demonstrates setting the value of this property. - + value. + + + +## Examples + The following code example demonstrates setting the value of this property. + :::code language="csharp" source="~/snippets/csharp/System.Net/AuthenticationSchemes/Overview/sample.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/NCLListener/vb/sample.vb" id="Snippet7"::: + ]]> The value specified for a set operation is . @@ -1500,11 +1500,11 @@ Releases all resources used by the . - method to send the response and release resources held by an . To discard the response and release the resources held by this instance, use the method. - + method to send the response and release resources held by an . To discard the response and release the resources held by this instance, use the method. + ]]> diff --git a/xml/System.Net/HttpWebRequest.xml b/xml/System.Net/HttpWebRequest.xml index e4f17446cee..93479fdc623 100644 --- a/xml/System.Net/HttpWebRequest.xml +++ b/xml/System.Net/HttpWebRequest.xml @@ -114,10 +114,10 @@ The local computer or application config file may specify that a default proxy be used. If the property is specified, then the proxy settings from the property override the local computer or application config file and the instance will use the proxy settings specified. If no proxy is specified in a config file and the property is unspecified, the class uses the proxy settings inherited from Internet options on the local computer. If there are no proxy settings in Internet options, the request is sent directly to the server. > [!NOTE] -> The Framework caches SSL sessions as they are created and attempts to reuse a cached session for a new request, if possible. When attempting to reuse an SSL session, the Framework uses the first element of (if there is one), or tries to reuse an anonymous sessions if is empty. +> The Framework caches SSL sessions as they are created and attempts to reuse a cached session for a new request, if possible. When attempting to reuse an SSL session, the Framework uses the first element of (if there is one), or tries to reuse an anonymous sessions if is empty. > [!NOTE] -> For security reasons, cookies are disabled by default. If you want to use cookies, use the property to enable cookies. +> For security reasons, cookies are disabled by default. If you want to use cookies, use the property to enable cookies. For apps that use TLS/SSL through APIs such as HttpClient, HttpWebRequest, FTPClient, SmtpClient, and SsStream, .NET blocks insecure cipher and hashing algorithms for connections by default. You might need to opt out of this behavior to maintain interoperability with existing SSL3 services OR TLS w/ RC4 services. [Cannot connect to a server by using the ServicePointManager or SslStream APIs after upgrade to the .NET Framework 4.6](https://support.microsoft.com/kb/3069494) explains how to modify your code to disable this behavior, if necessary. @@ -332,7 +332,7 @@ Both constructors are obsolete and should not b The method will synchronously execute the callback specified to the or methods if the method is called while either of these operations are outstanding. This can lead to potential deadlock issues. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing](/dotnet/framework/network-programming/network-tracing). @@ -404,7 +404,7 @@ Both constructors are obsolete and should not b To clear the `Accept` HTTP header, set the property to `null`. > [!NOTE] -> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. +> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. @@ -1546,10 +1546,10 @@ Both constructors are obsolete and should not b To learn more about the thread pool, see [The managed thread pool](/dotnet/standard/threading/the-managed-thread-pool). > [!NOTE] -> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. +> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1649,10 +1649,10 @@ Both constructors are obsolete and should not b To learn more about the thread pool, see [The managed thread pool](/dotnet/standard/threading/the-managed-thread-pool). > [!NOTE] -> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. +> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1660,7 +1660,7 @@ Both constructors are obsolete and should not b The following code example uses the method to make an asynchronous request for an Internet resource. > [!NOTE] -> In the case of asynchronous requests, it is the responsibility of the client application to implement its own time-out mechanism. The following code example shows how to do it. +> In the case of asynchronous requests, it is the responsibility of the client application to implement its own time-out mechanism. The following code example shows how to do it. :::code language="csharp" source="~/snippets/csharp/System.Net/HttpWebRequest/Abort/begingetresponse.cs" id="Snippet1"::: @@ -1755,12 +1755,12 @@ Both constructors are obsolete and should not b An application can add a certificate to a collection, but might not have access rights to it. To use a certificate contained in the collection, the application must have the same access rights as the entity that issued the certificate. > [!NOTE] -> The Framework caches SSL sessions as they are created and attempts to reuse a cached session for a new request, if possible. When attempting to reuse an SSL session, the Framework uses the first element of (if there is one), or tries to reuse an anonymous sessions if is empty. +> The Framework caches SSL sessions as they are created and attempts to reuse a cached session for a new request, if possible. When attempting to reuse an SSL session, the Framework uses the first element of (if there is one), or tries to reuse an anonymous sessions if is empty. > [!NOTE] -> For performance reasons, you shouldn't add a client certificate to a unless you know the server will ask for it. +> For performance reasons, you shouldn't add a client certificate to a unless you know the server will ask for it. > -> For a code example illustrating how to enumerate the certificates in the client certificate store, see the class. +> For a code example illustrating how to enumerate the certificates in the client certificate store, see the class. ]]> @@ -1823,7 +1823,7 @@ Both constructors are obsolete and should not b Changing the property after the request has been started by calling the , , , or method throws an . > [!NOTE] -> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. +> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. @@ -1970,7 +1970,7 @@ Both constructors are obsolete and should not b After the property is set to a value, that number of bytes must be written to the request stream that is returned by calling the method or both the and the methods. > [!NOTE] -> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. +> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. @@ -2047,7 +2047,7 @@ Both constructors are obsolete and should not b To clear the `Content-type` HTTP header, set the property to `null`. > [!NOTE] -> The value for this property is stored in . If is set, the property value is lost. +> The value for this property is stored in . If is set, the property value is lost. @@ -2250,7 +2250,7 @@ Both constructors are obsolete and should not b is `null` by default. You must assign a object to the property to have cookies returned in the property of the returned by the method. > [!NOTE] -> For security reasons, cookies are disabled by default. If you want to use cookies, use the property to enable cookies. +> For security reasons, cookies are disabled by default. If you want to use cookies, use the property to enable cookies. @@ -2332,7 +2332,7 @@ Both constructors are obsolete and should not b If the class is being used in a middle-tier application, such as an ASP.NET application, the credentials in the property belong to the account running the ASP page (the server-side credentials). Typically, you would set this property to the credentials of the client on whose behalf the request is made. > [!NOTE] -> The NTLM authentication scheme cannot be used to impersonate another user. Kerberos must be specially configured to support impersonation. +> The NTLM authentication scheme cannot be used to impersonate another user. Kerberos must be specially configured to support impersonation. To restrict HttpWebRequest to one or more authentication methods, use the class and bind your credentials to one or more authentication schemes @@ -2417,7 +2417,7 @@ Both constructors are obsolete and should not b If the property is , this indicates that the `Date` HTTP header is not included in the property and the . > [!NOTE] -> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. +> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. If the is set and an attempt is made to send a with no body, then a will be thrown by the , , and methods. @@ -2834,10 +2834,10 @@ Both constructors are obsolete and should not b The method completes an asynchronous request for an Internet resource that was started by calling the method. > [!CAUTION] -> You must call the method to close the stream and release the connection. Failure to do so may cause your application to run out of connections. +> You must call the method to close the stream and release the connection. Failure to do so may cause your application to run out of connections. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -3091,10 +3091,10 @@ The GetHashCode method returns a hash code of the web request. This value can be You must call the method to close the stream and release the connection for reuse. Failure to close the stream causes your application to run out of connections. > [!NOTE] -> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. +> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -3199,10 +3199,10 @@ The GetHashCode method returns a hash code of the web request. This value can be You must call the method to close the stream and release the connection for reuse. Failure to close the stream causes your application to run out of connections. > [!NOTE] -> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. +> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -3289,24 +3289,24 @@ The GetHashCode method returns a hash code of the web request. This value can be A is thrown in several cases when the properties set on the class are conflicting. This exception occurs if an application sets the property and the property to `true`, and then sends an HTTP GET request. This exception occurs if an application tries to send chunked to a server that only supports HTTP 1.0 protocol, where this is not supported. This exception occurs if an application tries to send data without setting the property or the is `false` when buffering is disabled and on a keepalive connection (the property is `true`)`.` > [!CAUTION] -> You must call the method to close the stream and release the connection. Failure to do so may cause your application to run out of connections. +> You must call the method to close the stream and release the connection. Failure to do so may cause your application to run out of connections. When using the POST method, you must get the request stream, write the data to be posted, and close the stream. This method blocks waiting for content to post; if there is no time-out set and you do not provide content, the calling thread blocks indefinitely. > [!NOTE] -> Multiple calls to return the same response object; the request is not reissued. +> Multiple calls to return the same response object; the request is not reissued. > [!NOTE] -> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. +> Your application cannot mix synchronous and asynchronous methods for a particular request. If you call the method, you must use the method to retrieve the response. > [!NOTE] -> If a is thrown, use the and properties of the exception to determine the response from the server. +> If a is thrown, use the and properties of the exception to determine the response from the server. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). > [!NOTE] -> For security reasons, cookies are disabled by default. If you wish to use cookies, use the property to enable cookies. +> For security reasons, cookies are disabled by default. If you wish to use cookies, use the property to enable cookies. @@ -3644,7 +3644,7 @@ The GetHashCode method returns a hash code of the web request. This value can be If the property is , this indicates that the `If-Modified-Since` HTTP header is not included in the property and the . > [!NOTE] -> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. +> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. If the property is set and 304 (Not Modified) status code is returned, then a will be thrown by the , , and methods. @@ -3722,7 +3722,7 @@ The GetHashCode method returns a hash code of the web request. This value can be Set this property to `true` to send a `Connection` HTTP header with the value Keep-alive. An application uses to indicate a preference for persistent connections. When the property is `true`, the application makes persistent connections to the servers that support them. > [!NOTE] -> When using HTTP/1.1, Keep-Alive is on by default. Setting to `false` may result in sending a `Connection: Close` header to the server. +> When using HTTP/1.1, Keep-Alive is on by default. Setting to `false` may result in sending a `Connection: Close` header to the server. @@ -4277,7 +4277,7 @@ The GetHashCode method returns a hash code of the web request. This value can be The class supports only versions 1.0 and 1.1 of HTTP. Setting to a different version throws an exception. > [!NOTE] -> To set the HTTP version of the current request, use the and fields of the class. +> To set the HTTP version of the current request, use the and fields of the class. @@ -4347,11 +4347,11 @@ The GetHashCode method returns a hash code of the web request. This value can be The class supports local proxy bypass. The class considers a destination to be local if any of the following conditions are met: -- The destination contains a flat name (no dots in the URL). +- The destination contains a flat name (no dots in the URL). -- The destination contains a loopback address ( or ) or the destination contains an assigned to the local computer. +- The destination contains a loopback address ( or ) or the destination contains an assigned to the local computer. -- The domain suffix of the destination matches the local computer's domain suffix (). +- The domain suffix of the destination matches the local computer's domain suffix (). Changing the property after the request has been started by calling the , , , or method throws an . For information on the proxy element see [\<defaultProxy\> Element (Network Settings)](/dotnet/framework/configure-apps/file-schema/network/defaultproxy-element-network-settings). @@ -4507,7 +4507,7 @@ The GetHashCode method returns a hash code of the web request. This value can be To clear the `Referer` HTTP header, set the property to `null`. > [!NOTE] -> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. +> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. @@ -4965,7 +4965,7 @@ The GetHashCode method returns a hash code of the web request. This value can be The property has no effect on asynchronous requests made with the or method. > [!CAUTION] -> In the case of asynchronous requests, the client application implements its own time-out mechanism. Refer to the example in the method. +> In the case of asynchronous requests, the client application implements its own time-out mechanism. Refer to the example in the method. To specify the amount of time to wait before a read or write operation times out, use the property. @@ -5039,7 +5039,7 @@ The GetHashCode method returns a hash code of the web request. This value can be Values assigned to the property replace any existing contents. > [!NOTE] -> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. +> The value for this property is stored in . If WebHeaderCollection is set, the property value is lost. ]]> @@ -5103,20 +5103,20 @@ The GetHashCode method returns a hash code of the web request. This value can be If this property is set to `true`, the connection used to retrieve the response remains open after the authentication has been performed. In this case, other requests that have this property set to `true` may use the connection without re-authenticating. In other words, if a connection has been authenticated for user A, user B may reuse A's connection; user B's request is fulfilled based on the credentials of user A. > [!CAUTION] -> Because it is possible for an application to use the connection without being authenticated, you need to be sure that there is no administrative vulnerability in your system when setting this property to `true`. If your application sends requests for multiple users (impersonates multiple user accounts) and relies on authentication to protect resources, do not set this property to `true` unless you use connection groups as described below. +> Because it is possible for an application to use the connection without being authenticated, you need to be sure that there is no administrative vulnerability in your system when setting this property to `true`. If your application sends requests for multiple users (impersonates multiple user accounts) and relies on authentication to protect resources, do not set this property to `true` unless you use connection groups as described below. You may want to consider enabling this mechanism if your are having performance problems and your application is running on a Web server with integrated Windows authentication. Enabling this setting opens the system to security risks. If you set the property to `true` be sure to take the following precautions: -- Use the property to manage connections for different users. This avoids the potential use of the connection by non-authenticated applications. For example, user A should have a unique connection group name that is different from user B. This provides a layer of isolation for each user account. +- Use the property to manage connections for different users. This avoids the potential use of the connection by non-authenticated applications. For example, user A should have a unique connection group name that is different from user B. This provides a layer of isolation for each user account. -- Run your application in a protected environment to help avoid possible connection exploits. +- Run your application in a protected environment to help avoid possible connection exploits. If you control the back-end server, as an alternative you might consider turning off authentication persistence. This increases performance to a lesser degree, but it is safer. For more details, see [AuthPersistence](https://learn.microsoft.com/previous-versions/iis/6.0-sdk/ms525244(v=vs.90)). > [!NOTE] -> If both and are set to `true`, each request is sent using a connection from the unsafe pool, but with an Authorization header. +> If both and are set to `true`, each request is sent using a connection from the unsafe pool, but with an Authorization header. ]]> diff --git a/xml/System.Net/HttpWebResponse.xml b/xml/System.Net/HttpWebResponse.xml index 2f540a64cdb..205448ff114 100644 --- a/xml/System.Net/HttpWebResponse.xml +++ b/xml/System.Net/HttpWebResponse.xml @@ -85,7 +85,7 @@ This class contains support for HTTP-specific uses of the properties and methods of the class. The class is used to build HTTP stand-alone client applications that send HTTP requests and receive HTTP responses. > [!NOTE] -> Do not confuse with the class that is used in ASP.NET applications and whose methods and properties are exposed through ASP.NET's intrinsic `Response` object. +> Do not confuse with the class that is used in ASP.NET applications and whose methods and properties are exposed through ASP.NET's intrinsic `Response` object. You should never directly create an instance of the class. Instead, use the instance returned by a call to . You must call either the or the method to close the response and release the connection for reuse. It is not necessary to call both and , but doing so does not cause an error. @@ -375,7 +375,7 @@ The contents of the response from the Internet resource are returned as a or the method to close the stream and release the connection for reuse. It is not necessary to call both and , but doing so does not cause an error. Failure to close the stream can cause your application to run out of connections. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -702,7 +702,7 @@ The contents of the response from the Internet resource are returned as a references. This method invokes the `Dispose()` method of each referenced object. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -938,7 +938,7 @@ The GetHashCode method returns a hash code of the web response instance. This va > You must call one of the , , , or methods to close the stream and release the connection for reuse. It's not necessary to close or dispose both and instances, but doing so doesn't cause an error. Failure to close or dispose the stream will cause your application to run out of connections. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). diff --git a/xml/System.Net/IPAddress.xml b/xml/System.Net/IPAddress.xml index 36197637e39..d5a2fc31892 100644 --- a/xml/System.Net/IPAddress.xml +++ b/xml/System.Net/IPAddress.xml @@ -2340,15 +2340,15 @@ ## Remarks The meaning of changes depending on the context in which it is used. -- Link-local address. On a host with multiple interfaces connected to separate links, the same link-local address can be assigned to multiple interfaces. To eliminate this ambiguity, a scope identifier is used to specify the interface over which messages are exchanged. +- Link-local address. On a host with multiple interfaces connected to separate links, the same link-local address can be assigned to multiple interfaces. To eliminate this ambiguity, a scope identifier is used to specify the interface over which messages are exchanged. > [!NOTE] -> Link-local addresses, identified by the Format Prefix (FP) FE80, are used by nodes when communicating with neighboring nodes on the same link. +> Link-local addresses, identified by the Format Prefix (FP) FE80, are used by nodes when communicating with neighboring nodes on the same link. -- Site-local addresses. A host can be connected to multiple sites. In this case, a scope identifier is used to indicate a specific site to communicate with. +- Site-local addresses. A host can be connected to multiple sites. In this case, a scope identifier is used to indicate a specific site to communicate with. > [!NOTE] -> Site-local addresses, identified by the Format Prefix (FP) FEC0, are used by nodes when communicating on private intranets. +> Site-local addresses, identified by the Format Prefix (FP) FEC0, are used by nodes when communicating on private intranets. The notation that is used to specify the `ScopeId` with an address is `Address%ScopeId`. For example, `FE80::5EFE:192.168.41.30%2.` diff --git a/xml/System.Net/ServicePoint.xml b/xml/System.Net/ServicePoint.xml index 1a4816115d6..9c377fab322 100644 --- a/xml/System.Net/ServicePoint.xml +++ b/xml/System.Net/ServicePoint.xml @@ -70,7 +70,7 @@ When the property is set to a value other than -1, and after the specified time elapses, an active connection is closed after it services the next request. This is useful for applications that do not require active connections that are opened indefinitely, as they are by default. > [!NOTE] -> In high load conditions, some applications may run out of free threads in the ThreadPool, which may lead to poor system performance (such as high and variable transaction times). +> In high load conditions, some applications may run out of free threads in the ThreadPool, which may lead to poor system performance (such as high and variable transaction times). ## Examples @@ -199,7 +199,7 @@ Some load balancing techniques require a client to use a specific local IP address and port number, rather than (or for Internet Protocol Version 6) and an ephemeral port. Your can satisfy this requirement. > [!NOTE] -> Since .NET 9, uses to bind the underlying socket to the endpoint from this delegate. +> Since .NET 9, uses to bind the underlying socket to the endpoint from this delegate. ]]> @@ -263,7 +263,7 @@ Although a object can make multiple connections to an Internet resource, it can maintain only one certificate. > [!NOTE] -> Since .NET 9, returns the remote certificate retrieved via on . +> Since .NET 9, returns the remote certificate retrieved via on . ## Examples The following code example displays the value of this property. @@ -328,7 +328,7 @@ Although a object can make multiple connections t ## Remarks > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ## Examples The following code example displays the value of this property. @@ -460,7 +460,7 @@ Although a object can make multiple connections t > [!NOTE] -> Since .NET 9, this property maps to . However, handlers are not being reused between requests so it doesn't have any meaningful impact. +> Since .NET 9, this property maps to . However, handlers are not being reused between requests so it doesn't have any meaningful impact. ## Examples @@ -528,7 +528,7 @@ Although a object can make multiple connections t The property sets the maximum number of connections that the object can make to an Internet resource. The value of the property is set to the value of the property when the object is created; subsequent changes to have no effect on existing objects. > [!NOTE] -> Since .NET 9, this property maps to . However, handlers are not being reused between requests so it doesn't have any meaningful impact. +> Since .NET 9, this property maps to . However, handlers are not being reused between requests so it doesn't have any meaningful impact. ## Examples @@ -663,7 +663,7 @@ Although a object can make multiple connections t The property contains the number of open Internet connections associated with this object. The value of cannot exceed that of . > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ## Examples The following code example uses the property to determine the number of open Internet connections associated with this object. @@ -745,7 +745,7 @@ Although a object can make multiple connections t The Expect 100-Continue behavior is fully described in IETF RFC 2616 Section 10.1.1. > [!NOTE] -> Since .NET 9, this property sets on the . +> Since .NET 9, this property sets on the . ## Examples The following code example displays the value of this property. @@ -920,7 +920,7 @@ The `GetHashCode` method returns a hash code of this instance. This value can be When the for a connection associated with a is exceeded, the connection remains open until the application tries to use the connection. At that time, the Framework closes the connection and creates a new connection to the remote host. > [!NOTE] -> Since .NET 9, this property maps to . However, handlers are not being reused between requests so it doesn't have any meaningful impact. +> Since .NET 9, this property maps to . However, handlers are not being reused between requests so it doesn't have any meaningful impact. ## Examples The following code example uses the property to set and retrieve the idle time. @@ -985,7 +985,7 @@ The `GetHashCode` method returns a hash code of this instance. This value can be The HTTP protocol versions are HTTP/1.0 and HTTP/1.1. > [!NOTE] -> Since .NET 9, this property returns . +> Since .NET 9, this property returns . ## Examples The following code example displays the value of this property. @@ -1053,7 +1053,7 @@ The `GetHashCode` method returns a hash code of this instance. This value can be For additional information, see . > [!NOTE] -> Since .NET 9, uses to set to the value of this property. +> Since .NET 9, uses to set to the value of this property. ## Examples The following code example sets the value of this property. @@ -1135,7 +1135,7 @@ The `GetHashCode` method returns a hash code of this instance. This value can be If a TCP connection is dropped as the result of keep-alives, a of is returned to any calls in progress on the socket, and any subsequent calls will fail with a of . > [!NOTE] -> Since .NET 9, uses to set TCP keep alive options on the underlying socket to the values provided to this method. +> Since .NET 9, uses to set TCP keep alive options on the underlying socket to the values provided to this method. ]]> @@ -1196,7 +1196,7 @@ The `GetHashCode` method returns a hash code of this instance. This value can be Pipelining is described in detail in IETF RFC 2616 section 8.1.2.2. > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ## Examples The following code example displays the value of this property. @@ -1274,7 +1274,7 @@ The `GetHashCode` method returns a hash code of this instance. This value can be The Nagle algorithm is fully described in IETF RFC 896. > [!NOTE] -> Since .NET 9, uses to set to the opposite value than this property. +> Since .NET 9, uses to set to the opposite value than this property. ## Examples The following code example displays the value of this property. diff --git a/xml/System.Net/ServicePointManager.xml b/xml/System.Net/ServicePointManager.xml index a615a7b1c1a..a61f5afc598 100644 --- a/xml/System.Net/ServicePointManager.xml +++ b/xml/System.Net/ServicePointManager.xml @@ -194,7 +194,7 @@ When the is `true`, the certificate is checked against the certificate authority revocation list, as part of the certificate validation process. Its default value is `false`. > [!NOTE] -> Since .NET 9, this property maps to on . +> Since .NET 9, this property maps to on . ## Examples The following code example sets this property. @@ -264,10 +264,10 @@ Changing the property has no effect on existing objects; it affects only objects that are initialized after the change. If the value of this property has not been set either directly or through configuration, the value defaults to the constant . > [!NOTE] -> Any changes to the property affect both HTTP 1.0 and HTTP 1.1 connections. It is not possible to separately alter the connection limit for HTTP 1.0 and HTTP 1.1 protocols. +> Any changes to the property affect both HTTP 1.0 and HTTP 1.1 connections. It is not possible to separately alter the connection limit for HTTP 1.0 and HTTP 1.1 protocols. > [!NOTE] -> Since .NET 9, this property maps to unless overridden by . However, handlers are not being reused between requests so it doesn't have any meaningful impact. +> Since .NET 9, this property maps to unless overridden by . However, handlers are not being reused between requests so it doesn't have any meaningful impact. ## Examples The following code example sets this property. @@ -426,7 +426,7 @@ ## Remarks > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ## Examples The following code example sets this property. @@ -487,7 +487,7 @@ When more than one IP address is associated with a host name, a DNS resolution normally returns only the first IP address. If you set this property to `true`, then subsequent DNS resolutions will cycle through all available IP addresses for a particular host. This option is useful when a service uses DNS as a load balancing mechanism between servers or server clusters. > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ## Examples The following code example sets this property. @@ -554,7 +554,7 @@ The use of the Null cipher is required when the encryption policy is set to . > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ]]> @@ -623,7 +623,7 @@ The Expect 100-Continue behavior is fully described in IETF RFC 2616 Section 10.1.1. > [!NOTE] -> Since .NET 9, this property sets on the unless overridden by . +> Since .NET 9, this property sets on the unless overridden by . ## Examples The following code example sets this property. @@ -923,7 +923,7 @@ After a object has been idle for the time specified in , it is eligible for garbage collection. A object is idle when the list of connections associated with the object is empty. > [!NOTE] -> Since .NET 9, this property maps to unless overridden by . However, handlers are not being reused between requests so it doesn't have any meaningful impact. +> Since .NET 9, this property maps to unless overridden by . However, handlers are not being reused between requests so it doesn't have any meaningful impact. ## Examples The following code example sets this property. @@ -993,7 +993,7 @@ When you reduce the property below the number of objects currently in existence, the deletes the objects with the longest idle times. If the number of objects with active connections is greater than the value of , the object deletes the objects as they become idle. > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ## Examples The following code example sets this property. @@ -1055,7 +1055,7 @@ The default value is `false`. > [!NOTE] -> This property is only implemented on .NET Framework. +> This property is only implemented on .NET Framework. ]]> @@ -1125,7 +1125,7 @@ For versions of the .NET Framework through the .NET Framework 4.6.2, no default Developers may want to opt out of this behavior in order to maintain interoperability with their existing SSL3 services OR TLS w/ RC4 services. [This article](https://support.microsoft.com/kb/3069494) explains how to modify your code so that the new behavior is disabled. > [!NOTE] -> Since .NET 9, this property maps to on . +> Since .NET 9, this property maps to on . ]]> @@ -1194,7 +1194,7 @@ In other words, you can attach multiple delegates, and they all get a callback f Each callback returns a value that indicates whether the certificate is accepted or not; however, only the value from the last delegate is respected. > [!NOTE] -> Since .NET 9, this property maps to on . +> Since .NET 9, this property maps to on . ]]> @@ -1268,7 +1268,7 @@ Each callback returns a value that indicates whether the certificate is accepted If a TCP connection is dropped as the result of keep-alives, a of is returned to any calls in progress on the socket, and any subsequent calls will fail with a of . > [!NOTE] -> Since .NET 9, uses to set TCP keep alive options on the underlying socket to the values provided to this method. +> Since .NET 9, uses to set TCP keep alive options on the underlying socket to the values provided to this method. ]]> @@ -1329,7 +1329,7 @@ Each callback returns a value that indicates whether the certificate is accepted The Nagle algorithm is fully described in IETF RFC 896. > [!NOTE] -> Since .NET 9, uses to set to the opposite value than this property. +> Since .NET 9, uses to set to the opposite value than this property. ## Examples The following code example sets this property. diff --git a/xml/System.Net/SocketAddress.xml b/xml/System.Net/SocketAddress.xml index a37402daa83..bdc6e92fd20 100644 --- a/xml/System.Net/SocketAddress.xml +++ b/xml/System.Net/SocketAddress.xml @@ -512,7 +512,7 @@ This property gets or sets the specified byte position in the underlying buffer. > [!NOTE] -> Be sure to call before referring to elements in the underlying buffer. Referring to an index that does not exist will cause the to throw an . +> Be sure to call before referring to elements in the underlying buffer. Referring to an index that does not exist will cause the to throw an . ]]> diff --git a/xml/System.Net/SocketPermission.xml b/xml/System.Net/SocketPermission.xml index 500f9c4755e..c386ff4e0d8 100644 --- a/xml/System.Net/SocketPermission.xml +++ b/xml/System.Net/SocketPermission.xml @@ -49,26 +49,26 @@ Controls rights to make or accept connections on a transport address. - instances control permission to accept connections or initiate connections. A permission can be established for a host name or IP address, a port number, and a transport protocol. - + instances control permission to accept connections or initiate connections. A permission can be established for a host name or IP address, a port number, and a transport protocol. + > [!NOTE] -> Avoid creating socket permissions using host names, as these names have to be resolved to IP addresses, and this might block the stack. - - - -## Examples - The following example demonstrates how to use the class to set, change, and enforce various socket access restrictions. - +> Avoid creating socket permissions using host names, as these names have to be resolved to IP addresses, and this might block the stack. + + + +## Examples + The following example demonstrates how to use the class to set, change, and enforce various socket access restrictions. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/SocketPermissionExample/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet1"::: + ]]> @@ -116,20 +116,20 @@ One of the values. Initializes a new instance of the class that allows unrestricted access to the or disallows access to the . - instance is created with the `Unrestricted` value from then the instance passes all demands. Any other value for `state` results in a instance that fails all demands unless a transport address permission is added with . - - - -## Examples - The following example creates a using a enumerated value. - + instance is created with the `Unrestricted` value from then the instance passes all demands. Any other value for `state` results in a instance that fails all demands unless a transport address permission is added with . + + + +## Examples + The following example creates a using a enumerated value. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/CPP/dateclient_socketpermission_constructor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/.ctor/dateclient_socketpermission_constructor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: + ]]> @@ -173,24 +173,24 @@ The port number for the transport address. Initializes a new instance of the class for the given transport address with the specified permission. - that controls access to the specified `hostName` and `portNumber` using the specified `transport`. - - The `hostName` can be a DNS name, an IP address, or a specified IP subnet, such as 192.168.1.*. - - The `portNumber` can be any valid port number defined by the transport, or . - - - -## Examples - The following example creates a using a enumerated value, a enumerated value, the hostname, and the port number. - + that controls access to the specified `hostName` and `portNumber` using the specified `transport`. + + The `hostName` can be a DNS name, an IP address, or a specified IP subnet, such as 192.168.1.*. + + The `portNumber` can be any valid port number defined by the transport, or . + + + +## Examples + The following example creates a using a enumerated value, a enumerated value, the hostname, and the port number. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/CPP/dateclient_socketpermission_constructor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/.ctor/dateclient_socketpermission_constructor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: + ]]> @@ -230,15 +230,15 @@ Gets a list of instances that identifies the endpoints that can be accepted under this permission instance. An instance that implements the interface that contains instances. - property to return a list of endpoints to which accept privileges are granted. - + property to return a list of endpoints to which accept privileges are granted. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/SocketPermissionExample/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet2"::: + ]]> @@ -285,20 +285,20 @@ The port number for the transport address. Adds a permission to the set of permissions for a transport address. - method to add connection permissions to the specified host. - + method to add connection permissions to the specified host. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/CPP/dateclient_socketpermission_constructor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/.ctor/dateclient_socketpermission_constructor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: + ]]> @@ -338,20 +338,20 @@ Defines a constant that represents all ports. - property to provide connection permissions to all of the resources ports. - + property to provide connection permissions to all of the resources ports. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/CPP/dateclient_socketpermission_constructor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/.ctor/dateclient_socketpermission_constructor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: + ]]> @@ -389,15 +389,15 @@ Gets a list of instances that identifies the endpoints that can be connected to under this permission instance. An instance that implements the interface that contains instances. - property to return a list of endpoints to which connection privileges are granted. - + property to return a list of endpoints to which connection privileges are granted. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/CPP/dateclient_socketpermission_toxml.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/ConnectList/dateclient_socketpermission_toxml.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/VB/dateclient_socketpermission_toxml.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/VB/dateclient_socketpermission_toxml.vb" id="Snippet1"::: + ]]> @@ -436,20 +436,20 @@ Creates a copy of a instance. A new instance of the class that is a copy of the current instance. - and is implemented to support the interface. - - - -## Examples - The following example creates a by taking a copy of an existing . - + and is implemented to support the interface. + + + +## Examples + The following example creates a by taking a copy of an existing . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/SocketPermissionExample/CPP/source.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/Overview/source.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet4"::: + ]]> @@ -490,22 +490,22 @@ The XML encoding used to reconstruct the instance. Reconstructs a instance for an XML encoding. - method reconstructs a instance from an XML encoding defined by the class. - - Use the method to encode the instance, including state information, in XML. - - - -## Examples - The following example uses the method to convert XML encoded data to a instance. - + method reconstructs a instance from an XML encoding defined by the class. + + Use the method to encode the instance, including state information, in XML. + + + +## Examples + The following example uses the method to convert XML encoded data to a instance. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/CPP/dateclient_socketpermission_constructor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/.ctor/dateclient_socketpermission_constructor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: + ]]> The is . @@ -549,20 +549,20 @@ Returns the logical intersection between two instances. The instance that represents the intersection of two instances. If the intersection is empty, the method returns . If the parameter is a null reference, the method returns . - and is implemented to support the interface. - - - -## Examples - The following example uses the method to obtain a logical intersection between two instances. - + and is implemented to support the interface. + + + +## Examples + The following example uses the method to obtain a logical intersection between two instances. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/CPP/dateclient_socketpermission_constructor.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/.ctor/dateclient_socketpermission_constructor.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_Constructor/VB/dateclient_socketpermission_constructor.vb" id="Snippet1"::: + ]]> The parameter is not a . @@ -607,22 +607,22 @@ Determines if the current permission is a subset of the specified permission. If is , this method returns if the current instance defines no permissions; otherwise, . If is not , this method returns if the current instance defines a subset of permissions; otherwise, . - method to determine if one is the subset of another. - + method to determine if one is the subset of another. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/SocketPermissionExample/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet2"::: + ]]> @@ -669,15 +669,15 @@ if the instance is created with the value from ; otherwise, . - property to determine if the specified has any restrictions. - + property to determine if the specified has any restrictions. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/CPP/dateclient_socketpermission_toxml.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/ConnectList/dateclient_socketpermission_toxml.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/VB/dateclient_socketpermission_toxml.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/VB/dateclient_socketpermission_toxml.vb" id="Snippet1"::: + ]]> @@ -716,22 +716,22 @@ Creates an XML encoding of a instance and its current state. A instance that contains an XML-encoded representation of the instance, including state information. - method creates a instance to encode a representation of the instance, including state information, in XML. - - Use the method to restore the state information from a instance. - - - -## Examples - The following example uses the method to convert a to XML. - + method creates a instance to encode a representation of the instance, including state information, in XML. + + Use the method to restore the state information from a instance. + + + +## Examples + The following example uses the method to convert a to XML. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/CPP/dateclient_socketpermission_toxml.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/ConnectList/dateclient_socketpermission_toxml.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/VB/dateclient_socketpermission_toxml.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/DateClient_SocketPermission_ToXml/VB/dateclient_socketpermission_toxml.vb" id="Snippet1"::: + ]]> @@ -773,20 +773,20 @@ Returns the logical union between two instances. The instance that represents the union of two instances. If parameter is , it returns a copy of the current instance. - is a permission that represents all of the access to connections represented by the current instance as well as the access represented by `target`. Any demand that passes either the current instance or `target` passes their union. This method overrides and is implemented to support the interface. - - - -## Examples - The following example uses the method to return the logical union of two existing instances. - + is a permission that represents all of the access to connections represented by the current instance as well as the access represented by `target`. Any demand that passes either the current instance or `target` passes their union. This method overrides and is implemented to support the interface. + + + +## Examples + The following example uses the method to return the logical union of two existing instances. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/SocketPermissionExample/CPP/source.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Net/SocketPermission/Overview/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SocketPermissionExample/VB/source.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.Net/SocketPermissionAttribute.xml b/xml/System.Net/SocketPermissionAttribute.xml index d42856492c1..e04c994b1f0 100644 --- a/xml/System.Net/SocketPermissionAttribute.xml +++ b/xml/System.Net/SocketPermissionAttribute.xml @@ -49,20 +49,20 @@ Specifies security actions to control connections. This class cannot be inherited. - connection must conform to the properties that are specified in your . For example, to apply the permission to a connection on port 80, set the property of the to "80". The security information that is specified in is stored in the metadata of the attribute target, which is the class to which the is applied. The system then accesses the information at run time. The that is passed to the constructor determines the allowable targets. - + To use this attribute, your connection must conform to the properties that are specified in your . For example, to apply the permission to a connection on port 80, set the property of the to "80". The security information that is specified in is stored in the metadata of the attribute target, which is the class to which the is applied. The system then accesses the information at run time. The that is passed to the constructor determines the allowable targets. + > [!NOTE] -> The properties of a must have values that are not `null`. Also, once set, the values of the properties cannot be changed. - +> The properties of a must have values that are not `null`. Also, once set, the values of the properties cannot be changed. + > [!NOTE] -> For more information about using attributes, see [Attributes](/dotnet/standard/attributes/). - +> For more information about using attributes, see [Attributes](/dotnet/standard/attributes/). + ]]> @@ -107,11 +107,11 @@ One of the values. Initializes a new instance of the class with the specified value. - value that is passed to this constructor specifies the allowable targets. - + value that is passed to this constructor specifies the allowable targets. + ]]> @@ -157,11 +157,11 @@ Gets or sets the network access method that is allowed by this . A string that contains the network access method that is allowed by this instance of . Valid values are "Accept" and "Connect." - enumeration values. - + enumeration values. + ]]> The property is not when you attempt to set the value. To specify more than one Access method, use an additional attribute declaration statement. @@ -201,11 +201,11 @@ Creates and returns a new instance of the class. An instance of the class that corresponds to the security declaration. - method is called by the security system, not by the application code. The security information described by is stored in the metadata of the attribute target, which is the class to which the is applied. The system then accesses the information at run-time and calls . The system uses the returned to enforce the specified security requirements. - + method is called by the security system, not by the application code. The security information described by is stored in the metadata of the attribute target, which is the class to which the is applied. The system then accesses the information at run-time and calls . The system uses the returned to enforce the specified security requirements. + ]]> One or more of the current instance's , , , or properties is . @@ -251,11 +251,11 @@ Gets or sets the DNS host name or IP address that is specified by this . A string that contains the DNS host name or IP address that is associated with this instance of . - @@ -301,11 +301,11 @@ Gets or sets the port number that is associated with this . A string that contains the port number that is associated with this instance of . - The property is when you attempt to set the value. To specify more than one port, use an additional attribute declaration statement. @@ -350,11 +350,11 @@ Gets or sets the that is specified by this . A string that contains the that is associated with this . - , , , , and . - + , , , , and . + ]]> diff --git a/xml/System.Net/WebClient.xml b/xml/System.Net/WebClient.xml index c2c35b06d01..b913c48f9fa 100644 --- a/xml/System.Net/WebClient.xml +++ b/xml/System.Net/WebClient.xml @@ -2795,25 +2795,25 @@ internal class MyWebClient : WebClientProtocol Restricted headers protected by the system include, but are not limited to the following: -- Date +- Date -- Host +- Host In addition, some other headers are also restricted when using a object. These restricted headers include, but are not limited to the following: -- Accept +- Accept -- Connection +- Connection -- Content-Length +- Content-Length -- Expect (when the value is set to "100-continue" +- Expect (when the value is set to "100-continue" -- If-Modified-Since +- If-Modified-Since -- Range +- Range -- Transfer-Encoding +- Transfer-Encoding The class has properties for setting some of the above headers. If it is important for an application to set these headers, then the class should be used instead of the class. diff --git a/xml/System.Net/WebException.xml b/xml/System.Net/WebException.xml index e3f2d1e5a0f..1f259468851 100644 --- a/xml/System.Net/WebException.xml +++ b/xml/System.Net/WebException.xml @@ -691,7 +691,7 @@ The value of is one of the values. > [!WARNING] -> The error is not returned to Windows 8.x Store apps. +> The error is not returned to Windows 8.x Store apps. diff --git a/xml/System.Net/WebHeaderCollection.xml b/xml/System.Net/WebHeaderCollection.xml index 41aec5b138f..c0abc797864 100644 --- a/xml/System.Net/WebHeaderCollection.xml +++ b/xml/System.Net/WebHeaderCollection.xml @@ -106,31 +106,31 @@ The restricted headers are: -- Accept +- Accept -- Connection +- Connection -- Content-Length +- Content-Length -- Content-Type +- Content-Type -- Date +- Date -- Expect +- Expect -- Host +- Host -- If-Modified-Since +- If-Modified-Since -- Range +- Range -- Referer +- Referer -- Transfer-Encoding +- Transfer-Encoding -- User-Agent +- User-Agent -- Proxy-Connection +- Proxy-Connection ]]> @@ -1396,31 +1396,31 @@ ## Remarks The method returns `true` to indicate that a header is restricted and must be set using properties instead of directly or is set by the system. The restricted headers are: -- Accept +- Accept -- Connection +- Connection -- Content-Length +- Content-Length -- Content-Type +- Content-Type -- Date +- Date -- Expect +- Expect -- Host +- Host -- If-Modified-Since +- If-Modified-Since -- Range +- Range -- Referer +- Referer -- Transfer-Encoding +- Transfer-Encoding -- User-Agent +- User-Agent -- Proxy-Connection +- Proxy-Connection @@ -1495,31 +1495,31 @@ ## Remarks The method returns `true` to indicate that a request or response header is restricted and must be set using properties instead of directly or is set by the system. The restricted headers are: -- Accept +- Accept -- Connection +- Connection -- Content-Length +- Content-Length -- Content-Type +- Content-Type -- Date +- Date -- Expect +- Expect -- Host +- Host -- If-Modified-Since +- If-Modified-Since -- Range +- Range -- Referer +- Referer -- Transfer-Encoding +- Transfer-Encoding -- User-Agent +- User-Agent -- Proxy-Connection +- Proxy-Connection ## Examples The following example checks the property to see if any request headers are prohibited from being set. diff --git a/xml/System.Net/WebPermission.xml b/xml/System.Net/WebPermission.xml index 8f48b1074f3..3869ed933fa 100644 --- a/xml/System.Net/WebPermission.xml +++ b/xml/System.Net/WebPermission.xml @@ -49,44 +49,44 @@ Controls rights to access HTTP Internet resources. - provides a set of methods and properties to control access to Internet resources. You can use a to provide either restricted or unrestricted access to your resource, based on the that is set when the is created. - - Create a instance by calling its constructor using one of the following sets of parameters: - -- No parameters. The default is . - -- A . Specify either to allow any URI to be used in the target class, or to allow access only to URIs that you specify through the use of the method. - -- A value and a URI string. The specified URI has permissions granted by the value. - -- A specifier and URI regular expression. - - The and hold the URIs to which you have granted access permission. To add a URI to either of these lists, use . If you pass as the parameter, the URI will be added to the . will allow connections to your target class with URIs matching the . - + provides a set of methods and properties to control access to Internet resources. You can use a to provide either restricted or unrestricted access to your resource, based on the that is set when the is created. + + Create a instance by calling its constructor using one of the following sets of parameters: + +- No parameters. The default is . + +- A . Specify either to allow any URI to be used in the target class, or to allow access only to URIs that you specify through the use of the method. + +- A value and a URI string. The specified URI has permissions granted by the value. + +- A specifier and URI regular expression. + + The and hold the URIs to which you have granted access permission. To add a URI to either of these lists, use . If you pass as the parameter, the URI will be added to the . will allow connections to your target class with URIs matching the . + > [!CAUTION] -> To deny access to an Internet resource, you must deny access to all the possible paths to that resource. This requires calling with state parameter set to . A better approach is to allow access to the specific resource only. For more information about this subject, refer to the [Using the Deny Method](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/hk3b9142(v=vs.100)) topic. - +> To deny access to an Internet resource, you must deny access to all the possible paths to that resource. This requires calling with state parameter set to . A better approach is to allow access to the specific resource only. For more information about this subject, refer to the [Using the Deny Method](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/hk3b9142(v=vs.100)) topic. + > [!NOTE] -> You need to deny access using only the resource canonical path. There is no need to use all the path's syntactical variations. - +> You need to deny access using only the resource canonical path. There is no need to use all the path's syntactical variations. + > [!NOTE] -> User name and default port information is stripped from the before the comparison with the regular expression argument that is supplied to the constructor. If the regular expression contains user information or the default port number, then all incoming s will fail to match the regular expression. - - - -## Examples - The following example demonstrates how to create a new instance of using a . Additional hosts are added to the connect and accept list of . Finally, the connect and accept list are displayed to the console. - +> User name and default port information is stripped from the before the comparison with the regular expression argument that is supplied to the constructor. If the regular expression contains user information or the default port number, then all incoming s will fail to match the regular expression. + + + +## Examples + The following example demonstrates how to create a new instance of using a . Additional hosts are added to the connect and accept list of . Finally, the connect and accept list are displayed to the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Regex/CPP/regex.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/Overview/regex.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Regex/VB/regex.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Regex/VB/regex.vb" id="Snippet1"::: + ]]> @@ -133,11 +133,11 @@ Creates a new instance of the class. - class. This constructor creates an empty permission that does not grant any rights. - + class. This constructor creates an empty permission that does not grant any rights. + ]]> @@ -176,20 +176,20 @@ A value. Creates a new instance of the class that passes all demands or fails all demands. - or , respectively yielding fully restricted or fully unrestricted access to all security variables. If you specify , then you can give access to individual URIs using . - - - -## Examples - The following example creates an instance of and gives access rights to specific URLs. - + or , respectively yielding fully restricted or fully unrestricted access to all security variables. If you specify , then you can give access to individual URIs using . + + + +## Examples + The following example creates an instance of and gives access rights to specific URLs. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Copy/CPP/webpermission_copy.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/.ctor/webpermission_copy.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Copy/VB/webpermission_copy.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Copy/VB/webpermission_copy.vb" id="Snippet1"::: + ]]> @@ -230,20 +230,20 @@ A URI string to which access rights are granted. Initializes a new instance of the class with the specified access rights for the specified URI. - and grants its target permission to either make a remote host connection or accept a remote host connection using the URI described by the `uriString` parameter. - - - -## Examples - The following example creates a new instance of with connect rights for the specified URI. - + and grants its target permission to either make a remote host connection or accept a remote host connection using the URI described by the `uriString` parameter. + + + +## Examples + The following example creates a new instance of with connect rights for the specified URI. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Union/CPP/webpermission_union.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/.ctor/webpermission_union.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Union/VB/webpermission_union.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Union/VB/webpermission_union.vb" id="Snippet1"::: + ]]> @@ -286,26 +286,26 @@ A regular expression that describes the URI to which access is to be granted. Initializes a new instance of the class with the specified access rights for the specified URI regular expression. - and grants its target permission to either make a remote host connection or accept a remote host connection using the URI described by the `uriRegex` parameter. - + and grants its target permission to either make a remote host connection or accept a remote host connection using the URI described by the `uriRegex` parameter. + > [!NOTE] -> It is recommended that you create `uriRegex` using the , , and flags. - +> It is recommended that you create `uriRegex` using the , , and flags. + > [!NOTE] -> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. - - - -## Examples - The following example creates a new instance of with connect rights for the specified . - +> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. + + + +## Examples + The following example creates a new instance of with connect rights for the specified . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Constructor4/CPP/webpermission_constructor4.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/.ctor/webpermission_constructor4.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Constructor4/VB/webpermission_constructor4.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Constructor4/VB/webpermission_constructor4.vb" id="Snippet1"::: + ]]> @@ -344,26 +344,26 @@ This property returns an enumeration of a single accept permissions held by this . The possible objects types contained in the returned enumeration are and . The interface that contains accept permissions. - . The class to which you have applied only has permission to receive an incoming connection to local resources found in this list. - + . The class to which you have applied only has permission to receive an incoming connection to local resources found in this list. + > [!NOTE] -> You can add URIs to this list using . - +> You can add URIs to this list using . + > [!NOTE] -> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. - - - -## Examples - The following example prints the URLs in the to the console. - +> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. + + + +## Examples + The following example prints the URLs in the to the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_AcceptConnectList/CPP/webpermission_acceptconnectlist.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/AcceptList/webpermission_acceptconnectlist.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_AcceptConnectList/VB/webpermission_acceptconnectlist.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_AcceptConnectList/VB/webpermission_acceptconnectlist.vb" id="Snippet2"::: + ]]> @@ -417,26 +417,26 @@ A string that describes the URI to which access rights are granted. Adds the specified URI string with the specified access rights to the current . - as the , use to permit the use of `uriString` in the target class. The way that `uriString` can be used by the target class is specified by `access`. Specify as the access parameter to add the URI specified by the `uriString` parameter to the list of URI accept strings, or specify as the access parameter to add the URI to the list of URI connect strings. - + as the , use to permit the use of `uriString` in the target class. The way that `uriString` can be used by the target class is specified by `access`. Specify as the access parameter to add the URI specified by the `uriString` parameter to the list of URI accept strings, or specify as the access parameter to add the URI to the list of URI connect strings. + > [!NOTE] -> Calling on will have no effect, because permission is granted to all URIs. - +> Calling on will have no effect, because permission is granted to all URIs. + > [!NOTE] -> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. - - - -## Examples - The following example demonstrates how to add access rights to particular URL strings. - +> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. + + + +## Examples + The following example demonstrates how to add access rights to particular URL strings. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Intersect/CPP/webpermission_intersect.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/AddPermission/webpermission_intersect.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Intersect/VB/webpermission_intersect.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Intersect/VB/webpermission_intersect.vb" id="Snippet2"::: + ]]> @@ -482,29 +482,29 @@ A regular expression that describes the set of URIs to which access rights are granted. Adds the specified URI with the specified access rights to the current . - as the , use to allow the use of `uriRegex` in the target class. Specify as the `access` parameter to add the URI specified by the `uriRegex` parameter to the list of URI accept strings, or specify as the access parameter to add the URI to the list of URI connect strings. - + as the , use to allow the use of `uriRegex` in the target class. Specify as the `access` parameter to add the URI specified by the `uriRegex` parameter to the list of URI accept strings, or specify as the access parameter to add the URI to the list of URI connect strings. + > [!NOTE] -> Calling on an instance will have no effect as permission is granted to all URIs. - +> Calling on an instance will have no effect as permission is granted to all URIs. + > [!NOTE] -> It is recommended that you create `uriRegex` using the , , and flags. - +> It is recommended that you create `uriRegex` using the , , and flags. + > [!NOTE] -> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. - - - -## Examples - The following example uses to give access rights for the specified URI. - +> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. + + + +## Examples + The following example uses to give access rights for the specified URI. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_IsSubset/CPP/webpermission_issubset.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/AddPermission/webpermission_issubset.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_IsSubset/VB/webpermission_issubset.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_IsSubset/VB/webpermission_issubset.vb" id="Snippet1"::: + ]]> The parameter is . @@ -544,26 +544,26 @@ This property returns an enumeration of a single connect permissions held by this . The possible objects types contained in the returned enumeration are and . The interface that contains connect permissions. - . The class to which you have applied only has permission to connect with resources found in this list. - + . The class to which you have applied only has permission to connect with resources found in this list. + > [!NOTE] -> You can add URIs to this list using . - +> You can add URIs to this list using . + > [!NOTE] -> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. - - - -## Examples - The following example prints the URLs in the to the console. - +> A candidate URI string is checked against the list of relevant regular expressions ( or ) in two ways. First, the candidate URI string is checked against the appropriate list; then, if there is no match, the candidate URI string is converted into a and checked against the appropriate list. + + + +## Examples + The following example prints the URLs in the to the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_AcceptConnectList/CPP/webpermission_acceptconnectlist.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/AcceptList/webpermission_acceptconnectlist.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_AcceptConnectList/VB/webpermission_acceptconnectlist.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_AcceptConnectList/VB/webpermission_acceptconnectlist.vb" id="Snippet1"::: + ]]> @@ -603,20 +603,20 @@ Creates a copy of a . A new instance of the class that has the same values as the original. - returned by this method represents the same access to resources as the original . This method overrides and is implemented to support the interface. - - - -## Examples - The following example demonstrates how to create a second instance of using . This second instance is identical to the first. - + returned by this method represents the same access to resources as the original . This method overrides and is implemented to support the interface. + + + +## Examples + The following example demonstrates how to create a second instance of using . This second instance is identical to the first. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Copy/CPP/webpermission_copy.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/.ctor/webpermission_copy.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Copy/VB/webpermission_copy.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Copy/VB/webpermission_copy.vb" id="Snippet2"::: + ]]> @@ -657,22 +657,22 @@ The XML encoding from which to reconstruct the . Reconstructs a from an XML encoding. - method reconstructs a from an XML encoding that is defined by the class. - - Use the method to XML-encode the , including state information. - - - -## Examples - The following example creates a , populates its attributes, and uses to transfer this information to an instance of . - + method reconstructs a from an XML encoding that is defined by the class. + + Use the method to XML-encode the , including state information. + + + +## Examples + The following example creates a , populates its attributes, and uses to transfer this information to an instance of . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_FromToXml/CPP/webpermission_fromtoxml.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/FromXml/webpermission_fromtoxml.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_FromToXml/VB/webpermission_fromtoxml.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_FromToXml/VB/webpermission_fromtoxml.vb" id="Snippet1"::: + ]]> The parameter is . @@ -718,22 +718,22 @@ Returns the logical intersection of two instances. A new that represents the intersection of the current instance and the parameter. If the intersection is empty, the method returns . - returns a that contains those permissions that are common in both `target` and the current instance. - - This method overrides and is implemented to support the interface. - - - -## Examples - The following example shows how to create an instance of using the logical intersection of two existing instances. - + returns a that contains those permissions that are common in both `target` and the current instance. + + This method overrides and is implemented to support the interface. + + + +## Examples + The following example shows how to create an instance of using the logical intersection of two existing instances. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Intersect/CPP/webpermission_intersect.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/AddPermission/webpermission_intersect.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Intersect/VB/webpermission_intersect.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Intersect/VB/webpermission_intersect.vb" id="Snippet3"::: + ]]> @@ -778,20 +778,20 @@ if the current instance is a subset of the parameter; otherwise, . If the target is , the method returns for an empty current permission that is not unrestricted and otherwise. - specifies a set of associated resources that is wholly contained by the `target` parameter, then the current is a subset of `target`. This method overrides and is implemented to support the interface. - - - -## Examples - The following example uses to determine whether the access rights found in one instance of are found in another instance of . - + specifies a set of associated resources that is wholly contained by the `target` parameter, then the current is a subset of `target`. This method overrides and is implemented to support the interface. + + + +## Examples + The following example uses to determine whether the access rights found in one instance of are found in another instance of . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_IsSubset2/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/IsSubsetOf/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_IsSubset2/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_IsSubset2/VB/source.vb" id="Snippet1"::: + ]]> The target parameter is not an instance of . @@ -836,14 +836,14 @@ if the was created with the ; otherwise, . - is , then the target class can use all URIs. Otherwise, specific permission must be given for any URI you want to use with the target class. - + is , then the target class can use all URIs. Otherwise, specific permission must be given for any URI you want to use with the target class. + > [!NOTE] -> Use to add a URI and specify its permissions. - +> Use to add a URI and specify its permissions. + ]]> @@ -883,20 +883,20 @@ Creates an XML encoding of a and its current state. A that contains an XML-encoded representation of the , including state information. - method to restore the state information from a . - - - -## Examples - The following example demonstrates how to use to create a and print its attributes to the console. - + method to restore the state information from a . + + + +## Examples + The following example demonstrates how to use to create a and print its attributes to the console. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_FromToXml/CPP/webpermission_fromtoxml.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/FromXml/webpermission_fromtoxml.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_FromToXml/VB/webpermission_fromtoxml.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_FromToXml/VB/webpermission_fromtoxml.vb" id="Snippet1"::: + ]]> @@ -939,20 +939,20 @@ Returns the logical union between two instances of the class. A that represents the union of the current instance and the parameter. If either is , the method returns a that is . If the target is , the method returns a copy of the current . - returns a that contains all the permissions in both `target` and the current instance. - - - -## Examples - The following example takes the logical union of two instances to create a third instance of . - + returns a that contains all the permissions in both `target` and the current instance. + + + +## Examples + The following example takes the logical union of two instances to create a third instance of . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/WebPermission_Union/CPP/webpermission_union.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Net/WebPermission/.ctor/webpermission_union.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Union/VB/webpermission_union.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/WebPermission_Union/VB/webpermission_union.vb" id="Snippet2"::: + ]]> target is not or of type . diff --git a/xml/System.Net/WebProxy.xml b/xml/System.Net/WebProxy.xml index ddf467d9d3b..4f051fb9a18 100644 --- a/xml/System.Net/WebProxy.xml +++ b/xml/System.Net/WebProxy.xml @@ -1058,7 +1058,7 @@ If is `true`, requests to local Internet resources do not use the proxy server. Local requests are identified by the lack of a period (.) in the URI, as in `http://webserver/`, or access the local server, including `http://localhost`, `http://loopback`, or `http://127.0.0.1`. When is `false`, all Internet requests are made through the proxy server. > [!NOTE] -> Requests to a local host with a URI that contain a period use the proxy. To avoid using a proxy in these cases, create an entry for the host in the . +> Requests to a local host with a URI that contain a period use the proxy. To avoid using a proxy in these cases, create an entry for the host in the . @@ -1130,7 +1130,7 @@ The property contains the authentication credentials to send to the proxy server in response to an HTTP 407 (proxy authorization) status code. In most client scenarios, you should use the , which are the credentials of the currently logged on user. To do this, set the property to `true` instead of setting this property. > [!NOTE] -> If you set the property to credentials other than the , setting the property to `true` causes a . To prevent this, you must set the property to `null` before setting the property to `true`. Likewise, you cannot set this property to any value when is `true`. +> If you set the property to credentials other than the , setting the property to `true` causes a . To prevent this, you must set the property to `null` before setting the property to `true`. Likewise, you cannot set this property to any value when is `true`. ]]> diff --git a/xml/System.Net/WebRequest.xml b/xml/System.Net/WebRequest.xml index 694bb8620a8..9157361236b 100644 --- a/xml/System.Net/WebRequest.xml +++ b/xml/System.Net/WebRequest.xml @@ -87,10 +87,10 @@ Because the class is an `abstract` class, the actual behavior of instances at run time is determined by the descendant class returned by method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . > [!NOTE] -> Use the method to initialize new instances. Do not use the constructor. +> Use the method to initialize new instances. Do not use the constructor. > [!NOTE] -> If the application that creates the WebRequest object runs with the credentials of a Normal user, the application will not be able to access certificates installed in the local machine store unless permission has been explicitly given to the user to do so. +> If the application that creates the WebRequest object runs with the credentials of a Normal user, the application will not be able to access certificates installed in the local machine store unless permission has been explicitly given to the user to do so. ## Examples The following example shows how to create a instance and return the response. @@ -308,7 +308,7 @@ The method cancels asynchronous requests to Internet resources started with the method. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . ]]> @@ -446,7 +446,7 @@ The method starts an asynchronous request for a stream used to send data to an Internet resource. The callback method that implements the delegate uses the method to return the request stream. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -526,10 +526,10 @@ The method starts an asynchronous request for a response. The callback method that implements the delegate uses the method to return the from the Internet resource. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . > [!NOTE] -> If a WebException is thrown, use the and properties of the exception to determine the response from the server. +> If a WebException is thrown, use the and properties of the exception to determine the response from the server. @@ -688,7 +688,7 @@ The property associates specific requests within an application to one or more connection pools. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . ]]> @@ -752,7 +752,7 @@ The property contains the number of bytes of data sent to the Internet resource by the instance. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -830,7 +830,7 @@ The property contains the media type of the request. This is typically the MIME encoding of the content. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -932,7 +932,7 @@ The method uses the `requestUriString` parameter to create a instance that it passes to the new . > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1033,7 +1033,7 @@ Note: In .NET for Win .NET includes support for the `http://`, `https://`, `ftp://`, and `file://` URI schemes. Custom descendants to handle other requests are registered with the method. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). @@ -1112,7 +1112,7 @@ Note: In .NET for Win For example, when a URI beginning with `http://` is passed in `requestUri`, an is returned by . If a URI beginning with `file://` is passed instead, the method will return a . > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in .NET](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in .NET](/dotnet/framework/network-programming/network-tracing). ]]> @@ -1383,7 +1383,7 @@ This property allows an application to determine which property contains the authentication credentials required to access the Internet resource. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -1457,9 +1457,9 @@ This property allows an application to determine which property specified for this request. +- There is no property specified for this request. -- The machine and application configuration files do not specify a cache policy that is applicable to the Uniform Resource Identifier (URI) used to create this request. +- The machine and application configuration files do not specify a cache policy that is applicable to the Uniform Resource Identifier (URI) used to create this request. The cache policy determines whether the requested resource can be taken from a cache instead of sending the request to the resource host computer. @@ -1606,10 +1606,10 @@ This property allows an application to determine which method completes an asynchronous stream request that was started by the method. > [!NOTE] -> To avoid timing issues with garbage collection, be sure to close the response stream by calling the method on the stream returned by after calling . +> To avoid timing issues with garbage collection, be sure to close the response stream by calling the method on the stream returned by after calling . > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -1686,7 +1686,7 @@ This property allows an application to determine which method completes an asynchronous request for an Internet resource that was started with the method. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -1818,7 +1818,7 @@ This property allows an application to determine which method provides synchronous access to the . For asynchronous access, use the and methods. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -1947,10 +1947,10 @@ This property allows an application to determine which method provides synchronous access to the . For asynchronous access, use the and methods. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . > [!NOTE] -> If a WebException is thrown, use the and properties of the exception to determine the response from the server. +> If a WebException is thrown, use the and properties of the exception to determine the response from the server. @@ -2134,7 +2134,7 @@ This property allows an application to determine which property contains a instance containing the header information to send to the Internet resource. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -2269,7 +2269,7 @@ This property allows an application to determine which property contains the request method to use in this request. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -2340,7 +2340,7 @@ This property allows an application to determine which property indicates whether to send authentication information with subsequent requests without waiting to be challenged by the server. When is `false`, the waits for an authentication challenge before sending authentication information. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . ]]> @@ -2407,7 +2407,7 @@ This property allows an application to determine which property identifies the network proxy that the request uses to access the Internet resource. The request is made through the proxy server rather than directly to the Internet resource. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -2541,7 +2541,7 @@ This property allows an application to determine which returns `false` if an attempt is made to register a duplicate prefix. > [!NOTE] -> The class is registered to service requests for HTTP and HTTPS schemes by default. Attempts to register a different descendant for these schemes will fail. +> The class is registered to service requests for HTTP and HTTPS schemes by default. Attempts to register a different descendant for these schemes will fail. ]]> @@ -2608,7 +2608,7 @@ This property allows an application to determine which property contains the instance that method uses to create the request. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . @@ -2743,7 +2743,7 @@ This property allows an application to determine which property indicates the length of time, in milliseconds, until the request times out and throws a . The property affects only synchronous requests made with the method. To time out asynchronous requests, use the method. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by the method. For more information about default values and exceptions, see the documentation for the descendant classes, such as and . diff --git a/xml/System.Net/WebResponse.xml b/xml/System.Net/WebResponse.xml index 3f1f962cf09..cd2ca2f70f8 100644 --- a/xml/System.Net/WebResponse.xml +++ b/xml/System.Net/WebResponse.xml @@ -281,10 +281,10 @@ The method cleans up the resources used by a and closes the underlying stream by calling the method. > [!NOTE] -> The response must be closed to avoid running out of system resources. The response stream can be closed by calling or . +> The response must be closed to avoid running out of system resources. The response stream can be closed by calling or . > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . @@ -353,7 +353,7 @@ The property contains the length, in bytes, of the response from the Internet resource. For request methods that contain header information, the does not include the length of the header information. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . @@ -422,7 +422,7 @@ The property contains the MIME content type of the response from the Internet resource, if known. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . @@ -547,7 +547,7 @@ When the `disposing` parameter is `true`, this method releases all resources held by any managed objects that this references. This method invokes the `Dispose()` method of each referenced object. > [!NOTE] -> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). +> This member outputs trace information when you enable network tracing in your application. For more information, see [Network Tracing in the .NET Framework](/dotnet/framework/network-programming/network-tracing). ]]> @@ -668,7 +668,7 @@ The method returns the data stream from the Internet resource. > [!NOTE] -> The response stream must be closed to avoid running out of system resources. The response stream can be closed by calling or +> The response stream must be closed to avoid running out of system resources. The response stream can be closed by calling or @@ -733,7 +733,7 @@ The property contains the name-value header pairs returned in the response. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . @@ -921,7 +921,7 @@ The property contains the URI of the Internet resource that actually provided the response data. This resource might not be the originally requested URI if the underlying protocol allows redirection of the request. > [!NOTE] -> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . +> The class is an `abstract` class. The actual behavior of instances at run time is determined by the descendant class returned by . For more information about default values and exceptions, please see the documentation for the descendant classes, such as and . diff --git a/xml/System.Net/WebUtility.xml b/xml/System.Net/WebUtility.xml index fa035c36305..6f4e3bf39bf 100644 --- a/xml/System.Net/WebUtility.xml +++ b/xml/System.Net/WebUtility.xml @@ -551,7 +551,7 @@ Each ' ' (space) character is converted to a `+` (plus) character. > [!NOTE] -> Replacing ' ' (space) with a '+' (plus) sign is expected only in query part of URI (by convention, not by standard) or in [`application/x-www-form-urlencoded`](https://url.spec.whatwg.org/#percent-encoded-bytes) HTTP content. Moreover, the above mentioned list of characters that are **not** replaced does not correspond neither to [URL specification](https://url.spec.whatwg.org) nor URI [RFC 3986](https://www.rfc-editor.org/rfc/rfc3986.html#section-3.4). Use for RFC compliant transformation. +> Replacing ' ' (space) with a '+' (plus) sign is expected only in query part of URI (by convention, not by standard) or in [`application/x-www-form-urlencoded`](https://url.spec.whatwg.org/#percent-encoded-bytes) HTTP content. Moreover, the above mentioned list of characters that are **not** replaced does not correspond neither to [URL specification](https://url.spec.whatwg.org) nor URI [RFC 3986](https://www.rfc-editor.org/rfc/rfc3986.html#section-3.4). Use for RFC compliant transformation. For example, when embedded in a block of text to be transmitted in a URL, the characters `<` and `>` are encoded as `%3c` and `%3e`. @@ -637,7 +637,7 @@ Each ' ' (space) character is converted to a `+` (plus) character. > [!NOTE] -> Replacing ' ' (space) with a '+' (plus) sign is expected only in query part of URI (by convention, not by standard) or in [`application/x-www-form-urlencoded`](https://url.spec.whatwg.org/#percent-encoded-bytes) HTTP content. Moreover, the above mentioned list of characters that are **not** replaced does not correspond neither to [URL specification](https://url.spec.whatwg.org) nor URI [RFC 3986](https://www.rfc-editor.org/rfc/rfc3986.html#section-3.4). Use for RFC compliant transformation. +> Replacing ' ' (space) with a '+' (plus) sign is expected only in query part of URI (by convention, not by standard) or in [`application/x-www-form-urlencoded`](https://url.spec.whatwg.org/#percent-encoded-bytes) HTTP content. Moreover, the above mentioned list of characters that are **not** replaced does not correspond neither to [URL specification](https://url.spec.whatwg.org) nor URI [RFC 3986](https://www.rfc-editor.org/rfc/rfc3986.html#section-3.4). Use for RFC compliant transformation. For example, when embedded in a block of text to be transmitted in a URL, the characters `<` and `>` are encoded as `%3c` and `%3e`. diff --git a/xml/System.Numerics/BigInteger.xml b/xml/System.Numerics/BigInteger.xml index 3761217f3b7..33589c9755a 100644 --- a/xml/System.Numerics/BigInteger.xml +++ b/xml/System.Numerics/BigInteger.xml @@ -303,13 +303,13 @@ The individual bytes in the `value` array should be in little-endian order, from The constructor expects positive values in the byte array to use sign-and-magnitude representation, and negative values to use two's complement representation. In other words, if the highest-order bit of the highest-order byte in `value` is set, the resulting value is negative. Depending on the source of the byte array, this might cause a positive value to be misinterpreted as a negative value. Byte arrays are typically generated in the following ways: -- By calling the method. Because this method returns a byte array with the highest-order bit of the highest-order byte in the array set to zero for positive values, there is no chance of misinterpreting a positive value as negative. Unmodified byte arrays created by the method always successfully round-trip when they are passed to the constructor. +- By calling the method. Because this method returns a byte array with the highest-order bit of the highest-order byte in the array set to zero for positive values, there is no chance of misinterpreting a positive value as negative. Unmodified byte arrays created by the method always successfully round-trip when they are passed to the constructor. -- By calling the method and passing it a signed integer as a parameter. Because signed integers handle both sign-and-magnitude representation and two's complement representation, there is no chance of misinterpreting a positive value as negative. +- By calling the method and passing it a signed integer as a parameter. Because signed integers handle both sign-and-magnitude representation and two's complement representation, there is no chance of misinterpreting a positive value as negative. -- By calling the method and passing it an unsigned integer as a parameter. Because unsigned integers are represented by their magnitude only, positive values can be misinterpreted as negative values. To prevent this misinterpretation, you can add a zero-byte value to the end of the array. The example in the next section provides an illustration. +- By calling the method and passing it an unsigned integer as a parameter. Because unsigned integers are represented by their magnitude only, positive values can be misinterpreted as negative values. To prevent this misinterpretation, you can add a zero-byte value to the end of the array. The example in the next section provides an illustration. -- By creating a byte array either dynamically or statically without necessarily calling any of the previous methods, or by modifying an existing byte array. To prevent positive values from being misinterpreted as negative values, you can add a zero-byte value to the end of the array. +- By creating a byte array either dynamically or statically without necessarily calling any of the previous methods, or by modifying an existing byte array. To prevent positive values from being misinterpreted as negative values, you can add a zero-byte value to the end of the array. If `value` is an empty array, the new object is initialized to a value of . If `value` is `null`, the constructor throws an . @@ -1304,9 +1304,9 @@ The individual bytes in the `value` array should be in little-endian order, from The `obj` parameter must be one of the following: -- An object whose run-time type is . +- An object whose run-time type is . -- An variable whose value is `null`. If the value of the `obj` parameter is `null`, the method returns 1, which indicates that the current instance is greater than `obj`. +- An variable whose value is `null`. If the value of the `obj` parameter is `null`, the method returns 1, which indicates that the current instance is greater than `obj`. @@ -7033,9 +7033,9 @@ For this method matches the IEE Languages that do not support custom operators can test for inequality by using one of the following techniques: -- Calling the instance method, which indicates the relationship between a and a signed long integer value. +- Calling the instance method, which indicates the relationship between a and a signed long integer value. -- Calling the instance method and reversing its value. +- Calling the instance method and reversing its value. If `left` is a , , , , , or value, it is implicitly converted to an value when the operation is performed. @@ -7100,9 +7100,9 @@ For this method matches the IEE Languages that do not support custom operators can test for inequality by using one of the following techniques: -- Calling the method, which indicates the relationship between a and a signed long integer value. +- Calling the method, which indicates the relationship between a and a signed long integer value. -- Calling the method and reversing its value. +- Calling the method and reversing its value. If `right` is a , , , , , or value, it is implicitly converted to an value when the operation is performed. @@ -7171,9 +7171,9 @@ For this method matches the IEE Languages that do not support custom operators can test for inequality by using one of the following techniques: -- Calling the method, which indicates the relationship between two objects. +- Calling the method, which indicates the relationship between two objects. -- Calling the method and reversing its value. +- Calling the method and reversing its value. The equivalent method for this operator is .]]> @@ -7242,9 +7242,9 @@ For this method matches the IEE Languages that do not support custom operators can test for inequality by using one of the following techniques: -- Calling the method, which indicates the relationship between a and an unsigned long integer value. +- Calling the method, which indicates the relationship between a and an unsigned long integer value. -- Calling the method and reversing its value. +- Calling the method and reversing its value. ]]> @@ -7313,9 +7313,9 @@ For this method matches the IEE Languages that do not support custom operators can test for inequality by using one of the following techniques: -- Calling the method, which indicates the relationship between a and an unsigned long integer value. +- Calling the method, which indicates the relationship between a and an unsigned long integer value. -- Calling the method and reversing its value. +- Calling the method and reversing its value. ]]> @@ -8929,11 +8929,11 @@ This operation performs an unsigned (otherwise known as a logical) right shift o The `provider` parameter is an implementation whose method returns a object that provides culture-specific formatting information. When the method is invoked, it calls the `provider` parameter's method and passes it a object that represents the type. The method then returns the object that provides information about the format of the `value` parameter. There are three ways to use the `provider` parameter to supply custom formatting information to the parse operation: -- You can pass a object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. +- You can pass a object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. -- You can pass the actual object that provides numeric formatting information. (Its implementation of just returns itself.) +- You can pass the actual object that provides numeric formatting information. (Its implementation of just returns itself.) -- You can pass a custom object that implements . Its method instantiates and returns the object that provides formatting information. +- You can pass a custom object that implements . Its method instantiates and returns the object that provides formatting information. If `provider` is `null`, the formatting of `value` is interpreted based on the object of the current culture. @@ -9074,11 +9074,11 @@ Unlike the other values, which allow fo The `provider` parameter is an implementation. Its method returns a object that provides culture-specific information about the format of `value`. Typically, `provider` can be any one of the following: -- A object that represents the culture that provides numeric formatting information. Its method returns the object that provides numeric formatting information. +- A object that represents the culture that provides numeric formatting information. Its method returns the object that provides numeric formatting information. -- A object that provides formatting information. (Its implementation of just returns itself.) +- A object that provides formatting information. (Its implementation of just returns itself.) -- A custom object that implements and uses the method to instantiate and return the object that provides formatting information. +- A custom object that implements and uses the method to instantiate and return the object that provides formatting information. If `provider` is `null`, the object for the current culture is used. @@ -9219,11 +9219,11 @@ If `provider` is `null`, the object The `provider` parameter is an implementation. Its method returns a object that provides culture-specific information about the format of `value`. Typically, `provider` can be any one of the following: -- A object that represents the culture that provides numeric formatting information. Its method returns the object that provides numeric formatting information. +- A object that represents the culture that provides numeric formatting information. Its method returns the object that provides numeric formatting information. -- A object that provides formatting information. (Its implementation of just returns itself.) +- A object that provides formatting information. (Its implementation of just returns itself.) -- A custom object that implements and uses the method to instantiate and return the object that provides formatting information. +- A custom object that implements and uses the method to instantiate and return the object that provides formatting information. If `provider` is `null`, the object for the current culture is used. @@ -9687,9 +9687,9 @@ If `provider` is `null`, the object The `obj` parameter must be one of the following: -- An object whose run-time type is . +- An object whose run-time type is . -- An variable whose value is `null`. If the value of the `obj` parameter is `null`, the method returns 1, which indicates that the current instance is greater than `obj`. +- An variable whose value is `null`. If the value of the `obj` parameter is `null`, the method returns 1, which indicates that the current instance is greater than `obj`. ## Examples @@ -11396,11 +11396,11 @@ The integer value `33022` can be exported in four different arrays: The `provider` parameter can be one of the following: -- A object that represents the culture that supplies formatting information. +- A object that represents the culture that supplies formatting information. -- The object that supplies formatting information. +- The object that supplies formatting information. -- A custom object that implements . Its method returns the object that supplies formatting information. +- A custom object that implements . Its method returns the object that supplies formatting information. @@ -11484,9 +11484,9 @@ The integer value `33022` can be exported in four different arrays: .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about support for formatting in .NET, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about support for formatting in .NET, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The format of the returned string is determined by the object for the current culture. Depending on the `format` parameter, this object controls symbols such as the negative sign, the group separator, and the decimal point symbol in the output string. To provide formatting information for cultures other than the current culture, call the overload. @@ -11577,17 +11577,17 @@ The integer value `33022` can be exported in four different arrays: .NET provides extensive formatting support, which is described in greater detail in the following formatting topics: -- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). +- For more information about numeric format specifiers, see [Standard Numeric Format Strings](/dotnet/standard/base-types/standard-numeric-format-strings) and [Custom Numeric Format Strings](/dotnet/standard/base-types/custom-numeric-format-strings). -- For more information about support for formatting in .NET, see [Formatting Types](/dotnet/standard/base-types/formatting-types). +- For more information about support for formatting in .NET, see [Formatting Types](/dotnet/standard/base-types/formatting-types). The `provider` parameter is an implementation. Its method returns a object that provides culture-specific information about the format of the string returned by this method. When the method is invoked, it calls the `provider` parameter's method and passes it a object that represents the type. The method then returns the object that provides information for formatting the `value` parameter, such as the negative sign symbol, the group separator symbol, or the decimal point symbol. There are three ways to use the `provider` parameter to supply formatting information to the method: -- You can pass a object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. +- You can pass a object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. -- You can pass the actual object that provides numeric formatting information. (Its implementation of just returns itself.) +- You can pass the actual object that provides numeric formatting information. (Its implementation of just returns itself.) -- You can pass a custom object that implements . Its method instantiates and returns the object that provides formatting information. +- You can pass a custom object that implements . Its method instantiates and returns the object that provides formatting information. If `provider` is `null`, the formatting of the returned string is based on the object of the current culture. @@ -12062,11 +12062,11 @@ If the implementation. Its method returns a object that provides culture-specific information about the format of `value`. The `provider` parameter can be any one of the following: -- A object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. +- A object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. -- A object that provides numeric formatting information. (Its implementation of just returns itself.) +- A object that provides numeric formatting information. (Its implementation of just returns itself.) -- A custom object that implements . Its method instantiates and returns the object that provides formatting information. +- A custom object that implements . Its method instantiates and returns the object that provides formatting information. If `provider` is `null`, the object for the current culture is used. @@ -12205,11 +12205,11 @@ If `provider` is `null`, the object The `provider` parameter is an implementation. Its method returns a object that provides culture-specific information about the format of `value`. The `provider` parameter can be any one of the following: -- A object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. +- A object that represents the culture that supplies formatting information. Its method returns the object that provides numeric formatting information for that culture. -- A object that provides numeric formatting information. (Its implementation of just returns itself.) +- A object that provides numeric formatting information. (Its implementation of just returns itself.) -- A custom object that implements . Its method instantiates and returns the object that provides formatting information. +- A custom object that implements . Its method instantiates and returns the object that provides formatting information. If `provider` is `null`, the object for the current culture is used. diff --git a/xml/System.Numerics/Complex.xml b/xml/System.Numerics/Complex.xml index 0161b179ee5..e7ba0d29c05 100644 --- a/xml/System.Numerics/Complex.xml +++ b/xml/System.Numerics/Complex.xml @@ -6931,9 +6931,9 @@ Languages that support custom operators can use the object that represents the culture that supplies formatting information -- The object that supplies formatting information. -- A custom object that implements the interface. Its method returns the object that supplies formatting information. +- A object that represents the culture that supplies formatting information +- The object that supplies formatting information. +- A custom object that implements the interface. Its method returns the object that supplies formatting information. ## Examples The following example displays the string representation of several complex numbers. The result uses the formatting conventions of the English - United States ("en-US") and French - France ("fr-FR") cultures. diff --git a/xml/System.Printing/Collation.xml b/xml/System.Printing/Collation.xml index 54fabd7c7c5..4c8e2ddf283 100644 --- a/xml/System.Printing/Collation.xml +++ b/xml/System.Printing/Collation.xml @@ -22,34 +22,34 @@ Specifies whether a printer collates output when it prints multiple copies of a multi-page print job. - collection, which is a property of , these values indicate the type of output that the printer supports. (Many printers support both types.) - -- As the value of the property of a , the value instructs the printer whether to collate. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the collation feature to an unrecognized collation option, then a object in your application that is constructed with that document will have **Unknown** as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to test a printer's capabilities and configure a print job to take advantage of them. . - + collection, which is a property of , these values indicate the type of output that the printer supports. (Many printers support both types.) + +- As the value of the property of a , the value instructs the printer whether to collate. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the collation feature to an unrecognized collation option, then a object in your application that is constructed with that document will have **Unknown** as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to test a printer's capabilities and configure a print job to take advantage of them. . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/DeviceFontSubstitution.xml b/xml/System.Printing/DeviceFontSubstitution.xml index 0ff6890e9e1..9c03aa7de38 100644 --- a/xml/System.Printing/DeviceFontSubstitution.xml +++ b/xml/System.Printing/DeviceFontSubstitution.xml @@ -22,32 +22,32 @@ Specifies whether device font substitution is enabled on a printer. - collection, a property of , they represent the printer capabilities. - -- As the value of the property of a , they instruct the printer to enable or disable device font substitution for the print job. - - The Unknown value is never used in properties of objects. - - You should never set a property to Unknown. If some other producing application has created a PrintTicket document that sets the device font substitution feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have Unknown as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to determine printer capabilities and configure the print job to take advantage of them. - + collection, a property of , they represent the printer capabilities. + +- As the value of the property of a , they instruct the printer to enable or disable device font substitution for the print job. + + The Unknown value is never used in properties of objects. + + You should never set a property to Unknown. If some other producing application has created a PrintTicket document that sets the device font substitution feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have Unknown as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to determine printer capabilities and configure the print job to take advantage of them. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/Duplexing.xml b/xml/System.Printing/Duplexing.xml index c76db780876..dfb169b24a6 100644 --- a/xml/System.Printing/Duplexing.xml +++ b/xml/System.Printing/Duplexing.xml @@ -22,30 +22,30 @@ Specifies whether a printer uses one-sided printing or some type of two-sided (duplex) printing. - collection, which is a property of , these values indicate the kinds of one-sided and two-sided printing that the printer supports. - -- As the value of the property of a , they direct the printer to use one-sided printing or some kind of two-sided printing. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the duplexing feature to an unrecognized duplexing option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. . - + collection, which is a property of , these values indicate the kinds of one-sided and two-sided printing that the printer supports. + +- As the value of the property of a , they direct the printer to use one-sided printing or some kind of two-sided printing. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the duplexing feature to an unrecognized duplexing option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/InputBin.xml b/xml/System.Printing/InputBin.xml index 436ca6768d0..f4531f5f989 100644 --- a/xml/System.Printing/InputBin.xml +++ b/xml/System.Printing/InputBin.xml @@ -22,30 +22,30 @@ Specifies the input bin that is used as the source of blank paper or other print media. - collection, a property of , they indicate the types of input bins that the printer supports. - -- As the value of the property of a , they instruct the printer to use the specified bin. - - The `Unknown` value is never used in properties of objects. - - You should never set a property to `Unknown`. If some other producing application has created a document that sets the input bin feature to an unrecognized optio, (that is, an option that is not defined in the [Print Schema](/windows/win32/printdocs/printschema), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to determine printer capabilities and configure the print job to take advantage of them. - + collection, a property of , they indicate the types of input bins that the printer supports. + +- As the value of the property of a , they instruct the printer to use the specified bin. + + The `Unknown` value is never used in properties of objects. + + You should never set a property to `Unknown`. If some other producing application has created a document that sets the input bin feature to an unrecognized optio, (that is, an option that is not defined in the [Print Schema](/windows/win32/printdocs/printschema), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to determine printer capabilities and configure the print job to take advantage of them. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/OutputColor.xml b/xml/System.Printing/OutputColor.xml index c751fd5e8f5..869ce9d25f9 100644 --- a/xml/System.Printing/OutputColor.xml +++ b/xml/System.Printing/OutputColor.xml @@ -22,29 +22,29 @@ Specifies how to print content that contains color or shades of gray. - collection, which is a property of , these values specify the types of output that a printer supports. (Many printers support more than one type.) - -- As the value of the property of a , they direct the printer to produce the designated type of output. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to `Unknown`. If some other producing application has created a *PrintTicket document* that sets the output color feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to use this enumeration to set values. - + collection, which is a property of , these values specify the types of output that a printer supports. (Many printers support more than one type.) + +- As the value of the property of a , they direct the printer to produce the designated type of output. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to `Unknown`. If some other producing application has created a *PrintTicket document* that sets the output color feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to use this enumeration to set values. + :::code language="csharp" source="~/snippets/csharp/System.Printing/LocalPrintServer/Overview/XpsPrintHelper.cs" id="Snippetoutputcolorandpageorientation"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsPrint/visualbasic/xpsprinthelper.vb" id="Snippetoutputcolorandpageorientation"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsPrint/visualbasic/xpsprinthelper.vb" id="Snippetoutputcolorandpageorientation"::: + ]]> diff --git a/xml/System.Printing/OutputQuality.xml b/xml/System.Printing/OutputQuality.xml index 9d2d2a5257f..37b8165d049 100644 --- a/xml/System.Printing/OutputQuality.xml +++ b/xml/System.Printing/OutputQuality.xml @@ -22,33 +22,33 @@ Specifies the types of output quality for a print device. - collection, which is a property of , these values indicate the types of output quality that a printer supports. - -- As the value of the property of a , they direct a printer to produce a particular quality. - - The `Unknown` value is never used in properties of objects. - - You should never set a property to `Unknown`. If some other producing application has created a *PrintTicket document* that sets the output quality feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - + collection, which is a property of , these values indicate the types of output quality that a printer supports. + +- As the value of the property of a , they direct a printer to produce a particular quality. + + The `Unknown` value is never used in properties of objects. + + You should never set a property to `Unknown`. If some other producing application has created a *PrintTicket document* that sets the output quality feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + ## Notes on OutputQuality.Photographic The Photographic value produces documents with high output quality. Producing documents with better output quality requires larger print spooler files and longer wait times. If these side effects are undesirable, you can use the High value instead. - -## Examples - The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. . - + +## Examples + The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/PageBorderless.xml b/xml/System.Printing/PageBorderless.xml index e4bd7dfb48e..80df50e00fd 100644 --- a/xml/System.Printing/PageBorderless.xml +++ b/xml/System.Printing/PageBorderless.xml @@ -22,21 +22,21 @@ Specifies whether a print device prints to the edge of the media or provides an unprinted margin around the edge. - collection, which is a property of , these values indicate whether the device supports borderless printing. - -- As the value of the property of a , the value instructs the printer whether to print to the edge of the media. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the page borderless feature to an unrecognized option, then a object in your application that is constructed with that document will have **Unknown** as the value of the property. - + collection, which is a property of , these values indicate whether the device supports borderless printing. + +- As the value of the property of a , the value instructs the printer whether to print to the edge of the media. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the page borderless feature to an unrecognized option, then a object in your application that is constructed with that document will have **Unknown** as the value of the property. + ]]> diff --git a/xml/System.Printing/PageMediaType.xml b/xml/System.Printing/PageMediaType.xml index 730af7852ec..427b353637f 100644 --- a/xml/System.Printing/PageMediaType.xml +++ b/xml/System.Printing/PageMediaType.xml @@ -22,30 +22,30 @@ Specifies types of printing paper or other media. - collection, a property of , they indicate the types of media that the printer supports. - -- As the value of the property of a , they instruct the printer to use a specific type of media. - - The Unknownvalue is never used in properties of objects. - - You should never set a property to Unknown. If some other producing application has created a PrintTicket document that sets the page media type feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have Unknown as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to determine the printer capabilities and configure the print job to take advantage of them. - + collection, a property of , they indicate the types of media that the printer supports. + +- As the value of the property of a , they instruct the printer to use a specific type of media. + + The Unknownvalue is never used in properties of objects. + + You should never set a property to Unknown. If some other producing application has created a PrintTicket document that sets the page media type feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have Unknown as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to determine the printer capabilities and configure the print job to take advantage of them. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/PageOrder.xml b/xml/System.Printing/PageOrder.xml index dd6c7bcc027..9fdb5c059ce 100644 --- a/xml/System.Printing/PageOrder.xml +++ b/xml/System.Printing/PageOrder.xml @@ -22,30 +22,30 @@ Specifies whether a print device prints multi-page documents from front-to-back or back-to-front. - collection, a property of , these values indicate the type of page order that a printer supports. (Many printers support both types.) - -- As the value of the property of a , the value directs a printer to print output in a specified order. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the page order feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. - + collection, a property of , these values indicate the type of page order that a printer supports. (Many printers support both types.) + +- As the value of the property of a , the value directs a printer to print output in a specified order. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the page order feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/PageOrientation.xml b/xml/System.Printing/PageOrientation.xml index d72a529e519..711e8de3c96 100644 --- a/xml/System.Printing/PageOrientation.xml +++ b/xml/System.Printing/PageOrientation.xml @@ -22,29 +22,29 @@ Specifies how pages of content are oriented on print media. - collection, which is a property of , these values indicate the orientation types that a printer supports. - -- As the value of the property of a , the value directs the printer to use a particular orientation. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the orientation feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to use this enumeration to set values. - + collection, which is a property of , these values indicate the orientation types that a printer supports. + +- As the value of the property of a , the value directs the printer to use a particular orientation. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the orientation feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to use this enumeration to set values. + :::code language="csharp" source="~/snippets/csharp/System.Printing/LocalPrintServer/Overview/XpsPrintHelper.cs" id="Snippetoutputcolorandpageorientation"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsPrint/visualbasic/xpsprinthelper.vb" id="Snippetoutputcolorandpageorientation"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsPrint/visualbasic/xpsprinthelper.vb" id="Snippetoutputcolorandpageorientation"::: + ]]> diff --git a/xml/System.Printing/PagesPerSheetDirection.xml b/xml/System.Printing/PagesPerSheetDirection.xml index 8080890dbb6..91a57045646 100644 --- a/xml/System.Printing/PagesPerSheetDirection.xml +++ b/xml/System.Printing/PagesPerSheetDirection.xml @@ -22,30 +22,30 @@ Specifies the arrangement of pages when more than one page of content appears on a single side of print media. - collection, which is a property of , these values indicate the page arrangements that the printer supports. - -- As the value of the property of a , the value directs the printer to arrange pages of content in a specified direction. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the pages-per-sheet-direction feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. - + collection, which is a property of , these values indicate the page arrangements that the printer supports. + +- As the value of the property of a , the value directs the printer to arrange pages of content in a specified direction. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the pages-per-sheet-direction feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/PhotoPrintingIntent.xml b/xml/System.Printing/PhotoPrintingIntent.xml index 0f7f953d5dd..5e6fd654e82 100644 --- a/xml/System.Printing/PhotoPrintingIntent.xml +++ b/xml/System.Printing/PhotoPrintingIntent.xml @@ -22,21 +22,21 @@ Specifies the quality of output when a photograph is printed. The printer driver translates the into quantitative values for resolution and other quality factors. - collection, which is a property of , they specify the quality levels that the printer supports. - -- As a value, which is a property of , instructs the printer to use a particular quality. - - The `Unknown` value is never used in properties of objects. - - You should never set a property to `Unknown`. If some other producing application has created a PrintTicket document that sets the photo printing intent feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](/windows/win32/printdocs/printschema), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - + collection, which is a property of , they specify the quality levels that the printer supports. + +- As a value, which is a property of , instructs the printer to use a particular quality. + + The `Unknown` value is never used in properties of objects. + + You should never set a property to `Unknown`. If some other producing application has created a PrintTicket document that sets the photo printing intent feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](/windows/win32/printdocs/printschema), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information, see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + ]]> diff --git a/xml/System.Printing/PrintCapabilities.xml b/xml/System.Printing/PrintCapabilities.xml index d71dcd4475b..ac24a2cc1f3 100644 --- a/xml/System.Printing/PrintCapabilities.xml +++ b/xml/System.Printing/PrintCapabilities.xml @@ -776,9 +776,9 @@ foreach (PageResolution pageRes in pc.PageResolutionCapability) ## Remarks This property generally represents the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)'s `PageScaling` keyword. But there are some complexities as follows. -- If the PrintCapabilities document does not have a `PageScaling` element, or it has one, but neither its **CustomSquare** nor **Custom** options are defined; then the property is null. +- If the PrintCapabilities document does not have a `PageScaling` element, or it has one, but neither its **CustomSquare** nor **Custom** options are defined; then the property is null. -- In all other cases, the property's behavior is as follows. +- In all other cases, the property's behavior is as follows. The property of the property's object is the smallest of the following values. diff --git a/xml/System.Printing/PrintQueue.xml b/xml/System.Printing/PrintQueue.xml index 163a3c80e71..e01839c1c46 100644 --- a/xml/System.Printing/PrintQueue.xml +++ b/xml/System.Printing/PrintQueue.xml @@ -651,9 +651,9 @@ If `fastCopy` is `false`, then it is not necessary to use an XPSDrv printer. The XPS file being added to the queue is converted to the printer's page description language, such as PCL or Postscript. However, this kind of printing makes a call to Component Object Model (COM). The call to COM requires that the calling thread have a single-threaded apartment () instead of multiple-threaded apartment (), which is the default. There are two ways of doing this: -- The simplest way is to add the (that is, "`[System.STAThreadAttribute()]`") just above the first line of the application's `Main` method (usually "`static void Main(string[] args)`"). +- The simplest way is to add the (that is, "`[System.STAThreadAttribute()]`") just above the first line of the application's `Main` method (usually "`static void Main(string[] args)`"). -- If you need your `Main` thread's apartment state to be , you can house the call to in a separate thread whose apartment state is set to with . The example below illustrates this second technique. +- If you need your `Main` thread's apartment state to be , you can house the call to in a separate thread whose apartment state is set to with . The example below illustrates this second technique. > [!NOTE] > You cannot apply the to any method except `Main` and you cannot use for the `Main` thread. diff --git a/xml/System.Printing/PrintSystemDesiredAccess.xml b/xml/System.Printing/PrintSystemDesiredAccess.xml index 4109f2a39b6..09b0b5de656 100644 --- a/xml/System.Printing/PrintSystemDesiredAccess.xml +++ b/xml/System.Printing/PrintSystemDesiredAccess.xml @@ -23,31 +23,31 @@ Specifies the different access rights (or levels of access) for printing objects. - and constructors. The constructors will throw exceptions if you use a value that can apply only to another kind of object. For example, do not pass AdministratePrinter to a constructor. - - - -## Examples - The following example shows how to use this enumeration to install a second printer that differs in its properties from an existing printer only in location, port, and shared status. - + and constructors. The constructors will throw exceptions if you use a value that can apply only to another kind of object. For example, do not pass AdministratePrinter to a constructor. + + + +## Examples + The following example shows how to use this enumeration to install a second printer that differs in its properties from an existing printer only in location, port, and shared status. + :::code language="csharp" source="~/snippets/csharp/System.Printing/LocalPrintServer/.ctor/Program.cs" id="Snippetcloneprinter"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ClonePrinter/visualbasic/program.vb" id="Snippetcloneprinter"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/ClonePrinter/visualbasic/program.vb" id="Snippetcloneprinter"::: + ]]> diff --git a/xml/System.Printing/PrintTicket.xml b/xml/System.Printing/PrintTicket.xml index 06dede54479..87006152e7f 100644 --- a/xml/System.Printing/PrintTicket.xml +++ b/xml/System.Printing/PrintTicket.xml @@ -425,11 +425,11 @@ When this property is not `null`, it will have the following relationships to the features defined in the [Print Schema](/windows/win32/printdocs/printschema). -- If the XML form of the contains `JobInputBin`, then this property has the same value as `JobInputBin` (regardless of whether or not there is also `DocumentInputBin` or `PageInputBin`. markup in the XML version of the ). +- If the XML form of the contains `JobInputBin`, then this property has the same value as `JobInputBin` (regardless of whether or not there is also `DocumentInputBin` or `PageInputBin`. markup in the XML version of the ). -- If there is no `JobInputBin` markup, but there is `DocumentInputBin`, then this property has the same value as `DocumentInputBin` (regardless of whether or not there is also `PageInputBin` markup) present. +- If there is no `JobInputBin` markup, but there is `DocumentInputBin`, then this property has the same value as `DocumentInputBin` (regardless of whether or not there is also `PageInputBin` markup) present. -- If there is neither `JobInputBin` nor `DocumentInputBin` markup, but there is `PageInputBin` markup, then this property has the same value as `PageInputBin`. +- If there is neither `JobInputBin` nor `DocumentInputBin` markup, but there is `PageInputBin` markup, then this property has the same value as `PageInputBin`. When this property is set to any value, then matching `JobInputBin` markup will be added to the XML print ticket and any `DocumentInputBin` and `PageInputBin` markup that is already there will be removed. @@ -836,17 +836,17 @@ When reading the property, the property behaves as follows. -- If the PrintTicket XML document has the `PageScaling` feature set to the **CustomSquare** option, and the **CustomSquare** option's **Scale** value is positive value, then that is the value that is returned. +- If the PrintTicket XML document has the `PageScaling` feature set to the **CustomSquare** option, and the **CustomSquare** option's **Scale** value is positive value, then that is the value that is returned. -- If the PrintTicket XML document has the `PageScaling` feature set to the **Custom** option, and the **Custom** option's **ScaleWidth** value is positive value, then that is the value that is returned. +- If the PrintTicket XML document has the `PageScaling` feature set to the **Custom** option, and the **Custom** option's **ScaleWidth** value is positive value, then that is the value that is returned. -- In all other cases, `null` is returned. +- In all other cases, `null` is returned. When setting the property, the property behaves as follows. -- If it's set to `null`, then the `PageScaling` markup is removed from the PrintTicket XML document. +- If it's set to `null`, then the `PageScaling` markup is removed from the PrintTicket XML document. -- Otherwise, the `PageScaling` feature in the PrintTicket XML document is set to **CustomSquare** and the **CustomSquare** option's **Scale** value is set to the passed value. (See **Exceptions** for what happens if the property is set to a value less than 1.) +- Otherwise, the `PageScaling` feature in the PrintTicket XML document is set to **CustomSquare** and the **CustomSquare** option's **Scale** value is set to the passed value. (See **Exceptions** for what happens if the property is set to a value less than 1.) ]]> diff --git a/xml/System.Printing/Stapling.xml b/xml/System.Printing/Stapling.xml index 12ba281c18e..192b1fce69e 100644 --- a/xml/System.Printing/Stapling.xml +++ b/xml/System.Printing/Stapling.xml @@ -22,30 +22,30 @@ Specifies whether, and where, a printer staples a multi-page document. - collection, which is a property of , these values indicate the types of stapling that a printer supports. - -- As the value of the property of a , the value instructs the printer whether, and where, to staple. - - The `Unknown` value is never used in properties of objects. - - You should never set a property to `Unknown`. If some other producing application has created a *PrintTicket document* that sets the stapling feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. - + collection, which is a property of , these values indicate the types of stapling that a printer supports. + +- As the value of the property of a , the value instructs the printer whether, and where, to staple. + + The `Unknown` value is never used in properties of objects. + + You should never set a property to `Unknown`. If some other producing application has created a *PrintTicket document* that sets the stapling feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397)), then a object in your application that is constructed with that document will have `Unknown` as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Printing/TrueTypeFontMode.xml b/xml/System.Printing/TrueTypeFontMode.xml index e001a8b09e4..a6bf3e5748e 100644 --- a/xml/System.Printing/TrueTypeFontMode.xml +++ b/xml/System.Printing/TrueTypeFontMode.xml @@ -22,42 +22,42 @@ Specifies how a printer handles text that is formatted with a TrueType font. - collection, which is a property of , these values indicate which of the preceding techniques is available for a particular printer. Many printers support more than one of these techniques. - -- As the value of the property of a , the value instructs the printer to handle TrueType fonts in a particular way. - - The **Unknown** value is never used in properties of objects. - - You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the TrueType font handling feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. - - Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). - - - -## Examples - The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. - + collection, which is a property of , these values indicate which of the preceding techniques is available for a particular printer. Many printers support more than one of these techniques. + +- As the value of the property of a , the value instructs the printer to handle TrueType fonts in a particular way. + + The **Unknown** value is never used in properties of objects. + + You should never set a property to **Unknown**. If some other producing application has created a *PrintTicket document* that sets the TrueType font handling feature to an unrecognized option (that is, an option that is not defined in the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397), then a object in your application that is constructed with that document will have **Unknown** as the value of the property. + + Although the and classes cannot be inherited, you can extend the [Print Schema](https://go.microsoft.com/fwlink/?LinkId=186397) to recognize print device features that are not accounted for in the or classes. For more information see [How to: Extend the Print Schema and Create New Print System Classes](https://learn.microsoft.com/previous-versions/aa970573(v=vs.100)). + + + +## Examples + The following example shows how to test a printer's capabilities and configure the print job to take advantage of them. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Wpf/XpsCreate/CPP/XpsCreate.cpp" id="Snippetprintercapabilities"::: :::code language="csharp" source="~/snippets/csharp/System.Printing/Collation/Overview/XpsCreate.cs" id="Snippetprintercapabilities"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/XpsCreate/visualbasic/xpscreate.vb" id="Snippetprintercapabilities"::: + ]]> diff --git a/xml/System.Reflection.Emit/ConstructorBuilder.xml b/xml/System.Reflection.Emit/ConstructorBuilder.xml index c49bcc051f3..ac128d7da99 100644 --- a/xml/System.Reflection.Emit/ConstructorBuilder.xml +++ b/xml/System.Reflection.Emit/ConstructorBuilder.xml @@ -84,9 +84,9 @@ If you use to define a constructor for your dynamic type, a parameterless constructor is not provided. You have the following options for providing a parameterless constructor in addition to the constructor you defined: -- If you want a parameterless constructor that simply calls the parameterless constructor of the base class, you can use the method to create one (and optionally restrict access to it). Do not provide an implementation for this parameterless constructor. If you do, an exception is thrown when you try to use the constructor. No exception is thrown when the method is called. +- If you want a parameterless constructor that simply calls the parameterless constructor of the base class, you can use the method to create one (and optionally restrict access to it). Do not provide an implementation for this parameterless constructor. If you do, an exception is thrown when you try to use the constructor. No exception is thrown when the method is called. -- If you want a parameterless constructor that does something more than simply calling the parameterless constructor of the base class, or that calls another constructor of the base class, or that does something else entirely, you must use the method to create a , and provide your own implementation. +- If you want a parameterless constructor that does something more than simply calling the parameterless constructor of the base class, or that calls another constructor of the base class, or that does something else entirely, you must use the method to create a , and provide your own implementation. diff --git a/xml/System.Reflection.Emit/DynamicMethod.xml b/xml/System.Reflection.Emit/DynamicMethod.xml index c455da29cdf..144835452dc 100644 --- a/xml/System.Reflection.Emit/DynamicMethod.xml +++ b/xml/System.Reflection.Emit/DynamicMethod.xml @@ -248,9 +248,9 @@ The following code example creates a dynamic method that takes two parameters. T Specify `true` for `restrictedSkipVisibility` if your dynamic method has to access types or members that are `private`, `protected`, or `internal`. This gives the dynamic method restricted access to these members. That is, the members can be accessed only if the following conditions are met: -- The target members belong to an assembly that has a level of trust equal to or lower than the call stack that emits the dynamic method. +- The target members belong to an assembly that has a level of trust equal to or lower than the call stack that emits the dynamic method. -- The call stack that emits the dynamic method is granted with the flag. This is always true when the code is executed with full trust. For partially trusted code, it is true only if the host explicitly grants the permission. +- The call stack that emits the dynamic method is granted with the flag. This is always true when the code is executed with full trust. For partially trusted code, it is true only if the host explicitly grants the permission. > [!IMPORTANT] > If the permission has not been granted, a security exception is thrown when is called or when the dynamic method is invoked, not when this constructor is called. No special permissions are required to emit the dynamic method. @@ -2114,9 +2114,9 @@ The following code example creates a dynamic method that takes two parameters. T The transparency of a dynamic method depends on the module it is associated with. If the dynamic method is associated with a type rather than a module, its transparency depends on the module that contains the type. Dynamic methods do not have security annotations, so they are assigned the default transparency for the associated module. -- Anonymously hosted dynamic methods are always transparent, because the system-provided module that contains them is transparent. +- Anonymously hosted dynamic methods are always transparent, because the system-provided module that contains them is transparent. -- The transparency of a dynamic method that is associated with a trusted assembly (that is, a strong-named assembly that is installed in the global assembly cache) is described in the following table. +- The transparency of a dynamic method that is associated with a trusted assembly (that is, a strong-named assembly that is installed in the global assembly cache) is described in the following table. |Assembly annotation|Level 1 transparency|Level 2 transparency| |-------------------------|--------------------------|--------------------------| @@ -2130,7 +2130,7 @@ The following code example creates a dynamic method that takes two parameters. T > [!NOTE] > Associating a dynamic method with a module in a trusted level 1 assembly that is security-agnostic, such as System.dll, does not permit elevation of trust. If the grant set of the code that calls the dynamic method does not include the grant set of System.dll (that is, full trust), is thrown when the dynamic method is called. -- The transparency of a dynamic method that is associated with a partially trusted assembly depends on how the assembly is loaded. If the assembly is loaded with partial trust (for example, into a sandboxed application domain), the runtime ignores the security annotations of the assembly. The assembly and all its types and members, including dynamic methods, are treated as transparent. The runtime pays attention to security annotations only if the partial-trust assembly is loaded with full trust (for example, into the default application domain of a desktop application). In that case, the runtime assigns the dynamic method the default transparency for methods according to the assembly's annotations. +- The transparency of a dynamic method that is associated with a partially trusted assembly depends on how the assembly is loaded. If the assembly is loaded with partial trust (for example, into a sandboxed application domain), the runtime ignores the security annotations of the assembly. The assembly and all its types and members, including dynamic methods, are treated as transparent. The runtime pays attention to security annotations only if the partial-trust assembly is loaded with full trust (for example, into the default application domain of a desktop application). In that case, the runtime assigns the dynamic method the default transparency for methods according to the assembly's annotations. For more information about reflection emit and transparency, see [Security Issues in Reflection Emit](/dotnet/framework/reflection-and-codedom/security-issues-in-reflection-emit). For information about transparency, see [Security Changes](/dotnet/framework/security/security-changes). @@ -2201,9 +2201,9 @@ The following code example creates a dynamic method that takes two parameters. T The transparency of a dynamic method depends on the module it is associated with. If the dynamic method is associated with a type rather than a module, its transparency depends on the module that contains the type. Dynamic methods do not have security annotations, so they are assigned the default transparency for the associated module. -- Anonymously hosted dynamic methods are always transparent, because the system-provided module that contains them is transparent. +- Anonymously hosted dynamic methods are always transparent, because the system-provided module that contains them is transparent. -- The transparency of a dynamic method that is associated with a trusted assembly (that is, a strong-named assembly that is installed in the global assembly cache) is described in the following table. +- The transparency of a dynamic method that is associated with a trusted assembly (that is, a strong-named assembly that is installed in the global assembly cache) is described in the following table. |Assembly annotation|Level 1 transparency|Level 2 transparency| |-------------------------|--------------------------|--------------------------| @@ -2217,7 +2217,7 @@ The following code example creates a dynamic method that takes two parameters. T > [!NOTE] > Associating a dynamic method with a module in a trusted level 1 assembly that is security-agnostic, such as System.dll, does not permit elevation of trust. If the grant set of the code that calls the dynamic method does not include the grant set of System.dll (that is, full trust), is thrown when the dynamic method is called. -- The transparency of a dynamic method that is associated with a partially trusted assembly depends on how the assembly is loaded. If the assembly is loaded with partial trust (for example, into a sandboxed application domain), the runtime ignores the security annotations of the assembly. The assembly and all its types and members, including dynamic methods, are treated as transparent. The runtime pays attention to security annotations only if the partial-trust assembly is loaded with full trust (for example, into the default application domain of a desktop application). In that case, the runtime assigns the dynamic method the default transparency for methods according to the assembly's annotations. +- The transparency of a dynamic method that is associated with a partially trusted assembly depends on how the assembly is loaded. If the assembly is loaded with partial trust (for example, into a sandboxed application domain), the runtime ignores the security annotations of the assembly. The assembly and all its types and members, including dynamic methods, are treated as transparent. The runtime pays attention to security annotations only if the partial-trust assembly is loaded with full trust (for example, into the default application domain of a desktop application). In that case, the runtime assigns the dynamic method the default transparency for methods according to the assembly's annotations. For more information about reflection emit and transparency, see [Security Issues in Reflection Emit](/dotnet/framework/reflection-and-codedom/security-issues-in-reflection-emit). For information about transparency, see [Security Changes](/dotnet/framework/security/security-changes). @@ -2288,9 +2288,9 @@ The following code example creates a dynamic method that takes two parameters. T The transparency of a dynamic method depends on the module it is associated with. If the dynamic method is associated with a type rather than a module, its transparency depends on the module that contains the type. Dynamic methods do not have security annotations, so they are assigned the default transparency for the associated module. -- Anonymously hosted dynamic methods are always transparent, because the system-provided module that contains them is transparent. +- Anonymously hosted dynamic methods are always transparent, because the system-provided module that contains them is transparent. -- The transparency of a dynamic method that is associated with a trusted assembly (that is, a strong-named assembly that is installed in the global assembly cache) is described in the following table. +- The transparency of a dynamic method that is associated with a trusted assembly (that is, a strong-named assembly that is installed in the global assembly cache) is described in the following table. |Assembly annotation|Level 1 transparency|Level 2 transparency| |-------------------------|--------------------------|--------------------------| @@ -2304,7 +2304,7 @@ The following code example creates a dynamic method that takes two parameters. T > [!NOTE] > Associating a dynamic method with a module in a trusted level 1 assembly that is security-agnostic, such as System.dll, does not permit elevation of trust. If the grant set of the code that calls the dynamic method does not include the grant set of System.dll (that is, full trust), is thrown when the dynamic method is called. -- The transparency of a dynamic method that is associated with a partially trusted assembly depends on how the assembly is loaded. If the assembly is loaded with partial trust (for example, into a sandboxed application domain), the runtime ignores the security annotations of the assembly. The assembly and all its types and members, including dynamic methods, are treated as transparent. The runtime pays attention to security annotations only if the partial-trust assembly is loaded with full trust (for example, into the default application domain of a desktop application). In that case, the runtime assigns the dynamic method the default transparency for methods according to the assembly's annotations. +- The transparency of a dynamic method that is associated with a partially trusted assembly depends on how the assembly is loaded. If the assembly is loaded with partial trust (for example, into a sandboxed application domain), the runtime ignores the security annotations of the assembly. The assembly and all its types and members, including dynamic methods, are treated as transparent. The runtime pays attention to security annotations only if the partial-trust assembly is loaded with full trust (for example, into the default application domain of a desktop application). In that case, the runtime assigns the dynamic method the default transparency for methods according to the assembly's annotations. For more information about reflection emit and transparency, see [Security Issues in Reflection Emit](/dotnet/framework/reflection-and-codedom/security-issues-in-reflection-emit). For information about transparency, see [Security Changes](/dotnet/framework/security/security-changes). diff --git a/xml/System.Reflection.Emit/GenericTypeParameterBuilder.xml b/xml/System.Reflection.Emit/GenericTypeParameterBuilder.xml index fbd9e0a585d..b18e5c419a4 100644 --- a/xml/System.Reflection.Emit/GenericTypeParameterBuilder.xml +++ b/xml/System.Reflection.Emit/GenericTypeParameterBuilder.xml @@ -68,11 +68,11 @@ ## Remarks You can get an array of objects by using the method to add type parameters to a dynamic type, thus making it a generic type, or by using the method to add type parameters to a dynamic method. Use the objects to add constraints to the type parameters. Constraints are of three kinds: -- The base type constraint specifies that any type assigned to the generic type parameter must derive from a particular base type. Set this constraint by using the method. +- The base type constraint specifies that any type assigned to the generic type parameter must derive from a particular base type. Set this constraint by using the method. -- An interface constraint specifies that any type assigned to the generic type parameter must implement a particular interface. Set the interface constraints by using the method. +- An interface constraint specifies that any type assigned to the generic type parameter must implement a particular interface. Set the interface constraints by using the method. -- Special constraints specify that any type assigned to the generic type parameter must have a parameterless constructor, must be a reference type, or must be a value type. Set the special constraints for a type parameter by using the method. +- Special constraints specify that any type assigned to the generic type parameter must have a parameterless constructor, must be a reference type, or must be a value type. Set the special constraints for a type parameter by using the method. Interface constraints and special constraints cannot be retrieved using methods of the class. Once you have created the generic type that contains the type parameters, you can use its object to reflect the constraints. Use the method to get the type parameters, and for each type parameter use the method to get the base type constraint and interface constraints, and the property to get the special constraints. diff --git a/xml/System.Reflection.Emit/MethodBuilder.xml b/xml/System.Reflection.Emit/MethodBuilder.xml index 3fd52ef3073..22f7f91f430 100644 --- a/xml/System.Reflection.Emit/MethodBuilder.xml +++ b/xml/System.Reflection.Emit/MethodBuilder.xml @@ -2567,9 +2567,9 @@ For information on how to format `binaryAttribute`, see the metadata specificati ## Remarks When you use the method in combination with the method, be aware of potential interactions. For example, using the method to add the attribute also sets the flag. If you subsequently call the method, the flag is overwritten. There are two ways to avoid this: -- Call the method before you call the method. The method always respects existing method implementation flags. +- Call the method before you call the method. The method always respects existing method implementation flags. -- When you set implementation flags, call the method to retrieve the existing flags, use bitwise OR to add your flag, and then call the method. +- When you set implementation flags, call the method to retrieve the existing flags, use bitwise OR to add your flag, and then call the method. diff --git a/xml/System.Reflection.Emit/ModuleBuilder.xml b/xml/System.Reflection.Emit/ModuleBuilder.xml index 69959bc270c..d75e49c5969 100644 --- a/xml/System.Reflection.Emit/ModuleBuilder.xml +++ b/xml/System.Reflection.Emit/ModuleBuilder.xml @@ -1080,13 +1080,13 @@ ## Remarks Resources that are recorded in the assembly manifest can be managed resources or manifest resource BLOBs, and each of these can be included in the assembly either by linking or by embedding. All four scenarios are supported for dynamic assemblies. -- This method allows you to embed a manifest resource BLOB into a dynamic assembly. +- This method allows you to embed a manifest resource BLOB into a dynamic assembly. -- To embed a managed resource into the manifest module of a dynamic assembly or into a satellite module, use the method to get a resource writer, and use the method to add the resource. +- To embed a managed resource into the manifest module of a dynamic assembly or into a satellite module, use the method to get a resource writer, and use the method to add the resource. -- To link a managed resource into a dynamic assembly, use the method to get a resource writer, and use the method to add the linked resource. +- To link a managed resource into a dynamic assembly, use the method to get a resource writer, and use the method to add the linked resource. -- To link a manifest resource BLOB into a dynamic assembly, use the method to add the linked resource. +- To link a manifest resource BLOB into a dynamic assembly, use the method to add the linked resource. In addition, a single Win32 resource can be attached to an assembly by using the method or the method. This resource does not appear in the assembly manifest. diff --git a/xml/System.Reflection.Emit/OpCodes.xml b/xml/System.Reflection.Emit/OpCodes.xml index 539e53de671..f25ae62e5b4 100644 --- a/xml/System.Reflection.Emit/OpCodes.xml +++ b/xml/System.Reflection.Emit/OpCodes.xml @@ -1892,9 +1892,9 @@ A value type has two separate representations within the Common Language Infrastructure (CLI): -- A 'raw' form used when a value type is embedded within another object or on the stack. +- A 'raw' form used when a value type is embedded within another object or on the stack. -- A 'boxed' form, where the data in the value type is wrapped (boxed) into an object so it can exist as an independent entity. +- A 'boxed' form, where the data in the value type is wrapped (boxed) into an object so it can exist as an independent entity. The `box` instruction converts the 'raw' (unboxed) value type into an object reference (type `O`). This is accomplished by creating a new object and copying the data from the value type into the newly allocated object. `valTypeToken` is a metadata token indicating the type of the value type on the stack. @@ -2831,7 +2831,7 @@ The `cgt` instruction compares `value1` and `value2`. If `value1` is strictly greater than `value2`, then an `int32` value of 1 is pushed on the stack. Otherwise, an `int32` value of 0 is pushed on the stack. -- For floating-point numbers, `cgt` returns 0 if the numbers are unordered (that is, if one or both of the arguments are NaN). +- For floating-point numbers, `cgt` returns 0 if the numbers are unordered (that is, if one or both of the arguments are NaN). The following method overload can use the `cgt` opcode: @@ -3045,7 +3045,7 @@ The `clt` instruction compares `value1` and `value2`. If `value1` is strictly less than `value2`, then an `int32` value of 1 is pushed on the stack. Otherwise, an `int32` value of 0 is pushed on the stack. -- For floating-point numbers, `clt` returns 0 if the numbers are unordered (that is, if one or both of the arguments are NaN). +- For floating-point numbers, `clt` returns 0 if the numbers are unordered (that is, if one or both of the arguments are NaN). The following method overload can use the `clt` opcode: @@ -3117,9 +3117,9 @@ - `value1` is strictly less than `value2` (as for `clt`). -- For floating-point numbers, `value1` is not ordered with respect to `value2`. +- For floating-point numbers, `value1` is not ordered with respect to `value2`. -- For integer values, `value1` is strictly less than `value2` when considered as unsigned numbers. +- For integer values, `value1` is strictly less than `value2` when considered as unsigned numbers. Otherwise, an `int32` value of 0 is pushed on the stack. @@ -3190,11 +3190,11 @@ When a `callvirt` `method` instruction has been prefixed by `constrained` `thisType`, the instruction is executed as follows: -- If `thisType` is a reference type (as opposed to a value type) then `ptr` is dereferenced and passed as the 'this' pointer to the `callvirt` of `method`. +- If `thisType` is a reference type (as opposed to a value type) then `ptr` is dereferenced and passed as the 'this' pointer to the `callvirt` of `method`. -- If `thisType` is a value type and `thisType` implements `method` then `ptr` is passed unmodified as the 'this' pointer to a `call` `method` instruction, for the implementation of `method` by `thisType`. +- If `thisType` is a value type and `thisType` implements `method` then `ptr` is passed unmodified as the 'this' pointer to a `call` `method` instruction, for the implementation of `method` by `thisType`. -- If `thisType` is a value type and `thisType` does not implement `method` then `ptr` is dereferenced, boxed, and passed as the 'this' pointer to the `callvirt` `method` instruction. +- If `thisType` is a value type and `thisType` does not implement `method` then `ptr` is dereferenced, boxed, and passed as the 'this' pointer to the `callvirt` `method` instruction. This last case can occur only when `method` was defined on , , or and not overridden by `thisType`. In this case, the boxing causes a copy of the original object to be made. However, because none of the methods of , , and modify the state of the object, this fact cannot be detected. @@ -12255,11 +12255,11 @@ The following method overloads A managed pointer restricted in this fashion can be used only in the following ways: -- As the `object` parameter for the `ldfld`, `ldflda`, `stfld`, `call`, or`constrained callvirt` instructions. +- As the `object` parameter for the `ldfld`, `ldflda`, `stfld`, `call`, or`constrained callvirt` instructions. -- As the `pointer` parameter to the `ldobj` instruction or to one of the `ldind` instructions. +- As the `pointer` parameter to the `ldobj` instruction or to one of the `ldind` instructions. -- As the `source` parameter to the `cpobj` instruction. +- As the `source` parameter to the `cpobj` instruction. All other operations disallowed, including the `stobj`, `initobj`, or `mkrefany` operations, or any of the `stind` instructions. @@ -15382,11 +15382,11 @@ callvirt m `TakesSingleByteArgument` returns `true` if the instance takes a single byte argument in the following cases: -- The opcode performs a branch instruction to a byte-sized address (for example, and ). +- The opcode performs a branch instruction to a byte-sized address (for example, and ). -- The opcode pushes a byte value onto the stack (for example, ). +- The opcode pushes a byte value onto the stack (for example, ). -- The opcode references a variable or argument via the byte-sized "short form" (for example, and ). +- The opcode references a variable or argument via the byte-sized "short form" (for example, and ). Otherwise, it returns `false`. @@ -15593,9 +15593,9 @@ callvirt m A value type has two separate representations within the Common Language Infrastructure (CLI): -- A 'raw' form used when a value type is embedded within another object. +- A 'raw' form used when a value type is embedded within another object. -- A 'boxed' form, where the data in the value type is wrapped (boxed) into an object so it can exist as an independent entity. +- A 'boxed' form, where the data in the value type is wrapped (boxed) into an object so it can exist as an independent entity. The `unbox` instruction converts the object reference (type `O`), the boxed representation of a value type, to a value type pointer (a managed pointer, type `&`), its unboxed form. The supplied value type (`valType`) is a metadata token indicating the type of value type contained within the boxed object. diff --git a/xml/System.Reflection.Emit/TypeBuilder.xml b/xml/System.Reflection.Emit/TypeBuilder.xml index d3b2c8c7ce0..e146ffbfae8 100644 --- a/xml/System.Reflection.Emit/TypeBuilder.xml +++ b/xml/System.Reflection.Emit/TypeBuilder.xml @@ -862,9 +862,9 @@ See for a description of the format of the If you define a constructor for your dynamic type, a parameterless constructor is not provided. You have the following options for providing a parameterless constructor in addition to the constructor you defined: -- If you want a parameterless constructor that simply calls the parameterless constructor of the base class, you can use the method to create one (and optionally restrict access to it). Do not provide an implementation for this parameterless constructor. If you do, an exception is thrown when you try to use the constructor. No exception is thrown when the method is called. +- If you want a parameterless constructor that simply calls the parameterless constructor of the base class, you can use the method to create one (and optionally restrict access to it). Do not provide an implementation for this parameterless constructor. If you do, an exception is thrown when you try to use the constructor. No exception is thrown when the method is called. -- If you want a parameterless constructor that does something more than simply calling the parameterless constructor of the base class, or that calls another constructor of the base class, or that does something else entirely, you must use the method to create one, and provide your own implementation. +- If you want a parameterless constructor that does something more than simply calling the parameterless constructor of the base class, or that calls another constructor of the base class, or that does something else entirely, you must use the method to create one, and provide your own implementation. @@ -1096,9 +1096,9 @@ See for a description of the format of the ## Remarks Because the parameterless constructor is automatically defined, it is necessary to call this method only in the following situations: -- You have defined another constructor and you also want a parameterless constructor that simply calls the base class constructor. +- You have defined another constructor and you also want a parameterless constructor that simply calls the base class constructor. -- You want to set the attributes on the parameterless constructor to something other than , , , , and . +- You want to set the attributes on the parameterless constructor to something other than , , , , and . @@ -7970,9 +7970,9 @@ See for a description of the format of the The object returned by this method functions as a placeholder for a constructed generic type in your emitted code. It is an instance of a class derived from that has limited capabilities. In particular: -- To get methods, fields, and constructors for these constructed generic types, use the , , and method overloads. +- To get methods, fields, and constructors for these constructed generic types, use the , , and method overloads. -- Two instances that represent the same constructed type do not compare as equal. For example, in the following code `t1.Equals(t2)` returns `false`: +- Two instances that represent the same constructed type do not compare as equal. For example, in the following code `t1.Equals(t2)` returns `false`: :::code language="csharp" source="~/snippets/csharp/System.Reflection.Emit/TypeBuilder/MakeGenericType/remarks.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.reflection.emit.typebuilder.makegenerictype/vb/remarks.vb" id="Snippet1"::: diff --git a/xml/System.Reflection/Assembly.xml b/xml/System.Reflection/Assembly.xml index 037ff7e3103..3a3602ed73d 100644 --- a/xml/System.Reflection/Assembly.xml +++ b/xml/System.Reflection/Assembly.xml @@ -124,23 +124,23 @@ To load assemblies dynamically, the class provides the following static methods (`Shared` methods in Visual Basic). Assemblies are loaded into the application domain where the load operation occurs. -- The recommended way to load assemblies is to use the method, which identifies the assembly to be loaded by its display name (for example, "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"). The search for the assembly follows the rules described in [How the Runtime Locates Assemblies](/dotnet/framework/deployment/how-the-runtime-locates-assemblies). +- The recommended way to load assemblies is to use the method, which identifies the assembly to be loaded by its display name (for example, "System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"). The search for the assembly follows the rules described in [How the Runtime Locates Assemblies](/dotnet/framework/deployment/how-the-runtime-locates-assemblies). -- The and methods enable you to load an assembly for reflection, but not for execution. For example, an assembly that targets a 64-bit platform can be examined by code that is running on a 32-bit platform. +- The and methods enable you to load an assembly for reflection, but not for execution. For example, an assembly that targets a 64-bit platform can be examined by code that is running on a 32-bit platform. -- The and methods are provided for rare scenarios in which an assembly must be identified by path. +- The and methods are provided for rare scenarios in which an assembly must be identified by path. To get an object for the currently executing assembly, use the method. Many members of the class provide information about an assembly. For example: -- The method returns an object that provides access to the parts of the assembly display name. +- The method returns an object that provides access to the parts of the assembly display name. -- The method lists the attributes applied to the assembly. +- The method lists the attributes applied to the assembly. -- The method provides access to the files in the assembly manifest. +- The method provides access to the files in the assembly manifest. -- The method provides the names of the resources in the assembly manifest. +- The method provides the names of the resources in the assembly manifest. The method lists all the types in the assembly. The method lists the types that are visible to callers outside the assembly. The method can be used to search for a particular type in the assembly. The method can be used to search for and create instances of types in the assembly. @@ -374,11 +374,11 @@ In .NET 5 and later versions, for bundled assemblies, this property throws an ex ## Remarks If the runtime is unable to find `typeName` in the instance, it returns `null` instead of throwing an exception. This might happen because: -- You haven't specified the fully qualified name of the type. +- You haven't specified the fully qualified name of the type. -- You've specified the fully qualified type name, but its case doesn't match the case of the type's property. For a case-insensitive comparison of `typeName` with the type's full name, call the overload and specify `true` for the `ignoreCase` argument. +- You've specified the fully qualified type name, but its case doesn't match the case of the type's property. For a case-insensitive comparison of `typeName` with the type's full name, call the overload and specify `true` for the `ignoreCase` argument. -- The type doesn't exist in the current instance. +- The type doesn't exist in the current instance. @@ -486,9 +486,9 @@ In .NET 5 and later versions, for bundled assemblies, this property throws an ex ## Remarks If the runtime is unable to find `typeName` in the instance, it returns `null` instead of throwing an exception. This might happen because: -- You haven't specified the fully qualified name of the type. +- You haven't specified the fully qualified name of the type. -- The type doesn't exist in the current instance. +- The type doesn't exist in the current instance. @@ -1300,11 +1300,11 @@ In .NET 5 and later versions, for bundled assemblies, this property throws an ex ## Remarks If the method that calls the method is expanded inline by the just-in-time (JIT) compiler, or if its caller is expanded inline, the assembly that is returned by may differ unexpectedly. For example, consider the following methods and assemblies: -- Method `M1` in assembly `A1` calls . +- Method `M1` in assembly `A1` calls . -- Method `M2` in assembly `A2` calls `M1`. +- Method `M2` in assembly `A2` calls `M1`. -- Method `M3` in assembly `A3` calls `M2`. +- Method `M3` in assembly `A3` calls `M2`. When `M1` is not inlined, returns `A2`. When `M1` is inlined, returns `A3`. Similarly, when `M2` is not inlined, returns `A2`. When `M2` is inlined, returns `A3`. @@ -2305,13 +2305,13 @@ In .NET 5 and later versions, for bundled assemblies, this method throws an exce ## Remarks You can use each resource name in the array returned by this method as follows: -- You can pass the resource name to the method to get additional information about the resource. +- You can pass the resource name to the method to get additional information about the resource. -- If the name identifies a binary .resources file, you can remove its .resources file extension and pass it to the constructor to instantiate the resource manager. +- If the name identifies a binary .resources file, you can remove its .resources file extension and pass it to the constructor to instantiate the resource manager. -- You can pass the resource name to the method to retrieve a object that you can then pass to the constructor. +- You can pass the resource name to the method to retrieve a object that you can then pass to the constructor. -- You can pass the resource name to the method to retrieve a object that you can then pass to the constructor. +- You can pass the resource name to the method to retrieve a object that you can then pass to the constructor. Resource information is returned only if the resource is visible to the caller, or the caller has . @@ -4372,13 +4372,13 @@ In .NET Core/5+, the target assembly is loaded into the current method with no parameter, the assembly is loaded with the evidence that the loader supplies. +- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. -- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. +- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. -- When you use a method overload with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. +- When you use a method overload with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. -- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. +- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. > [!NOTE] > If both the property and the property are set, the first attempt to load the assembly uses the display name (including version, culture, and so on, as returned by the property). If the file is not found, is used to search for the assembly. If the assembly is found using , the display name is matched against the assembly. If the match fails, a is thrown. @@ -4456,13 +4456,13 @@ In .NET Core/5+, the target assembly is loaded into the current method with no parameter, the assembly is loaded with the evidence that the loader supplies. +- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. -- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. +- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. -- When you use a method overload with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. +- When you use a method overload with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is inherited from the calling assembly. -- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. +- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used. @@ -4544,13 +4544,13 @@ The assembly is loaded using the supplied evidence. The raw bytes representing t Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows: -- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. +- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. -- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. +- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. -- When you use a method overload with a `Byte[]` parameter to load a COFF image, evidence is inherited from the calling assembly. +- When you use a method overload with a `Byte[]` parameter to load a COFF image, evidence is inherited from the calling assembly. -- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image are ignored. +- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image are ignored. If you call the method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used. @@ -4878,31 +4878,31 @@ The assembly is loaded into the default AssemblyLoadContext. For more informatio **.NET Framework only:** Assemblies can be loaded into one of three contexts, or can be loaded without context: -- The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. +- The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. -- The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. It also allows dependencies on that path to be found and loaded because the path information is maintained by the context. , , and are examples of methods that load by path. +- The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. It also allows dependencies on that path to be found and loaded because the path information is maintained by the context. , , and are examples of methods that load by path. See [``](/dotnet/framework/configure-apps/file-schema/runtime/loadfromremotesources-element) for loading assemblies from remote locations. -- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. +- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. -- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. +- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. The method has the following disadvantages. Consider using instead. -- If an assembly with the same identity is already loaded in the load-from context, returns the loaded assembly even if a different path was specified. +- If an assembly with the same identity is already loaded in the load-from context, returns the loaded assembly even if a different path was specified. -- An assembly can be loaded in the load-from context even though an assembly with the same identity exists in the load context. Interoperability between the two assemblies will not work, leading to errors such as , , or other unexpected behavior. +- An assembly can be loaded in the load-from context even though an assembly with the same identity exists in the load context. Interoperability between the two assemblies will not work, leading to errors such as , , or other unexpected behavior. -- Calling with a location that's in the probing path will load the assembly in the load context and not in the load-from context. +- Calling with a location that's in the probing path will load the assembly in the load context and not in the load-from context. -- If an assembly file whose identity is goverened by a binding redirect policy is passed to , the policy will be applied and the assembly will be loaded from the probing path in the load context. +- If an assembly file whose identity is goverened by a binding redirect policy is passed to , the policy will be applied and the assembly will be loaded from the probing path in the load context. -- If an assembly is loaded in the load-from context, and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. +- If an assembly is loaded in the load-from context, and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. - demands and , or , on the specified path. -- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain neutral. +- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain neutral. @@ -4989,41 +4989,41 @@ The assembly is loaded into the default AssemblyLoadContext. For more informatio Assemblies can be loaded into one of three contexts, or can be loaded without context: -- The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. +- The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. -- The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. , , and are examples of methods that load by path. +- The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. , , and are examples of methods that load by path. See [``](/dotnet/framework/configure-apps/file-schema/runtime/loadfromremotesources-element) for loading assemblies from remote locations. -- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. +- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. -- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. +- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. The load-from context allows an assembly to be loaded from a path not included in probing, and yet allows dependencies on that path to be found and loaded because the path information is maintained by the context. The method has the following disadvantages. Consider using instead. -- If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified. +- If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified. -- If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. +- If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. -- If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur. +- If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur. - demands and , or , on the specified path. -- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain neutral. +- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain neutral. Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows: -- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. +- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. -- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. +- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. -- If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used. +- If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used. -- When you use a method with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is combined. `Zone`, `Url` and `Site` are inherited from the calling assembly, and `Hash` and `StrongName` are taken from the COFF assembly. +- When you use a method with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is combined. `Zone`, `Url` and `Site` are inherited from the calling assembly, and `Hash` and `StrongName` are taken from the COFF assembly. -- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. +- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. ]]> @@ -5134,29 +5134,29 @@ The assembly is loaded into the default AssemblyLoadContext. For more informatio Assemblies can be loaded into one of three contexts, or can be loaded without context: -- The load context contains assemblies found by probing: in the global assembly cache, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. +- The load context contains assemblies found by probing: in the global assembly cache, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. -- The load-from context contains assemblies for which the user provided a path that is not included in probing. , , and are examples of methods that load by path. +- The load-from context contains assemblies for which the user provided a path that is not included in probing. , , and are examples of methods that load by path. See [``](/dotnet/framework/configure-apps/file-schema/runtime/loadfromremotesources-element) for loading assemblies from remote locations. -- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. +- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. -- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. +- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. The load-from context allows an assembly to be loaded from a path that is not included in probing, and yet allows dependencies on that path to be found and loaded because the path information is maintained by the context. The method has the following disadvantages. Consider using instead. -- If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified. +- If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified. -- If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. +- If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. -- If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur. +- If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur. - demands and , or , on the specified path. -- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain-neutral. +- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain-neutral. The assembly is loaded with the evidence that the loader supplies. @@ -5242,41 +5242,41 @@ The assembly is loaded into the default AssemblyLoadContext. For more informatio Assemblies can be loaded into one of three contexts, or can be loaded without context: -- The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. +- The load context contains assemblies found by probing: in the GAC, in a host assembly store if the runtime is hosted, or in the and of the application domain. Most overloads of the method load assemblies into this context. -- The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. , , and are examples of methods that load by path. +- The load-from context contains assemblies for which the user provided a path not included in the directories searched by probing. , , and are examples of methods that load by path. See [``](/dotnet/framework/configure-apps/file-schema/runtime/loadfromremotesources-element) for loading assemblies from remote locations. -- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. +- The reflection-only context contains assemblies loaded with the and methods; code in these contexts cannot be executed. -- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. +- If the user generated or found the assembly, it is not in any context. This applies to assemblies loaded using overloads of the method that specify a byte array containing an assembly, and to transient dynamic assemblies created with reflection emit and not saved to disk. The load-from context allows an assembly to be loaded from a path not included in probing, and yet allows dependencies on that path to be found and loaded because the path information is maintained by the context. The method has the following disadvantages. Consider using instead. -- If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified. +- If an assembly with the same identity is already loaded, returns the loaded assembly even if a different path was specified. -- If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. +- If an assembly is loaded with , and later an assembly in the load context attempts to load the same assembly by display name, the load attempt fails. This can occur when an assembly is deserialized. -- If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur. +- If an assembly is loaded with , and the probing path includes an assembly with the same identity but a different location, an , , or other unexpected behavior can occur. - demands and , or , on the specified path. -- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain neutral. +- If a native image exists for `assemblyFile`, it is not used. The assembly cannot be loaded as domain neutral. Whether certain permissions are granted or not granted to an assembly is based on evidence. The rules for assembly and security evidence merging are as follows: -- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. +- When you use a method with no parameter, the assembly is loaded with the evidence that the loader supplies. -- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. +- When you use a method with an parameter, pieces of evidence are merged. Pieces of evidence supplied as an argument to the method supersede pieces of evidence supplied by the loader. -- If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used. +- If you call this method more than once on the same assembly but with a different evidence specified, the common language runtime does not throw a because the equality and integrity of the different evidence specifications cannot be determined. The evidence that first succeeds is the evidence that is used. -- When you use a method with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is combined. `Zone`, `Url` and `Site` are inherited from the calling assembly, and `Hash` and `StrongName` are taken from the COFF assembly. +- When you use a method with a `Byte[]` parameter to load a common object file format (COFF) image, evidence is combined. `Zone`, `Url` and `Site` are inherited from the calling assembly, and `Hash` and `StrongName` are taken from the COFF assembly. -- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. +- When you use a method with a `Byte[]` parameter and to load a COFF image, only the supplied evidence is used. Evidence of the calling assembly and evidence of the COFF image is ignored. ]]> diff --git a/xml/System.Reflection/CustomAttributeData.xml b/xml/System.Reflection/CustomAttributeData.xml index 47432f3ca56..3a7bf8e5bc6 100644 --- a/xml/System.Reflection/CustomAttributeData.xml +++ b/xml/System.Reflection/CustomAttributeData.xml @@ -96,9 +96,9 @@ can be used in the execution context as well as in the reflection-only context. For example, you might want to avoid loading the assembly that contains the code for a custom attribute. Using the class is different from using methods like : -- The properties and methods of only provide you with the values that were specified for the attribute instance, not the semantics of the constructor. For example, a string argument of an attribute might be converted internally to some other representation, and returned in a canonical form; or a property might have side effects when the actual attribute code is executed. +- The properties and methods of only provide you with the values that were specified for the attribute instance, not the semantics of the constructor. For example, a string argument of an attribute might be converted internally to some other representation, and returned in a canonical form; or a property might have side effects when the actual attribute code is executed. -- The properties and methods of do not allow you to retrieve the custom attributes inherited from base classes. +- The properties and methods of do not allow you to retrieve the custom attributes inherited from base classes. To create instances of the class, use the `static` (`Shared` in Visual Basic) factory methods. diff --git a/xml/System.Reflection/EventInfo.xml b/xml/System.Reflection/EventInfo.xml index 64ad881a4e2..d028a49d707 100644 --- a/xml/System.Reflection/EventInfo.xml +++ b/xml/System.Reflection/EventInfo.xml @@ -761,13 +761,13 @@ add_( handler) ## Remarks The metadata for an event can associate four kinds of methods with the event: -- The `.addon` directive specifies the method used to add event handlers. Use the method to retrieve an for that method. +- The `.addon` directive specifies the method used to add event handlers. Use the method to retrieve an for that method. -- The `.removeon` directive specifies the method used to detach event handlers. Use the method to retrieve an for that method. +- The `.removeon` directive specifies the method used to detach event handlers. Use the method to retrieve an for that method. -- The `.fire` directive specifies the method used to raise the event. Use the method to retrieve an for that method. +- The `.fire` directive specifies the method used to raise the event. Use the method to retrieve an for that method. -- The `.other` directive specifies any other methods associated with the event. Use the method to retrieve an array of objects for those methods. +- The `.other` directive specifies any other methods associated with the event. Use the method to retrieve an array of objects for those methods. The methods associated with an event using the `.other` directive have no special significance to the runtime. The C# and Visual Basic compilers do not use the `.other` directive. @@ -826,13 +826,13 @@ add_( handler) ## Remarks The metadata for an event can associate four kinds of methods with the event: -- The `.addon` directive specifies the method used to add event handlers. Use the method to retrieve an for that method. +- The `.addon` directive specifies the method used to add event handlers. Use the method to retrieve an for that method. -- The `.removeon` directive specifies the method used to detach event handlers. Use the method to retrieve an for this method. +- The `.removeon` directive specifies the method used to detach event handlers. Use the method to retrieve an for this method. -- The `.fire` directive specifies the method used to raise the event. Use the method to retrieve an for this method. +- The `.fire` directive specifies the method used to raise the event. Use the method to retrieve an for this method. -- The `.other` directive specifies any other methods associated with the event. Use the method to retrieve an array of objects for those methods. +- The `.other` directive specifies any other methods associated with the event. Use the method to retrieve an array of objects for those methods. The methods associated with an event using the `.other` directive have no special significance to the runtime. The C# and Visual Basic compilers do not use the `.other` directive. diff --git a/xml/System.Reflection/FieldInfo.xml b/xml/System.Reflection/FieldInfo.xml index b5fcf6a1b59..89bb31e3d86 100644 --- a/xml/System.Reflection/FieldInfo.xml +++ b/xml/System.Reflection/FieldInfo.xml @@ -571,13 +571,13 @@ ## Examples The following example shows how to retrieve objects for fields on constructed generic classes. The example defines the generic type `Test` (`Test(Of T)` in Visual Basic) with a single field named `TestField`, of type `T`. The example gets the and for the case where `T` is , and demonstrates the following: -- An exception is thrown if the method overload is used. This is true even if the field is not of type `T`. +- An exception is thrown if the method overload is used. This is true even if the field is not of type `T`. -- A is retrieved successfully if the runtime type handle is from the same construction as the runtime field handle, in this case `Test`. +- A is retrieved successfully if the runtime type handle is from the same construction as the runtime field handle, in this case `Test`. -- If the runtime type handle is from a compatible construction, in this case `Test`, a for the field on the compatible construction is retrieved. +- If the runtime type handle is from a compatible construction, in this case `Test`, a for the field on the compatible construction is retrieved. -- If the runtime type handle is not from a compatible construction, an exception is thrown. In this case, a value type is specified for `T`. +- If the runtime type handle is not from a compatible construction, an exception is thrown. In this case, a value type is specified for `T`. :::code language="csharp" source="~/snippets/csharp/System.Reflection/FieldInfo/GetFieldFromHandle/source.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/FieldInfo_GetFieldFromHandle2/vb/source.vb" id="Snippet1"::: diff --git a/xml/System.Reflection/MemberInfo.xml b/xml/System.Reflection/MemberInfo.xml index 76e1a0aa231..8ad4f29b065 100644 --- a/xml/System.Reflection/MemberInfo.xml +++ b/xml/System.Reflection/MemberInfo.xml @@ -276,9 +276,9 @@ ## Remarks The property retrieves a reference to the object for the type that declares this member. A member of a type is either declared by the type or inherited from a base type, so the `Type` object returned by the property might not be the same as the `Type` object used to obtain the current object. -- If the `Type` object from which this `MemberInfo` object was obtained did not declare this member, the property will represent one of its base types. +- If the `Type` object from which this `MemberInfo` object was obtained did not declare this member, the property will represent one of its base types. -- If the `MemberInfo` object is a global member (that is, if it was obtained from the method, which returns global methods on a module), the returned will be `null`. +- If the `MemberInfo` object is a global member (that is, if it was obtained from the method, which returns global methods on a module), the returned will be `null`. diff --git a/xml/System.Reflection/MethodBase.xml b/xml/System.Reflection/MethodBase.xml index 07beb9307dd..0858f66d8b4 100644 --- a/xml/System.Reflection/MethodBase.xml +++ b/xml/System.Reflection/MethodBase.xml @@ -535,11 +535,11 @@ ## Remarks The elements of the returned array are in the order in which they appear in the list of type parameters for the generic method. -- If the current method is a closed constructed method (that is, the property returns `false`), the array returned by the method contains the types that have been assigned to the generic type parameters of the generic method definition. +- If the current method is a closed constructed method (that is, the property returns `false`), the array returned by the method contains the types that have been assigned to the generic type parameters of the generic method definition. -- If the current method is a generic method definition, the array contains the type parameters. +- If the current method is a generic method definition, the array contains the type parameters. -- If the current method is an open constructed method (that is, the property returns `true`) in which specific types have been assigned to some type parameters and type parameters of enclosing generic types have been assigned to other type parameters, the array contains both types and type parameters. Use the property to tell them apart. For a demonstration of this scenario, see the code example provided for the property. +- If the current method is an open constructed method (that is, the property returns `true`) in which specific types have been assigned to some type parameters and type parameters of enclosing generic types have been assigned to other type parameters, the array contains both types and type parameters. Use the property to tell them apart. For a demonstration of this scenario, see the code example provided for the property. Generic constructors are not supported in the .NET Framework version 2.0. This property throws if not overridden in a derived class, so an exception is thrown if the current instance is of type . @@ -1890,9 +1890,9 @@ The following table summarizes the invariant conditions for terms specific to ge ## Remarks If the current represents a generic method definition, then: -- The property is `true`. +- The property is `true`. -- For each object in the array returned by the method: +- For each object in the array returned by the method: - The property is `true`. diff --git a/xml/System.Reflection/Module.xml b/xml/System.Reflection/Module.xml index 4a16980ccf2..7e6f49f7ea2 100644 --- a/xml/System.Reflection/Module.xml +++ b/xml/System.Reflection/Module.xml @@ -3082,17 +3082,17 @@ The code example defines two generic types, `G1` and `G2` (`G1(Of Tg1)` and `G2(Of Tg2)` in Visual Basic), each of which has a generic method. `G1` also has a non-generic method that uses the type parameter `Tg1` for its parameter. The generic method `GM2` in type `G2` contains several method calls: -- Case 1: The generic method `GM1` is called, using the type parameters of `G2` and `GM2` as the type arguments. In other words, the parameter types of the called method will depend on the types that are used to construct a closed generic type from the type definition for `G2`. +- Case 1: The generic method `GM1` is called, using the type parameters of `G2` and `GM2` as the type arguments. In other words, the parameter types of the called method will depend on the types that are used to construct a closed generic type from the type definition for `G2`. -- Case 2: The non-generic method `M1` is called. The parameter of this method uses the type parameter of the defining type, `G1`, which is replaced in this case by the type parameter of the enclosing type, `G2`. +- Case 2: The non-generic method `M1` is called. The parameter of this method uses the type parameter of the defining type, `G1`, which is replaced in this case by the type parameter of the enclosing type, `G2`. -- Case 3: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. This method call does not depend on the type parameters of the enclosing type or method. +- Case 3: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. This method call does not depend on the type parameters of the enclosing type or method. -- Case 4: The non-generic method `M1` of the `Example` class is called. This method call does not depend on the type parameters of the enclosing type or method. +- Case 4: The non-generic method `M1` of the `Example` class is called. This method call does not depend on the type parameters of the enclosing type or method. In addition, the example defines the non-generic `Example` class. This class has a method `M` that makes a call to a generic method: -- Case 5: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. The context for this method has no enclosing generic type or generic method. +- Case 5: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. The context for this method has no enclosing generic type or generic method. For each case, the example first constructs a that represents the called method, and then resolves the token using the method overload, using the and methods to get the values for the `genericTypeArguments` and `genericMethodArguments` parameters. This technique works in all cases, because the methods return for non-generic contexts. The example compares the resolved with the constructed . @@ -3205,17 +3205,17 @@ The code example defines two generic types, `G1` and `G2`, each of which has a generic method. `G1` also has a non-generic method that uses the type parameter `Tg1` for its parameter. The generic method `GM2` in type `G2` contains several method calls: -- Case 1: The generic method `GM1` is called, using the type parameters of `G2` and `GM2` as the type arguments. In other words, the parameter types of the called method will depend on the types that are used to construct a closed generic type from the type definition for `G2`. +- Case 1: The generic method `GM1` is called, using the type parameters of `G2` and `GM2` as the type arguments. In other words, the parameter types of the called method will depend on the types that are used to construct a closed generic type from the type definition for `G2`. -- Case 2: The non-generic method `M1` is called. The parameter of this method uses the type parameter of the defining type, `G1`, which is replaced in this case by the type parameter of the enclosing type, `G2`. +- Case 2: The non-generic method `M1` is called. The parameter of this method uses the type parameter of the defining type, `G1`, which is replaced in this case by the type parameter of the enclosing type, `G2`. -- Case 3: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. This method call does not depend on the type parameters of the enclosing type or method. +- Case 3: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. This method call does not depend on the type parameters of the enclosing type or method. -- Case 4: The non-generic method `M1` of the `Example` class is called. This method call does not depend on the type parameters of the enclosing type or method. +- Case 4: The non-generic method `M1` of the `Example` class is called. This method call does not depend on the type parameters of the enclosing type or method. In addition, the example defines the non-generic `Example` class. This class has a method `M` that makes a call to a generic method. -- Case 5: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. The context for this method has no enclosing generic type or generic method. +- Case 5: The generic method `GM1` is called, specifying and for the type arguments of the generic type and the generic method, respectively. The context for this method has no enclosing generic type or generic method. For each case, the example first constructs a that represents the called method, and then resolves the token using the method overload, using the and methods to get the values for the `genericTypeArguments` and `genericMethodArguments` parameters. This technique works in all cases, because the methods return for non-generic contexts. The example compares the resolved with the constructed . diff --git a/xml/System.Reflection/ParameterInfo.xml b/xml/System.Reflection/ParameterInfo.xml index 39c7c394ee6..704b303f4cd 100644 --- a/xml/System.Reflection/ParameterInfo.xml +++ b/xml/System.Reflection/ParameterInfo.xml @@ -1119,11 +1119,11 @@ The example contains a `DefineMethod` method that does the following: -- Creates a dynamic assembly containing a `MyType` type. +- Creates a dynamic assembly containing a `MyType` type. -- Adds a `MyMethod` method to `MyType`. `MyMethod` has three parameters. The first parameter is defined with , the second with , and the third with . +- Adds a `MyMethod` method to `MyType`. `MyMethod` has three parameters. The first parameter is defined with , the second with , and the third with . -- Calls to complete the type. +- Calls to complete the type. After executing `DefineMethod`, the example searches the assemblies that are currently loaded until it finds the dynamic assembly. It loads `MyType` from the assembly, gets a object for the `MyMethod` method, and examines the parameters. The example uses the , , and properties to display information about the parameters. @@ -1252,11 +1252,11 @@ The example contains a `DefineMethod` method that does the following: -- Creates a dynamic assembly containing a `MyType` type. +- Creates a dynamic assembly containing a `MyType` type. -- Adds a `MyMethod` method to `MyType`. `MyMethod` has three parameters. The first parameter is defined with , the second with , and the third with . +- Adds a `MyMethod` method to `MyType`. `MyMethod` has three parameters. The first parameter is defined with , the second with , and the third with . -- Calls to complete the type. +- Calls to complete the type. After executing `DefineMethod`, the example searches the assemblies that are currently loaded until it finds the dynamic assembly. It loads `MyType` from the assembly, gets a object for the `MyMethod` method, and examines the parameters. The example uses the , , and properties to display information about the parameters. @@ -1329,11 +1329,11 @@ The example contains a `DefineMethod` method that does the following: -- Creates a dynamic assembly containing a `MyType` type. +- Creates a dynamic assembly containing a `MyType` type. -- Adds a `MyMethod` method to `MyType`. `MyMethod` has three parameters. The first parameter is defined with , the second with , and the third with . +- Adds a `MyMethod` method to `MyType`. `MyMethod` has three parameters. The first parameter is defined with , the second with , and the third with . -- Calls to complete the type. +- Calls to complete the type. After executing `DefineMethod`, the example searches the assemblies that are currently loaded until it finds the dynamic assembly. It loads `MyType` from the assembly, gets a object for the `MyMethod` method, and examines the parameters. The example uses the , , and properties to display information about the parameters. diff --git a/xml/System.Reflection/TypeDelegator.xml b/xml/System.Reflection/TypeDelegator.xml index 88f1d9b1920..2ab6372725d 100644 --- a/xml/System.Reflection/TypeDelegator.xml +++ b/xml/System.Reflection/TypeDelegator.xml @@ -65,24 +65,24 @@ Wraps a object and delegates methods to that . - . - - derives from and implements most of the properties and methods of . For each member it implements, automatically delegates to the corresponding member of an internal object, which is supplied as an argument to the constructor. This internal object is exposed to deriving classes by the `protected` field. - + . + + derives from and implements most of the properties and methods of . For each member it implements, automatically delegates to the corresponding member of an internal object, which is supplied as an argument to the constructor. This internal object is exposed to deriving classes by the `protected` field. + > [!NOTE] -> Some members of have implementations even though the members themselves are simply inherited from . In these cases, the implementation is provided by an overridden `protected` method that has a name that ends in "Impl". For example, the implementation for all overloads of the method is supplied by the overridden method. The implementation for inherited properties such as and is provided by the overridden method. - - Deriving classes can provide a public constructor that takes a object as its parameter and simply passes that object to the constructor, or can set the internal object in some other way. - - If a deriving class uses a member that is not implemented by , it must override that member and provide an implementation. The simplest implementation is to call the corresponding member on the internal object exposed by the field, but you can provide any implementation your application requires. It is not necessary to override these members if they are not used by your application or by library functions your application calls (for example, by the constructor). - - The following virtual methods (`Overridable` methods in Visual Basic) of are not implemented by : , , , , , , , , , , , , . - - The following virtual properties (`Overridable` properties in Visual Basic) of are not implemented by : , , , , , , , , , . - +> Some members of have implementations even though the members themselves are simply inherited from . In these cases, the implementation is provided by an overridden `protected` method that has a name that ends in "Impl". For example, the implementation for all overloads of the method is supplied by the overridden method. The implementation for inherited properties such as and is provided by the overridden method. + + Deriving classes can provide a public constructor that takes a object as its parameter and simply passes that object to the constructor, or can set the internal object in some other way. + + If a deriving class uses a member that is not implemented by , it must override that member and provide an implementation. The simplest implementation is to call the corresponding member on the internal object exposed by the field, but you can provide any implementation your application requires. It is not necessary to override these members if they are not used by your application or by library functions your application calls (for example, by the constructor). + + The following virtual methods (`Overridable` methods in Visual Basic) of are not implemented by : , , , , , , , , , , , , . + + The following virtual properties (`Overridable` properties in Visual Basic) of are not implemented by : , , , , , , , , , . + ]]> @@ -192,11 +192,11 @@ The instance of the class that encapsulates the call to the method of an object. Initializes a new instance of the class specifying the encapsulating instance. - @@ -242,11 +242,11 @@ Gets the assembly of the implemented type. An object representing the assembly of the implemented type. - @@ -345,11 +345,11 @@ Gets the base type for the current type. The base type for a type. - class type is the ultimate base class of all the other types, it is the only type that does not have a base type. In this case, `null` is returned as the base type of the `Object` type. - + class type is the ultimate base class of all the other types, it is the only type that does not have a base type. In this case, `null` is returned as the base type of the `Object` type. + ]]> @@ -400,11 +400,11 @@ Gets the fully qualified name of the implemented type. A containing the type's fully qualified name. - @@ -449,11 +449,11 @@ Gets the attributes assigned to the . A object representing the implementation attribute flags. - @@ -524,11 +524,11 @@ Gets the constructor that implemented the . A object for the method that matches the specified criteria, or if a match cannot be found. - value of `Standard` is used. - + value of `Standard` is used. + ]]> @@ -589,11 +589,11 @@ Returns an array of objects representing constructors defined for the type wrapped by the current . An array of type containing the specified constructors defined for this class. If no constructors are defined, an empty array is returned. Depending on the value of a specified parameter, only public constructors or both public and non-public constructors will be returned. - @@ -805,11 +805,11 @@ Returns the specified event. An object representing the event declared or inherited by this type with the specified name. This method returns if no such event is found. - .`IgnoreCase`, the case of the `name` parameter is ignored. - + .`IgnoreCase`, the case of the `name` parameter is ignored. + ]]> The parameter is . @@ -982,11 +982,11 @@ Returns a object representing the field with the specified name. A object representing the field declared or inherited by this with the specified name. Returns if no such field is found. - .NonPublic to return all public and nonpublic fields. Use `BindingFlags.IgnoreCase` to ignore the case of the fields, as the search is case-sensitive by default. - + .NonPublic to return all public and nonpublic fields. Use `BindingFlags.IgnoreCase` to ignore the case of the fields, as the search is case-sensitive by default. + ]]> The parameter is . @@ -1041,13 +1041,13 @@ Returns an array of objects representing the data fields defined for the type wrapped by the current . An array of type containing the fields declared or inherited by the current . An empty array is returned if there are no matched fields. - method does not return fields in a particular order, such as alphabetical or declaration order. Your code must not depend on the order in which fields are returned, because that order can vary. - - Use a `bindingAttr` of .NonPublic to return all public and nonpublic fields. - + method does not return fields in a particular order, such as alphabetical or declaration order. Your code must not depend on the order in which fields are returned, because that order can vary. + + Use a `bindingAttr` of .NonPublic to return all public and nonpublic fields. + ]]> @@ -1268,11 +1268,11 @@ Returns an interface mapping for the specified interface type. An object representing the interface mapping for . - @@ -1383,11 +1383,11 @@ Returns members (properties, methods, constructors, fields, events, and nested types) specified by the given , , and . An array of type containing all the members of the current class and its base class meeting the specified criteria. - .NonPublic, all the members will be considered. If there are no matches, an empty array is returned. - + .NonPublic, all the members will be considered. If there are no matches, an empty array is returned. + ]]> The parameter is . @@ -1446,11 +1446,11 @@ Returns members specified by . An array of type containing all the members of the current class and its base classes that meet the filter. - .NonPublic, all the members will be considered. If there are no matches, an empty array is returned. - + .NonPublic, all the members will be considered. If there are no matches, an empty array is returned. + ]]> @@ -1572,11 +1572,11 @@ This method can be used to find a constructed generic member given a member from Searches for the specified method whose parameters match the specified argument types and modifiers, using the specified binding constraints and the specified calling convention. A object for the implementation method that matches the specified criteria, or if a match cannot be found. - is specified, a default `CallingConventions` value of `Standard` is used. - + is specified, a default `CallingConventions` value of `Standard` is used. + ]]> @@ -1913,11 +1913,11 @@ This method can be used to find a constructed generic member given a member from Gets the GUID (globally unique identifier) of the implemented type. A GUID. - @@ -2048,42 +2048,42 @@ This method can be used to find a constructed generic member given a member from Invokes the specified member. The method that is to be invoked must be accessible and provide the most specific match with the specified argument list, under the constraints of the specified binder and invocation attributes. An representing the return value of the invoked member. - method is responsible for selecting the method to be invoked. The default binder selects the most specific match. - + method is responsible for selecting the method to be invoked. The default binder selects the most specific match. + > [!NOTE] -> Access restrictions are ignored for fully trusted code. That is, private constructors, methods, fields, and properties can be accessed and invoked using reflection whenever the code is fully trusted. - - Currently, `InvokeMember` performs the Microsoft .NET Framework reflection semantics for every type of object. - - If the member specified by name is an array and the `BindingFlags.GetField` flag is set on `invokeAttr`, the `args` array specifies the elements whose values are to be returned. For example, the following call through `Type` object `t` returns the value of the first element of the string array MyArray, which is a member of the calling object: - - `String ret = (String) t.InvokeMember ("MyArray", BindingFlags.GetField, null, this, new Variant[]{0});` - - You can use `InvokeMember` to set one or more elements of a member array. All elements are set to the same value. The `args` array must be formatted as follows: - -``` -{index1, - index2,, value} -``` - - For example, to set the first member of MyArray from the previous example, the syntax is as follows: - -```csharp -t.InvokeMember ("MyArray", BindingFlags.SetField, null, this, new - Variant[]{0,"Updated"}); -``` - +> Access restrictions are ignored for fully trusted code. That is, private constructors, methods, fields, and properties can be accessed and invoked using reflection whenever the code is fully trusted. + + Currently, `InvokeMember` performs the Microsoft .NET Framework reflection semantics for every type of object. + + If the member specified by name is an array and the `BindingFlags.GetField` flag is set on `invokeAttr`, the `args` array specifies the elements whose values are to be returned. For example, the following call through `Type` object `t` returns the value of the first element of the string array MyArray, which is a member of the calling object: + + `String ret = (String) t.InvokeMember ("MyArray", BindingFlags.GetField, null, this, new Variant[]{0});` + + You can use `InvokeMember` to set one or more elements of a member array. All elements are set to the same value. The `args` array must be formatted as follows: + +``` +{index1, + index2,, value} +``` + + For example, to set the first member of MyArray from the previous example, the syntax is as follows: + +```csharp +t.InvokeMember ("MyArray", BindingFlags.SetField, null, this, new + Variant[]{0,"Updated"}); +``` + ]]> @@ -2809,11 +2809,11 @@ t.InvokeMember ("MyArray", BindingFlags.SetField, null, this, new Gets a value that identifies this entity in metadata. A value which, in combination with the module, uniquely identifies this entity in metadata. - @@ -2857,11 +2857,11 @@ t.InvokeMember ("MyArray", BindingFlags.SetField, null, this, new Gets the module that contains the implemented type. A object representing the module of the implemented type. - @@ -2905,11 +2905,11 @@ t.InvokeMember ("MyArray", BindingFlags.SetField, null, this, new Gets the name of the implemented type, with the path removed. A containing the type's non-qualified name. - . - + . + ]]> @@ -2960,11 +2960,11 @@ t.InvokeMember ("MyArray", BindingFlags.SetField, null, this, new Gets the namespace of the implemented type. A containing the type's namespace. - , the returned namespace is . - + , the returned namespace is . + ]]> @@ -3008,11 +3008,11 @@ t.InvokeMember ("MyArray", BindingFlags.SetField, null, this, new Gets a handle to the internal metadata representation of an implemented type. A object. - diff --git a/xml/System.Resources/ResXResourceReader.xml b/xml/System.Resources/ResXResourceReader.xml index 194719bfe4e..6528daee3d3 100644 --- a/xml/System.Resources/ResXResourceReader.xml +++ b/xml/System.Resources/ResXResourceReader.xml @@ -68,9 +68,9 @@ If is `true`, the items in the enumeration can be either: -- Named resources along with their data. In this case, the property is `null`. +- Named resources along with their data. In this case, the property is `null`. -- Named resources along with the name of the file that contains the resource data. In this case, the property returns a object that provides information about the resource, including its filename. If relative file names are used, you should always set the property to provide a reference point for the relative file path. +- Named resources along with the name of the file that contains the resource data. In this case, the property returns a object that provides information about the resource, including its filename. If relative file names are used, you should always set the property to provide a reference point for the relative file path. If you want to retrieve named resources from a .resx file rather than enumerating its resources, you can instantiate a object and call its `GetString` and `GetObject` methods. diff --git a/xml/System.Resources/ResourceReader.xml b/xml/System.Resources/ResourceReader.xml index ba681d3c935..f0b9662b585 100644 --- a/xml/System.Resources/ResourceReader.xml +++ b/xml/System.Resources/ResourceReader.xml @@ -604,7 +604,7 @@ Label11="Mobile Phone:" `resourceType` is a string that represents the data type of the resource. It can be any of the following values: -- The string representation of a `ResourceTypeCode` enumeration member that indicates the data type of the resource. `ResourceTypeCode` is a private enumeration that is used by .to indicate that a special binary format is used to store one of 19 common data types. These include the .NET Framework primitive data types (, , , , , , , , , , , , ), as well as , , and , In addition, the `ResourceTypeCode` enumeration includes the values shown in the following table. +- The string representation of a `ResourceTypeCode` enumeration member that indicates the data type of the resource. `ResourceTypeCode` is a private enumeration that is used by .to indicate that a special binary format is used to store one of 19 common data types. These include the .NET Framework primitive data types (, , , , , , , , , , , , ), as well as , , and , In addition, the `ResourceTypeCode` enumeration includes the values shown in the following table. |ResourceTypeCode value|Description| |----------------------------|-----------------| @@ -614,11 +614,11 @@ Label11="Mobile Phone:" Assuming that `resourceData` has not been corrupted, it can usually be converted from a byte array back to its original value by calling a or method. -- A string that contains the fully qualified name of the type whose serialized data is assigned to the `resourceData` argument (for example, `System.String`). In addition, for types that are not part of the .NET class library, the string includes the name, version, culture, and public key of the assembly that contains the type. For example, the following string indicates that the serialized data represents an instance of the `Person` type in the `Extensions` namespace, which is found in version 1.0 of an assembly named Utility that has no public key and no designated culture. +- A string that contains the fully qualified name of the type whose serialized data is assigned to the `resourceData` argument (for example, `System.String`). In addition, for types that are not part of the .NET class library, the string includes the name, version, culture, and public key of the assembly that contains the type. For example, the following string indicates that the serialized data represents an instance of the `Person` type in the `Extensions` namespace, which is found in version 1.0 of an assembly named Utility that has no public key and no designated culture. `Extensions.Person, Utility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null` -- The string used to describe the data type in the method call. +- The string used to describe the data type in the method call. ]]> diff --git a/xml/System.Resources/ResourceWriter.xml b/xml/System.Resources/ResourceWriter.xml index 9fa96e7f042..6e566dd1f06 100644 --- a/xml/System.Resources/ResourceWriter.xml +++ b/xml/System.Resources/ResourceWriter.xml @@ -699,7 +699,7 @@ `typeName` is a string that represents the data type of the resource. It can be any of the following values: -- The string representation of a `ResourceTypeCode` enumeration member that indicates the data type of the resource. `ResourceTypeCode` is a private enumeration that is used by [Resgen.exe](/dotnet/framework/tools/resgen-exe-resource-file-generator) to indicate that a special binary format is used to store one of 19 common data types. These include the .NET Framework primitive data types (, , , , , , , , , , , , ), as well as , , and . In addition, the `ResourceTypeCode` enumeration includes the values shown in the following table. +- The string representation of a `ResourceTypeCode` enumeration member that indicates the data type of the resource. `ResourceTypeCode` is a private enumeration that is used by [Resgen.exe](/dotnet/framework/tools/resgen-exe-resource-file-generator) to indicate that a special binary format is used to store one of 19 common data types. These include the .NET Framework primitive data types (, , , , , , , , , , , , ), as well as , , and . In addition, the `ResourceTypeCode` enumeration includes the values shown in the following table. |`ResourceTypeCode` value|Description| |------------------------------|-----------------| @@ -707,7 +707,7 @@ |`ResourceTypeCode.Null`|The data is a null reference.| |`ResourceTypeCode.Stream`|The data is stored in a stream.| -- A string that contains the fully qualified name of the type whose binary data is assigned to the `serializedData` argument (for example, `System.String`). In addition, for types that are not part of the .NET Framework class library, the string includes the name, version, culture, and public key of the assembly that contains the type. For example, the following string indicates that the serialized data represents an instance of the `Person` type in the `Extensions` namespace, which is found in version 1.0 of an assembly named Utility that has no public key and no designated culture. +- A string that contains the fully qualified name of the type whose binary data is assigned to the `serializedData` argument (for example, `System.String`). In addition, for types that are not part of the .NET Framework class library, the string includes the name, version, culture, and public key of the assembly that contains the type. For example, the following string indicates that the serialized data represents an instance of the `Person` type in the `Extensions` namespace, which is found in version 1.0 of an assembly named Utility that has no public key and no designated culture. `Extensions.Person, Utility, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null` diff --git a/xml/System.Runtime.Caching.Hosting/IMemoryCacheManager.xml b/xml/System.Runtime.Caching.Hosting/IMemoryCacheManager.xml index 1e856f88622..93efff8be55 100644 --- a/xml/System.Runtime.Caching.Hosting/IMemoryCacheManager.xml +++ b/xml/System.Runtime.Caching.Hosting/IMemoryCacheManager.xml @@ -20,13 +20,13 @@ Defines an interface that a cache uses in order to communicate cache memory usage to a host environment. - interface is implemented by host environments such as ASP.NET, and is consumed by implementations that must interact with the host environment to determine memory usage. Because caches often consume significant quantities of memory, the interface helps host environments manage memory usage. - - Typically, only implementations that manage cache objects in memory would use this interface. - + interface is implemented by host environments such as ASP.NET, and is consumed by implementations that must interact with the host environment to determine memory usage. Because caches often consume significant quantities of memory, the interface helps host environments manage memory usage. + + Typically, only implementations that manage cache objects in memory would use this interface. + ]]> @@ -54,11 +54,11 @@ A reference to the cache. Removes all references to a cache in the host environment. - method to release the reference. When a cache is being disposed, it should call the method to make sure that no reference to the cache is held on the host. - + method to release the reference. When a cache is being disposed, it should call the method to make sure that no reference to the cache is held on the host. + ]]> @@ -88,17 +88,17 @@ A reference to the cache. Reports the size of the current cache. - method to periodically report the size of the cache's memory footprint to the host environment. - - The cache implementation that reports the size also passes a reference to itself as a parameter. This enables the host environment to perform the following tasks: - -- Maintain a list of known object caches. - -- Call the cache and request that the cache trim a percentage of cache items based on the reported size, if it is required. - + method to periodically report the size of the cache's memory footprint to the host environment. + + The cache implementation that reports the size also passes a reference to itself as a parameter. This enables the host environment to perform the following tasks: + +- Maintain a list of known object caches. + +- Call the cache and request that the cache trim a percentage of cache items based on the reported size, if it is required. + ]]> diff --git a/xml/System.Runtime.Caching/ChangeMonitor.xml b/xml/System.Runtime.Caching/ChangeMonitor.xml index 25d55c3f075..5fe143b7419 100644 --- a/xml/System.Runtime.Caching/ChangeMonitor.xml +++ b/xml/System.Runtime.Caching/ChangeMonitor.xml @@ -53,23 +53,23 @@ If you create a custom cache implementation or a derived change monitor type, you must follow certain guidelines. The following list summarizes these guidelines. For more information, see the documentation for individual methods or properties. -- The constructor of a derived class must set the property, begin monitoring, and call method before the method returns. If a constructor encounters an error during constructions and must have to dispose of resources, the constructor can only call the overload after the method is called because the overload will throw an exception if initialization is not completed. +- The constructor of a derived class must set the property, begin monitoring, and call method before the method returns. If a constructor encounters an error during constructions and must have to dispose of resources, the constructor can only call the overload after the method is called because the overload will throw an exception if initialization is not completed. -- If changes occur in the data that is being monitored before initialization is complete, the constructor must call the method before calling the method. +- If changes occur in the data that is being monitored before initialization is complete, the constructor must call the method before calling the method. -- After a derived type is instantiated, you must insert the monitor into a custom implementation. Or if you are finished using the change monitor, call the method. +- After a derived type is instantiated, you must insert the monitor into a custom implementation. Or if you are finished using the change monitor, call the method. -- After a instance is inserted into a implementation, the instance require that the change monitor is disposed. Even if the insertion is invalid and causes an exception, the implementation must call the overload. +- After a instance is inserted into a implementation, the instance require that the change monitor is disposed. Even if the insertion is invalid and causes an exception, the implementation must call the overload. -- After a derived change monitor is inserted into a cache, the implementation must call , by passing a object. The method can be called only one time. If a dependency change has already occurred, the instance will be called immediately when is called. Otherwise, the instance will be called only one time. This one time call occurs either when the method is called because the instance detected a change, or when the method is called on the , whichever occurs first. +- After a derived change monitor is inserted into a cache, the implementation must call , by passing a object. The method can be called only one time. If a dependency change has already occurred, the instance will be called immediately when is called. Otherwise, the instance will be called only one time. This one time call occurs either when the method is called because the instance detected a change, or when the method is called on the , whichever occurs first. -- The instance that is provided by an implementation should remove the associated cache entry and specify a reason by using the enumeration. +- The instance that is provided by an implementation should remove the associated cache entry and specify a reason by using the enumeration. -- A instance can call the method either before a cache implementation has called method or after. If the method is called before is called, the base implementation will notify the cache that this has occurred and will trigger the callback to be passed to immediately when is invoked. Any state data that is passed to the method is saved by the change monitor and subsequently passed to the method when the method is invoked. +- A instance can call the method either before a cache implementation has called method or after. If the method is called before is called, the base implementation will notify the cache that this has occurred and will trigger the callback to be passed to immediately when is invoked. Any state data that is passed to the method is saved by the change monitor and subsequently passed to the method when the method is invoked. -- A change monitor must implement the method. For more information, see the method documentation. +- A change monitor must implement the method. For more information, see the method documentation. -- The method overload must be called to dispose of the instance. The rules for calling Dispose are as follows: +- The method overload must be called to dispose of the instance. The rules for calling Dispose are as follows: - Before an item is inserted into the cache, it is the responsibility of caller to dispose of a instance. @@ -77,7 +77,7 @@ - After an item and its associated instances are passed to a cache, the caller must not dispose the dependency because when the method is called, the call is treated as if the dependency has changed. As a result, the method is automatically invoked. -- Taking these rules into consideration, the method must be called in one of the following ways: +- Taking these rules into consideration, the method must be called in one of the following ways: - Users must call the method overload if they decide not to insert the derived change-monitor instance into a cache. @@ -91,7 +91,7 @@ Note: This automatic call to the dispose method during the event firing only occ When a derived change monitor's constructor calls the method, if the state of the change monitor has already changed (that is, the state that is monitored already changed when the constructor was still active) then the method will automatically dispose of the change monitor. -- The property is set to after the method is called by the derived change-monitor instance, regardless of whether a object has been set by a call to the method or not. +- The property is set to after the method is called by the derived change-monitor instance, regardless of whether a object has been set by a call to the method or not. @@ -173,13 +173,13 @@ Note: This automatic call to the dispose method during the event firing only occ The overload must be called to dispose of a instance. The following are the rules for calling the dispose method: -- Before an item is inserted into the cache, it is the caller's responsibility to dispose of a instance. +- Before an item is inserted into the cache, it is the caller's responsibility to dispose of a instance. -- Once cache item and the instances that are associated with it are passed to a cache, the cache implementer that must make sure that is called, even if the insert fails. +- Once cache item and the instances that are associated with it are passed to a cache, the cache implementer that must make sure that is called, even if the insert fails. -- After an item and its associated instances are passed to a cache, the caller must not dispose the dependency because when the method is called, the call is treated as if the dependency has changed. As a result, the method is automatically invoked. +- After an item and its associated instances are passed to a cache, the caller must not dispose the dependency because when the method is called, the call is treated as if the dependency has changed. As a result, the method is automatically invoked. -- Taking these rules into consideration, the method must be called in one of the following ways: +- Taking these rules into consideration, the method must be called in one of the following ways: - Users must call the method overload if they decide not to insert the derived change-monitor instance into a cache. diff --git a/xml/System.Runtime.Caching/HostFileChangeMonitor.xml b/xml/System.Runtime.Caching/HostFileChangeMonitor.xml index e63f1c909d0..53f83e78118 100644 --- a/xml/System.Runtime.Caching/HostFileChangeMonitor.xml +++ b/xml/System.Runtime.Caching/HostFileChangeMonitor.xml @@ -22,52 +22,52 @@ Monitors directories and file paths and notifies the cache of changes to the monitored items. This class cannot be inherited. - class is a concrete implementation of the type. This class is sealed, therefore it cannot be extended. This class is useful if you want to use an existing cache implementation and to monitor files and directories for changes. - - For each specified file or directory path, the class triggers a change notification if any of the following changes occur: - -- The name of the monitored file or directory changes. - -- The specified file or directory did not exist at the time the monitor was created, but was created later. In other words, a file or directory was created in the scope of the monitored items. - -- The size of a monitored file changed. - -- The contents of a monitored file changed, or the contents of a monitored directory changed. - -- The access control list (ACL) of the file or directory was changed. - -- The monitored file or directory was deleted. - - If too many changes occur for the monitored file or directory at the same time, the instance can lose track of specific changes. In this scenario, the class triggers a change notification. This scenario is more likely to occur when the instance monitors a directory, and many changes occur in the scope of the directory structure in a short period of time. - - Because the purpose of the class is only to signal that something has changed among the set of monitored files and directories, it is not considered important that details about a specific change are not captured. The purpose of the class is to provide notification that state changed so that a cache entry (or entries) can be evicted. Because the class does not indicate exactly what changed, internal-change tracking overflow is irrelevant. - - When you supply paths to a instance, the directory and file paths must be full paths to the directory or file. Relative paths and wildcard characters in paths are not allowed. - - When the class is used in an ASP.NET application, the Windows identity that is used for access to monitored items is the application identity for the ASP.NET application. In other words, the application identity will be one of the following: - -- The process identity. - -- The configured application identity. - -- The UNC credential if the application is running from a UNC share. - - When the class is used in a non-ASP.NET application, the class is used internally to monitor files. As a result, whatever access control list (ACL) applies to a monitored file or directory is applied to the Windows identity of the current thread. - + class is a concrete implementation of the type. This class is sealed, therefore it cannot be extended. This class is useful if you want to use an existing cache implementation and to monitor files and directories for changes. + + For each specified file or directory path, the class triggers a change notification if any of the following changes occur: + +- The name of the monitored file or directory changes. + +- The specified file or directory did not exist at the time the monitor was created, but was created later. In other words, a file or directory was created in the scope of the monitored items. + +- The size of a monitored file changed. + +- The contents of a monitored file changed, or the contents of a monitored directory changed. + +- The access control list (ACL) of the file or directory was changed. + +- The monitored file or directory was deleted. + + If too many changes occur for the monitored file or directory at the same time, the instance can lose track of specific changes. In this scenario, the class triggers a change notification. This scenario is more likely to occur when the instance monitors a directory, and many changes occur in the scope of the directory structure in a short period of time. + + Because the purpose of the class is only to signal that something has changed among the set of monitored files and directories, it is not considered important that details about a specific change are not captured. The purpose of the class is to provide notification that state changed so that a cache entry (or entries) can be evicted. Because the class does not indicate exactly what changed, internal-change tracking overflow is irrelevant. + + When you supply paths to a instance, the directory and file paths must be full paths to the directory or file. Relative paths and wildcard characters in paths are not allowed. + + When the class is used in an ASP.NET application, the Windows identity that is used for access to monitored items is the application identity for the ASP.NET application. In other words, the application identity will be one of the following: + +- The process identity. + +- The configured application identity. + +- The UNC credential if the application is running from a UNC share. + + When the class is used in a non-ASP.NET application, the class is used internally to monitor files. As a result, whatever access control list (ACL) applies to a monitored file or directory is applied to the Windows identity of the current thread. + > [!NOTE] -> Callers must have the appropriate level of code access security (CAS) permissions and must have NTFS permissions to all monitored directories and paths. - - - -## Examples - The following example creates a cache item that uses a object to monitor the state of the source data (which is a file) on the file system. The cache entry is defined using a object to provide eviction and expiration details for the cache entry. - +> Callers must have the appropriate level of code access security (CAS) permissions and must have NTFS permissions to all monitored directories and paths. + + + +## Examples + The following example creates a cache item that uses a object to monitor the state of the source data (which is a file) on the file system. The cache entry is defined using a object to provide eviction and expiration details for the cache entry. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/cachingaspnetapplications/cs/default.aspx.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/cachingaspnetapplications/vb/default.aspx.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/cachingaspnetapplications/vb/default.aspx.vb" id="Snippet1"::: + ]]> @@ -92,23 +92,23 @@ A list that contains one or more directory paths or file paths to monitor. Initializes a new instance of the class. - constructor must provide a non-null value for the `filePaths` parameter. At a minimum, the constructor validates the collection of paths that is passed into it and then initializes monitoring for those paths. - + constructor must provide a non-null value for the `filePaths` parameter. At a minimum, the constructor validates the collection of paths that is passed into it and then initializes monitoring for those paths. + > [!NOTE] -> The constructor performs only string validation of the path name. It does not canonicalize paths or validate that the paths exist. - +> The constructor performs only string validation of the path name. It does not canonicalize paths or validate that the paths exist. + ]]> is . - contains zero items. - - -or- - + contains zero items. + + -or- + A path in the list is or an empty string. @@ -191,11 +191,11 @@ Gets a read-only value that indicates the last write time of a monitored file or path. The last write time of a monitored file or path. - @@ -226,19 +226,19 @@ Gets an identifier for the instance that is based on the set of monitored directories and file paths. An identifier for the change monitor. - property value is constructed from the following parts: - -- A file or directory path. - -- The most recent write time in UTC time, measured as ticks but represented as a hexadecimal string. - -- The file size, represented as a hexadecimal string. - - If a file change monitor is monitoring multiple paths, the information returned by this property is concatenated into a single string for all the monitored directories and file paths. - + property value is constructed from the following parts: + +- A file or directory path. + +- The most recent write time in UTC time, measured as ticks but represented as a hexadecimal string. + +- The file size, represented as a hexadecimal string. + + If a file change monitor is monitoring multiple paths, the information returned by this property is concatenated into a single string for all the monitored directories and file paths. + ]]> diff --git a/xml/System.Runtime.Caching/MemoryCache.xml b/xml/System.Runtime.Caching/MemoryCache.xml index c15be27505a..b26d086723f 100644 --- a/xml/System.Runtime.Caching/MemoryCache.xml +++ b/xml/System.Runtime.Caching/MemoryCache.xml @@ -143,9 +143,9 @@ private void btnGet_Click(object sender, EventArgs e) The name value that is assigned to a cache instance is used in two ways: -- To help you keep track of multiple cache instances when more than one instance exists. +- To help you keep track of multiple cache instances when more than one instance exists. -- To reference settings in the configuration file when the instance is initialized. +- To reference settings in the configuration file when the instance is initialized. > [!NOTE] > There is no mechanism to enforce unique names for cache instances. Therefore, it is possible to have multiple cache instances with the same name. @@ -501,9 +501,9 @@ You can specify the settings for the method. In that case, the resulting instance is immediately set to a changed state. This means that when code subsequently binds a change-notification callback, the callback is triggered immediately. +- The key does not exist at the time of the call to the method. In that case, the resulting instance is immediately set to a changed state. This means that when code subsequently binds a change-notification callback, the callback is triggered immediately. -- The associated cache entry was removed from the cache. This can occur if the entry is explicitly removed, if it expires, or if it is evicted to recover memory +- The associated cache entry was removed from the cache. This can occur if the entry is explicitly removed, if it expires, or if it is evicted to recover memory ]]> @@ -1111,9 +1111,9 @@ You can specify the settings for the property is . An invalid combination of arguments for the cache entry was passed. This occurs if the following expiration details are set on the policy object for the cache entry: -- If both the absolute and sliding expiration values of the object are set to values other than the defaults of and fields. The class cannot set expiration policy based on both an absolute expiration and a sliding expiration. Only one expiration setting can be explicitly set when you use the class. The other setting must be set to or property. +- If both the absolute and sliding expiration values of the object are set to values other than the defaults of and fields. The class cannot set expiration policy based on both an absolute expiration and a sliding expiration. Only one expiration setting can be explicitly set when you use the class. The other setting must be set to or property. -- If both the removal callback and the update callback are specified for object. The class only supports using one type of callback per cache entry. +- If both the removal callback and the update callback are specified for object. The class only supports using one type of callback per cache entry. The property is set to a value less than . -or- @@ -1174,9 +1174,9 @@ You can specify the settings for the is . - An invalid combination of arguments for the cache entry was passed. This occurs if the following expiration details are set on the policy object for the cache entry: -- If both the absolute and sliding expiration values on object are set to values other than the defaults of and . This occurs because the class does not support expiring entries based on both an absolute and a sliding expiration. Only one expiration setting can be explicitly set when you use the class. The other setting must be set to or . +- If both the absolute and sliding expiration values on object are set to values other than the defaults of and . This occurs because the class does not support expiring entries based on both an absolute and a sliding expiration. Only one expiration setting can be explicitly set when you use the class. The other setting must be set to or . -- If both the removal callback and the update callback are specified on object. The class only supports using one type of callback per cache entry. +- If both the removal callback and the update callback are specified on object. The class only supports using one type of callback per cache entry. The property is set to a value less than . -or- @@ -1185,7 +1185,7 @@ You can specify the settings for the property is not a value of the enumeration. +- The property is not a value of the enumeration. @@ -1237,9 +1237,9 @@ You can specify the settings for the property is . - An invalid combination of arguments for the cache entry exists. This occurs if the following expiration details are set on the policy object for the cache entry: -- If both the absolute and sliding expiration values on object are set to values other than the defaults of and . This is because the class does not support expiring entries based on both an absolute and a sliding expiration. Only one expiration setting can be explicitly set when you use the class. The other setting must be set to or . +- If both the absolute and sliding expiration values on object are set to values other than the defaults of and . This is because the class does not support expiring entries based on both an absolute and a sliding expiration. Only one expiration setting can be explicitly set when you use the class. The other setting must be set to or . -- If both the removal callback and the update callback are specified on class. The class only supports using one type of callback per cache entry. +- If both the removal callback and the update callback are specified on class. The class only supports using one type of callback per cache entry. The property is set to a value less than . -or- diff --git a/xml/System.Runtime.CompilerServices/AsyncStateMachineAttribute.xml b/xml/System.Runtime.CompilerServices/AsyncStateMachineAttribute.xml index 2d7fbcd57fb..bf36cff2eef 100644 --- a/xml/System.Runtime.CompilerServices/AsyncStateMachineAttribute.xml +++ b/xml/System.Runtime.CompilerServices/AsyncStateMachineAttribute.xml @@ -73,11 +73,11 @@ ## Examples As the following example shows, you can determine whether a method is marked with [Async](/dotnet/visual-basic/language-reference/modifiers/async) or [async](/dotnet/csharp/language-reference/keywords/async) modifier. In the example, `IsAsyncMethod` performs the following steps: -- Obtains a object for the method name by using . +- Obtains a object for the method name by using . -- Obtains a object for the attribute by using [GetType Operator](/dotnet/visual-basic/language-reference/operators/gettype-operator) or [typeof](/dotnet/csharp/language-reference/keywords/typeof). +- Obtains a object for the attribute by using [GetType Operator](/dotnet/visual-basic/language-reference/operators/gettype-operator) or [typeof](/dotnet/csharp/language-reference/keywords/typeof). -- Obtains an attribute object for the method and attribute type by using `MethodInfo.GetCustomAttribute`. If `GetCustomAttribute` returns `Nothing` (Visual Basic) or `null` (C#), the method doesn't contain the attribute. +- Obtains an attribute object for the method and attribute type by using `MethodInfo.GetCustomAttribute`. If `GetCustomAttribute` returns `Nothing` (Visual Basic) or `null` (C#), the method doesn't contain the attribute. :::code language="csharp" source="~/snippets/csharp/System.Runtime.CompilerServices/AsyncStateMachineAttribute/Overview/program.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/runtime.compilerservices.asyncstatemachineattribute/vb/module1.vb" id="Snippet1"::: diff --git a/xml/System.Runtime.CompilerServices/CallerMemberNameAttribute.xml b/xml/System.Runtime.CompilerServices/CallerMemberNameAttribute.xml index ae88ca07b5c..ffe5a0ef33e 100644 --- a/xml/System.Runtime.CompilerServices/CallerMemberNameAttribute.xml +++ b/xml/System.Runtime.CompilerServices/CallerMemberNameAttribute.xml @@ -65,9 +65,9 @@ You can use the `CallerMemberName` attribute to avoid specifying the member name as a `String` argument to the called method. By using this technique, you avoid the problem that **Rename Refactoring** doesn't change the `String` values. This is especially useful for the following tasks: -- Using tracing and diagnostic routines. +- Using tracing and diagnostic routines. -- Implementing the interface when binding data. This interface allows the property of an object to notify a bound control that the property has changed, so that the control can display the updated information. Without the `CallerMemberName` attribute, you must specify the property name as a literal. +- Implementing the interface when binding data. This interface allows the property of an object to notify a bound control that the property has changed, so that the control can display the updated information. Without the `CallerMemberName` attribute, you must specify the property name as a literal. The following chart shows the member names that are returned when you use the `CallerMemberName` attribute. diff --git a/xml/System.Runtime.CompilerServices/ConditionalWeakTable`2.xml b/xml/System.Runtime.CompilerServices/ConditionalWeakTable`2.xml index 6f08324cdba..2197ad76607 100644 --- a/xml/System.Runtime.CompilerServices/ConditionalWeakTable`2.xml +++ b/xml/System.Runtime.CompilerServices/ConditionalWeakTable`2.xml @@ -105,34 +105,34 @@ The field's type. This must be a reference type. Enables compilers to dynamically attach object fields to managed objects. - class enables language compilers to attach arbitrary properties to managed objects at run time. A object is a dictionary that binds a managed object, which is represented by a key, to its attached property, which is represented by a value. The object's keys are the individual instances of the `TKey` class to which the property is attached, and its values are the property values that are assigned to the corresponding objects. - - Keys must be unique; in other words, the class supports one attached value per managed object. Two keys are equal if passing them to the method returns `true`. - + class enables language compilers to attach arbitrary properties to managed objects at run time. A object is a dictionary that binds a managed object, which is represented by a key, to its attached property, which is represented by a value. The object's keys are the individual instances of the `TKey` class to which the property is attached, and its values are the property values that are assigned to the corresponding objects. + + Keys must be unique; in other words, the class supports one attached value per managed object. Two keys are equal if passing them to the method returns `true`. + > [!NOTE] -> You cannot control equality comparisons by overriding to explicitly set the hash code for a key. The class does not use the method to compute hash codes, and therefore does not invoke overrides. - - Although the class holds a collection of key/value pairs, it is best thought of as a table rather than a dictionary object. The class differs from a dictionary in several ways: - -- It does not persist keys. That is, a key is not kept alive only because it is a member of the collection. - -- It does not include all the methods (such as `GetEnumerator` or `Contains`) that a dictionary typically has. - -- It does not implement the interface. - - The class differs from other collection objects in its management of the object lifetime of keys stored in the collection. Ordinarily, when an object is stored in a collection, its lifetime lasts until it is removed (and there are no additional references to the object) or until the collection object itself is destroyed. However, in the class, adding a key/value pair to the table does not ensure that the key will persist, even if it can be reached directly from a value stored in the table (for example, if the table contains one key, A, with a value V1, and a second key, B, with a value P2 that contains a reference to A). Instead, automatically removes the key/value entry as soon as no other references to a key exist outside the table. The example provides an illustration. - - - -## Examples - The following example illustrates that a key stored in the table does not persist after references to it outside the table are destroyed. The example defines two classes: `ManagedClass`, which represents the key in the table, and `ClassData`, which represents the key's value. The example instantiates three objects of each type. It also instantiates a object that represents the second `ManagedClass`, and then destroys the second `ManagedClass` instance. The attempt to retrieve the second `ManagedClass` object from the property indicates that no references to the object remain. - +> You cannot control equality comparisons by overriding to explicitly set the hash code for a key. The class does not use the method to compute hash codes, and therefore does not invoke overrides. + + Although the class holds a collection of key/value pairs, it is best thought of as a table rather than a dictionary object. The class differs from a dictionary in several ways: + +- It does not persist keys. That is, a key is not kept alive only because it is a member of the collection. + +- It does not include all the methods (such as `GetEnumerator` or `Contains`) that a dictionary typically has. + +- It does not implement the interface. + + The class differs from other collection objects in its management of the object lifetime of keys stored in the collection. Ordinarily, when an object is stored in a collection, its lifetime lasts until it is removed (and there are no additional references to the object) or until the collection object itself is destroyed. However, in the class, adding a key/value pair to the table does not ensure that the key will persist, even if it can be reached directly from a value stored in the table (for example, if the table contains one key, A, with a value V1, and a second key, B, with a value P2 that contains a reference to A). Instead, automatically removes the key/value entry as soon as no other references to a key exist outside the table. The example provides an illustration. + + + +## Examples + The following example illustrates that a key stored in the table does not persist after references to it outside the table are destroyed. The example defines two classes: `ManagedClass`, which represents the key in the table, and `ClassData`, which represents the key's value. The example instantiates three objects of each type. It also instantiates a object that represents the second `ManagedClass`, and then destroys the second `ManagedClass` instance. The attempt to retrieve the second `ManagedClass` object from the property indicates that no references to the object remain. + :::code language="csharp" source="~/snippets/csharp/System.Runtime.CompilerServices/ConditionalWeakTableTKey,TValue/Overview/example1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.class/vb/example1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.class/vb/example1.vb" id="Snippet1"::: + ]]> Instances of the class are thread safe. They do not require callers to do any additional locking. @@ -182,13 +182,13 @@ Initializes a new instance of the class. - constructor instantiates an empty table; that is, the table contains no key/value pairs. You can add key/value pairs by calling the , , or method. - - Every key in a object must be unique. Keys are not unique if they refer to the same object (that is, if passing them as arguments to the method returns `true`). - + constructor instantiates an empty table; that is, the table contains no key/value pairs. You can add key/value pairs by calling the , , or method. + + Every key in a object must be unique. Keys are not unique if they refer to the same object (that is, if passing them as arguments to the method returns `true`). + ]]> @@ -246,21 +246,21 @@ The key's property value. Adds a key to the table. - object must be unique. Keys are not unique if they refer to the same object (that is, if passing them as arguments to the method returns `true`). - - If the key is garbage-collected during the addition operation, the existing key/value pair is removed and the new key/value pair is added without an exception being thrown. - - - -## Examples - The following example defines a `MainClass` class and a `MainInfo` class, which provides information about the `MainClass` instance. The example then calls the method to add a `MainClass` object and its attached `MainInfo` object to a table. The example also illustrates calls to the and methods to add key/value pairs to the table, and to the method to retrieve the value of an existing key. - + object must be unique. Keys are not unique if they refer to the same object (that is, if passing them as arguments to the method returns `true`). + + If the key is garbage-collected during the addition operation, the existing key/value pair is removed and the new key/value pair is added without an exception being thrown. + + + +## Examples + The following example defines a `MainClass` class and a `MainInfo` class, which provides information about the `MainClass` instance. The example then calls the method to add a `MainClass` object and its attached `MainInfo` object to a table. The example also illustrates calls to the and methods to add key/value pairs to the table, and to the method to retrieve the value of an existing key. + :::code language="csharp" source="~/snippets/csharp/System.Runtime.CompilerServices/ConditionalWeakTableTKey,TValue+CreateValueCallback/Overview/getvalue1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: + ]]> @@ -394,11 +394,11 @@ Ensures that resources are freed and other cleanup operations are performed when the garbage collector reclaims the object. - when the current object is ready to be finalized. - + when the current object is ready to be finalized. + ]]> @@ -580,23 +580,23 @@ Atomically searches for a specified key in the table and returns the corresponding value. If the key does not exist in the table, the method invokes the parameterless constructor of the class that represents the table's value to create a value that is bound to the specified key. The value that corresponds to , if already exists in the table; otherwise, a new value created by the parameterless constructor of the class defined by the generic type parameter. - is thrown. - - This is the recommended method of retrieving an existing value or adding a new value to the table if the class of the table's value defines a parameterless constructor. If it does not define a parameterless constructor, you can instead call the method, which relies on a callback-provided method to instantiate the object representing the table's value - - To retrieve the value of an existing key without adding the key/value pair if the key is not found in the table, call the method. - - - -## Examples - The following example defines a `MainClass` class and a `MainInfo` class, which provides information about the `MainClass` instance. The example calls the method to add a `MainClass` object and its attached `MainInfo` object to a table. The example also illustrates calls to the and methods to add key/value pairs to the table, and to the method to retrieve the value of an existing key. - + is thrown. + + This is the recommended method of retrieving an existing value or adding a new value to the table if the class of the table's value defines a parameterless constructor. If it does not define a parameterless constructor, you can instead call the method, which relies on a callback-provided method to instantiate the object representing the table's value + + To retrieve the value of an existing key without adding the key/value pair if the key is not found in the table, call the method. + + + +## Examples + The following example defines a `MainClass` class and a `MainInfo` class, which provides information about the `MainClass` instance. The example calls the method to add a `MainClass` object and its attached `MainInfo` object to a table. The example also illustrates calls to the and methods to add key/value pairs to the table, and to the method to retrieve the value of an existing key. + :::code language="csharp" source="~/snippets/csharp/System.Runtime.CompilerServices/ConditionalWeakTableTKey,TValue+CreateValueCallback/Overview/getvalue1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: + ]]> @@ -666,23 +666,23 @@ Note: In the .NET for Atomically searches for a specified key in the table and returns the corresponding value. If the key does not exist in the table, the method invokes a callback method to create a value that is bound to the specified key. The value attached to , if already exists in the table; otherwise, the new value returned by the delegate. - invokes the method that is defined by the `createValueCallback` parameter and passes it the key. A new value is bound to the key in the table and returned as a result. - - Use this method only when the class that represents the table's value does not define a parameterless constructor. If it does define a parameterless constructor, use the method instead. To retrieve the value of an existing key without adding the key/value pair if the key is not found in the table, call the method. - - If multiple threads try to create the same key, `createValueCallback` may be invoked multiple times with the same key. Only one of these calls will succeed, and its returned value will be added to the table. Which thread succeeds in creating the value is indeterminate. This rule permits the table to invoke `createValueCallback` outside the internal table lock to prevent deadlocks. - - - -## Examples - The following example defines a `MainClass` class and a `MainInfo` class, which provides information about the `MainClass` instance. It also defines a static (`Shared` in Visual Basic) `CreateAttachedValue` method that can be assigned to the delegate and passed to the method. The example calls the method to add a `MainClass` object and its attached `MainInfo` object to a table. The example also illustrates calls to the and methods to add key/value pairs to the table, and to the method to retrieve the value of an existing key. - + invokes the method that is defined by the `createValueCallback` parameter and passes it the key. A new value is bound to the key in the table and returned as a result. + + Use this method only when the class that represents the table's value does not define a parameterless constructor. If it does define a parameterless constructor, use the method instead. To retrieve the value of an existing key without adding the key/value pair if the key is not found in the table, call the method. + + If multiple threads try to create the same key, `createValueCallback` may be invoked multiple times with the same key. Only one of these calls will succeed, and its returned value will be added to the table. Which thread succeeds in creating the value is indeterminate. This rule permits the table to invoke `createValueCallback` outside the internal table lock to prevent deadlocks. + + + +## Examples + The following example defines a `MainClass` class and a `MainInfo` class, which provides information about the `MainClass` instance. It also defines a static (`Shared` in Visual Basic) `CreateAttachedValue` method that can be assigned to the delegate and passed to the method. The example calls the method to add a `MainClass` object and its attached `MainInfo` object to a table. The example also illustrates calls to the and methods to add key/value pairs to the table, and to the method to retrieve the value of an existing key. + :::code language="csharp" source="~/snippets/csharp/System.Runtime.CompilerServices/ConditionalWeakTableTKey,TValue+CreateValueCallback/Overview/getvalue1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: + ]]> @@ -745,11 +745,11 @@ Note: In the .NET for if the key is found and removed; otherwise, . - @@ -1007,19 +1007,19 @@ retrieved. Additionally, it may not return all entries that were present when th if is found; otherwise, . - , , and methods to add key/value pairs to a table. In each case, the example calls the method to confirm that the key/value pair has been added to the table. - + , , and methods to add key/value pairs to a table. In each case, the example calls the method to confirm that the key/value pair has been added to the table. + :::code language="csharp" source="~/snippets/csharp/System.Runtime.CompilerServices/ConditionalWeakTableTKey,TValue+CreateValueCallback/Overview/getvalue1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.compilerservices.conditionalweaktable.getvalue/vb/getvalue1.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Runtime.CompilerServices/IsByValue.xml b/xml/System.Runtime.CompilerServices/IsByValue.xml index 935a21938b8..05a9f3b1fe0 100644 --- a/xml/System.Runtime.CompilerServices/IsByValue.xml +++ b/xml/System.Runtime.CompilerServices/IsByValue.xml @@ -44,28 +44,28 @@ Indicates that a modified method argument should be interpreted as having object passed-by-value semantics. This modifier is applied to reference types. This class cannot be inherited. - class is used by the Microsoft C++ compiler to denote method parameters and return values whose semantics follow the C++ rules for objects passed by value. - - Compilers emit custom modifiers within metadata to change the way that the just-in-time (JIT) compiler handles values when the default behavior is not appropriate. When the JIT compiler encounters a custom modifier, it handles the value in the way that the modifier specifies. Compilers can apply custom modifiers to methods, parameters, and return values. The JIT compiler must respond to required modifiers but can ignore optional modifiers. - - You can emit custom modifiers into metadata using one of the following techniques: - -- Using methods in the class such as , , , and . - -- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). - -- Using the unmanaged reflection API. - - - -## Examples - The following example demonstrates how to emit an object into an assembly using reflection. - - :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Runtime.CompilerServices.IsByValue/cpp/sample.cpp" id="Snippet1"::: - + class is used by the Microsoft C++ compiler to denote method parameters and return values whose semantics follow the C++ rules for objects passed by value. + + Compilers emit custom modifiers within metadata to change the way that the just-in-time (JIT) compiler handles values when the default behavior is not appropriate. When the JIT compiler encounters a custom modifier, it handles the value in the way that the modifier specifies. Compilers can apply custom modifiers to methods, parameters, and return values. The JIT compiler must respond to required modifiers but can ignore optional modifiers. + + You can emit custom modifiers into metadata using one of the following techniques: + +- Using methods in the class such as , , , and . + +- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). + +- Using the unmanaged reflection API. + + + +## Examples + The following example demonstrates how to emit an object into an assembly using reflection. + + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Runtime.CompilerServices.IsByValue/cpp/sample.cpp" id="Snippet1"::: + ]]> diff --git a/xml/System.Runtime.CompilerServices/IsCopyConstructed.xml b/xml/System.Runtime.CompilerServices/IsCopyConstructed.xml index 91118c6ed7c..573a61f0936 100644 --- a/xml/System.Runtime.CompilerServices/IsCopyConstructed.xml +++ b/xml/System.Runtime.CompilerServices/IsCopyConstructed.xml @@ -61,11 +61,11 @@ You can emit custom modifiers into metadata using one of the following techniques: -- Using methods in the class such as , , , and . +- Using methods in the class such as , , , and . -- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). +- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). -- Using the unmanaged reflection API. +- Using the unmanaged reflection API. ]]> diff --git a/xml/System.Runtime.CompilerServices/IsJitIntrinsic.xml b/xml/System.Runtime.CompilerServices/IsJitIntrinsic.xml index b22d15a1703..31d2c04e9cf 100644 --- a/xml/System.Runtime.CompilerServices/IsJitIntrinsic.xml +++ b/xml/System.Runtime.CompilerServices/IsJitIntrinsic.xml @@ -44,19 +44,19 @@ Indicates that a modified method is an intrinsic value for which the just-in-time (JIT) compiler can perform special code generation. This class cannot be inherited. - class such as , , , and . - -- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). - -- Using the unmanaged reflection API. - + class such as , , , and . + +- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). + +- Using the unmanaged reflection API. + ]]> diff --git a/xml/System.Runtime.CompilerServices/IsSignUnspecifiedByte.xml b/xml/System.Runtime.CompilerServices/IsSignUnspecifiedByte.xml index 4c05f0c8c79..965e30c3494 100644 --- a/xml/System.Runtime.CompilerServices/IsSignUnspecifiedByte.xml +++ b/xml/System.Runtime.CompilerServices/IsSignUnspecifiedByte.xml @@ -53,11 +53,11 @@ You can emit custom modifiers into metadata using one of the following techniques: -- Using methods in the class such as , , , and . +- Using methods in the class such as , , , and . -- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). +- Generating a Microsoft intermediate language (MSIL) instruction file that contains calls to `modopt` and `modreq`, and assembling the file with the [Ilasm.exe (IL Assembler)](/dotnet/framework/tools/ilasm-exe-il-assembler). -- Using the unmanaged reflection API. +- Using the unmanaged reflection API. diff --git a/xml/System.Runtime.CompilerServices/IteratorStateMachineAttribute.xml b/xml/System.Runtime.CompilerServices/IteratorStateMachineAttribute.xml index 3767112a057..5d92b2b290b 100644 --- a/xml/System.Runtime.CompilerServices/IteratorStateMachineAttribute.xml +++ b/xml/System.Runtime.CompilerServices/IteratorStateMachineAttribute.xml @@ -59,31 +59,31 @@ Indicates whether a method in Visual Basic is marked with the modifier. - [!NOTE] -> You can't use `IteratorStateMachineAttribute` to test whether a method is an iterator method in C#. - - - -## Examples - The following example shows how to determine whether a method is an iterator method. In the example, `IsIteratorMethod` performs the following steps: - -- Obtains a object for the method name by using . - -- Obtains a object for the attribute by using [GetType Operator](/dotnet/visual-basic/language-reference/operators/gettype-operator). - -- Obtains an attribute object for the method and attribute type by using `MethodInfo.GetCustomAttribute`. If `GetCustomAttribute` returns `Nothing` (Visual Basic), the method doesn't contain the attribute. - - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/runtime.compilerservices.asyncstatemachineattribute/vb/module2.vb" id="Snippet2"::: - +> You can't use `IteratorStateMachineAttribute` to test whether a method is an iterator method in C#. + + + +## Examples + The following example shows how to determine whether a method is an iterator method. In the example, `IsIteratorMethod` performs the following steps: + +- Obtains a object for the method name by using . + +- Obtains a object for the attribute by using [GetType Operator](/dotnet/visual-basic/language-reference/operators/gettype-operator). + +- Obtains an attribute object for the method and attribute type by using `MethodInfo.GetCustomAttribute`. If `GetCustomAttribute` returns `Nothing` (Visual Basic), the method doesn't contain the attribute. + + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/runtime.compilerservices.asyncstatemachineattribute/vb/module2.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.Runtime.CompilerServices/RuntimeHelpers.xml b/xml/System.Runtime.CompilerServices/RuntimeHelpers.xml index afb87037b84..c3766e4ef5c 100644 --- a/xml/System.Runtime.CompilerServices/RuntimeHelpers.xml +++ b/xml/System.Runtime.CompilerServices/RuntimeHelpers.xml @@ -538,9 +538,9 @@ This method is intended for compiler use rather than use directly in code. `T` m The return value depends on whether the value class is mutable or immutable: -- If the value being assigned is a mutable value class, the method returns a shallow copy of the class, because value classes have copy semantics. +- If the value being assigned is a mutable value class, the method returns a shallow copy of the class, because value classes have copy semantics. -- If the value being assigned is an immutable value class, the method returns the object itself, instead of a copy of the class. +- If the value being assigned is an immutable value class, the method returns the object itself, instead of a copy of the class. Compilers of dynamically typed languages can use this method to make sure that boxed value types work identically to unboxed value types. That is, boxed value types get cloned when you pass them around, and they are always passed by value. The compiler can call to assign a value type to an object or to pass a value type as a parameter of a type object. @@ -1030,11 +1030,11 @@ This method is intended for compiler use rather than use directly in code. `T` m ## Remarks event delegates such as , , and are not automatically prepared at startup. You can use the following methods to prepare them: -- Attribute the method by using the attribute. +- Attribute the method by using the attribute. -- Attribute the method by using the attribute. +- Attribute the method by using the attribute. -- Call the method to dynamically prepare the delegate. +- Call the method to dynamically prepare the delegate. For more information, see the article [Keep Your Code Running with the Reliability Features of the .NET Framework](https://go.microsoft.com/fwlink/?LinkId=145491) in the MSDN Magazine. diff --git a/xml/System.Runtime.InteropServices.ComTypes/CALLCONV.xml b/xml/System.Runtime.InteropServices.ComTypes/CALLCONV.xml index 9ff0ea85c53..e2dc3ce0ae5 100644 --- a/xml/System.Runtime.InteropServices.ComTypes/CALLCONV.xml +++ b/xml/System.Runtime.InteropServices.ComTypes/CALLCONV.xml @@ -60,23 +60,23 @@ Identifies the calling convention used by a method described in a METHODDATA structure. - diff --git a/xml/System.Runtime.InteropServices.ComTypes/FORMATETC.xml b/xml/System.Runtime.InteropServices.ComTypes/FORMATETC.xml index 7c868de000a..6effc0b8a29 100644 --- a/xml/System.Runtime.InteropServices.ComTypes/FORMATETC.xml +++ b/xml/System.Runtime.InteropServices.ComTypes/FORMATETC.xml @@ -56,15 +56,15 @@ Represents a generalized Clipboard format. - structure encompass a target device, the aspect or view of the data, and a storage medium indicator. Instead of a Clipboard format, OLE uses a FORMATETC data structure instead. This structure is used as a parameter in OLE functions and methods that require data format information. - + structure encompass a target device, the aspect or view of the data, and a storage medium indicator. Instead of a Clipboard format, OLE uses a FORMATETC data structure instead. This structure is used as a parameter in OLE functions and methods that require data format information. + For more information, see [FORMATETC structure](/windows/win32/com/the-formatetc-structure). - - The common language runtime throws an exception when a COM method in native code returns an HRESULT. For more information, see [How to: Map HRESULTs and Exceptions](/dotnet/framework/interop/how-to-map-hresults-and-exceptions). - + + The common language runtime throws an exception when a COM method in native code returns an HRESULT. For more information, see [How to: Map HRESULTs and Exceptions](/dotnet/framework/interop/how-to-map-hresults-and-exceptions). + ]]> @@ -111,17 +111,17 @@ Specifies the particular clipboard format of interest. - @@ -168,11 +168,11 @@ Specifies one of the enumeration constants that indicates how much detail should be contained in the rendering. - value can be used in . That is, cannot be the result of a `BOOLEAN OR` operation on several values. - + value can be used in . That is, cannot be the result of a `BOOLEAN OR` operation on several values. + ]]> @@ -219,11 +219,11 @@ Specifies part of the aspect when the data must be split across page boundaries. - and , is ignored. - + and , is ignored. + ]]> @@ -270,11 +270,11 @@ Specifies a pointer to a structure containing information about the target device that the data is being composed for. - @@ -321,11 +321,11 @@ Specifies one of the enumeration constants, which indicates the type of storage medium used to transfer the object's data. - enumeration. - + enumeration. + ]]> diff --git a/xml/System.Runtime.InteropServices.WindowsRuntime/DefaultInterfaceAttribute.xml b/xml/System.Runtime.InteropServices.WindowsRuntime/DefaultInterfaceAttribute.xml index a42fd745140..e3eadb23125 100644 --- a/xml/System.Runtime.InteropServices.WindowsRuntime/DefaultInterfaceAttribute.xml +++ b/xml/System.Runtime.InteropServices.WindowsRuntime/DefaultInterfaceAttribute.xml @@ -32,19 +32,19 @@ Specifies the default interface of a managed Windows Runtime class. - attribute to the class, or apply the `Windows.Foundations.Metadata.DefaultAttribute` attribute to an interface. The latter takes precedence if both attributes are supplied. - + attribute to the class, or apply the `Windows.Foundations.Metadata.DefaultAttribute` attribute to an interface. The latter takes precedence if both attributes are supplied. + ]]> diff --git a/xml/System.Runtime.InteropServices.WindowsRuntime/ReadOnlyArrayAttribute.xml b/xml/System.Runtime.InteropServices.WindowsRuntime/ReadOnlyArrayAttribute.xml index 65ce8dd9e67..d711ffe107e 100644 --- a/xml/System.Runtime.InteropServices.WindowsRuntime/ReadOnlyArrayAttribute.xml +++ b/xml/System.Runtime.InteropServices.WindowsRuntime/ReadOnlyArrayAttribute.xml @@ -37,9 +37,9 @@ ## Remarks If an array parameter in your Windows Runtime component is passed by value (`ByVal` in Visual Basic), you must apply one of the following attributes to it: -- Apply the attribute if you intend the contents of the array to be used for input only. +- Apply the attribute if you intend the contents of the array to be used for input only. -- Apply the attribute if you intend the contents of the array to be used for output only (that is, the method sets the contents of the array but does not read them). +- Apply the attribute if you intend the contents of the array to be used for output only (that is, the method sets the contents of the array but does not read them). Applying both attributes to a parameter causes an error. For more information, including the standard pattern for making changes to an array, see [Passing arrays to a Windows Runtime component](https://go.microsoft.com/fwlink/?LinkId=251026) in the Windows Dev Center. diff --git a/xml/System.Runtime.InteropServices.WindowsRuntime/WriteOnlyArrayAttribute.xml b/xml/System.Runtime.InteropServices.WindowsRuntime/WriteOnlyArrayAttribute.xml index ea3fc071fdb..5dd99f62737 100644 --- a/xml/System.Runtime.InteropServices.WindowsRuntime/WriteOnlyArrayAttribute.xml +++ b/xml/System.Runtime.InteropServices.WindowsRuntime/WriteOnlyArrayAttribute.xml @@ -37,9 +37,9 @@ ## Remarks If an array parameter in your Windows Runtime component is passed by value (`ByVal` in Visual Basic), you must apply one of the following attributes to it: -- Apply the attribute if you intend the contents of the array to be used for input only. +- Apply the attribute if you intend the contents of the array to be used for input only. -- Apply the attribute if you intend the contents of the array to be used for output only (that is, the method sets the contents of the array but does not read them). +- Apply the attribute if you intend the contents of the array to be used for output only (that is, the method sets the contents of the array but does not read them). Applying both attributes to a parameter causes an error. For more information, including the standard pattern for making changes to an array, see [Passing arrays to a Windows Runtime component](https://go.microsoft.com/fwlink/?LinkId=251026) in the Windows Dev Center. diff --git a/xml/System.Runtime.InteropServices/Architecture.xml b/xml/System.Runtime.InteropServices/Architecture.xml index 9c8d62f2d50..93f5bcb8682 100644 --- a/xml/System.Runtime.InteropServices/Architecture.xml +++ b/xml/System.Runtime.InteropServices/Architecture.xml @@ -49,15 +49,15 @@ Indicates the processor architecture. - enumeration is returned by the following properties: - -- The property. - -- The property. - + enumeration is returned by the following properties: + +- The property. + +- The property. + ]]> diff --git a/xml/System.Runtime.InteropServices/ComAwareEventInfo.xml b/xml/System.Runtime.InteropServices/ComAwareEventInfo.xml index ad275af3517..82364aa6964 100644 --- a/xml/System.Runtime.InteropServices/ComAwareEventInfo.xml +++ b/xml/System.Runtime.InteropServices/ComAwareEventInfo.xml @@ -199,13 +199,13 @@ facilitates registering COM event sinks that forward calls to corresponding managed delegates. It requires the following information: -- The target object itself (`target`). +- The target object itself (`target`). -- The GUID of the source interface. +- The GUID of the source interface. -- The DispID of the method on the COM interface that corresponds to the specified event. +- The DispID of the method on the COM interface that corresponds to the specified event. -- The delegate that would be invoked when the COM object triggers the corresponding event (`handler`). +- The delegate that would be invoked when the COM object triggers the corresponding event (`handler`). looks up the corresponding COM source interface (specified as the first parameter of the constructor). It then looks up a method on the source interface whose name is identical to the event name. The value of `GuidAttribute` on the source interface is the GUID that is passed to ; the value of `DispIDAttribute` on the method is the DispID value that is passed to . @@ -932,13 +932,13 @@ facilitates unregistering COM event sinks that forward calls to corresponding managed delegates. It requires the following information: -- The target object itself (`target`). +- The target object itself (`target`). -- The GUID of the source interface. +- The GUID of the source interface. -- The DispID of the method on the COM interface that corresponds to the specified event. +- The DispID of the method on the COM interface that corresponds to the specified event. -- The delegate that would be invoked when the COM object triggers the corresponding event (`handler`). +- The delegate that would be invoked when the COM object triggers the corresponding event (`handler`). looks up the corresponding COM source interface (specified as the first parameter of the constructor). It then it looks up a method on the source interface whose name is identical to the event name. The value of `GuidAttribute` on the source interface is the GUID that is passed to ; the value of `DispIDAttribute` on the method is the DispID value that is passed to . diff --git a/xml/System.Runtime.InteropServices/ComEventInterfaceAttribute.xml b/xml/System.Runtime.InteropServices/ComEventInterfaceAttribute.xml index 5395d66c47a..95f78704ce5 100644 --- a/xml/System.Runtime.InteropServices/ComEventInterfaceAttribute.xml +++ b/xml/System.Runtime.InteropServices/ComEventInterfaceAttribute.xml @@ -73,19 +73,19 @@ Identifies the source interface and the class that implements the methods of the event interface that is generated when a coclass is imported from a COM type library. - to the event interface to identify the managed class that implements the methods of the event interface and implements the original source interface. The common language runtime uses this attribute at run time to perform the following tasks: - -- Associate events exposed by the interface to their implementation in the event provider class. - -- Link the events to the original COM source interface. - - You rarely apply this attribute. However, if you plan to write source code that produces metadata that closely simulates metadata produced by Tlbimp.exe, you should create a event interface for each original source interface. For a detailed description about how Tlbimp.exe imports events, see [Imported Member Conversion](https://msdn.microsoft.com/library/7a272adf-41d7-4409-b0e2-5c0c5ef5266d). For instruction about how to expose a COM event to a .NET client, see [How to: Handle Events Raised by a COM Source](https://msdn.microsoft.com/library/12bb67bd-91a2-4554-82fb-bdba3d2c8b04). - + to the event interface to identify the managed class that implements the methods of the event interface and implements the original source interface. The common language runtime uses this attribute at run time to perform the following tasks: + +- Associate events exposed by the interface to their implementation in the event provider class. + +- Link the events to the original COM source interface. + + You rarely apply this attribute. However, if you plan to write source code that produces metadata that closely simulates metadata produced by Tlbimp.exe, you should create a event interface for each original source interface. For a detailed description about how Tlbimp.exe imports events, see [Imported Member Conversion](https://msdn.microsoft.com/library/7a272adf-41d7-4409-b0e2-5c0c5ef5266d). For instruction about how to expose a COM event to a .NET client, see [How to: Handle Events Raised by a COM Source](https://msdn.microsoft.com/library/12bb67bd-91a2-4554-82fb-bdba3d2c8b04). + ]]> Tlbimp.exe (Type Library Importer) @@ -203,11 +203,11 @@ Gets the class that implements the methods of the event interface. A that contains the class that implements the methods of the event interface. - @@ -262,11 +262,11 @@ Gets the original source interface from the type library. A containing the source interface. - diff --git a/xml/System.Runtime.InteropServices/ComRegisterFunctionAttribute.xml b/xml/System.Runtime.InteropServices/ComRegisterFunctionAttribute.xml index b1e510ae6b8..ee0bd64c556 100644 --- a/xml/System.Runtime.InteropServices/ComRegisterFunctionAttribute.xml +++ b/xml/System.Runtime.InteropServices/ComRegisterFunctionAttribute.xml @@ -54,36 +54,36 @@ Specifies the method to call when you register an assembly for use from COM; this enables the execution of user-written code during the registration process. - namespace. If you provide a registration method, you should also apply to an unregistration method, which reverses the operations done in the registration method. - -**.NET Framework:** The common language runtime calls the method with this attribute when its containing assembly is registered (directly or indirectly) with the [Regasm.exe (Assembly Registration) tool)](/dotnet/framework/tools/regasm-exe-assembly-registration-tool) or through the method. + namespace. If you provide a registration method, you should also apply to an unregistration method, which reverses the operations done in the registration method. + +**.NET Framework:** The common language runtime calls the method with this attribute when its containing assembly is registered (directly or indirectly) with the [Regasm.exe (Assembly Registration) tool)](/dotnet/framework/tools/regasm-exe-assembly-registration-tool) or through the method. **.NET Core:** The common language runtime calls the method with this attribute when its containing assembly's COM host is registered via the [RegSvr32.exe tool](https://learn.microsoft.com/windows-server/administration/windows-commands/regsvr32). - - This attribute can be applied only to methods that have the following characteristics: - -- Scope: Any (public, private, and so on). - -- Type: `static`. - -- Parameters: Accepts a single parameter or a parameter type. - -- Return type: `void`. - - - -## Examples - The following example demonstrates how to apply and to methods with the appropriate signature. - + + This attribute can be applied only to methods that have the following characteristics: + +- Scope: Any (public, private, and so on). + +- Type: `static`. + +- Parameters: Accepts a single parameter or a parameter type. + +- Return type: `void`. + + + +## Examples + The following example demonstrates how to apply and to methods with the appropriate signature. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_Classic/classic ComRegisterFunctionAttribute Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Runtime.InteropServices/ComRegisterFunctionAttribute/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_Classic/classic ComRegisterFunctionAttribute Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_Classic/classic ComRegisterFunctionAttribute Example/VB/source.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Runtime.InteropServices/CriticalHandle.xml b/xml/System.Runtime.InteropServices/CriticalHandle.xml index f7c0ace1353..40112cdb38f 100644 --- a/xml/System.Runtime.InteropServices/CriticalHandle.xml +++ b/xml/System.Runtime.InteropServices/CriticalHandle.xml @@ -91,13 +91,13 @@ Represents a wrapper class for handle resources. - class is similar to the class, except that implements reference counting. You can use instead of to address performance considerations when you can provide the necessary synchronization more efficiently yourself. - - Because the class does not perform reference counting, it does not provide protection from handle recycling security attacks. Because the reference counting algorithm implicitly serializes operations, a certain amount of thread safety is also lost. If you call the or method while an operation that is using the handle is outstanding on another thread, or if you call or from two threads at the same time, the results are non-deterministic. The class still provides the guaranteed critical finalization provided by the class. - + class is similar to the class, except that implements reference counting. You can use instead of to address performance considerations when you can provide the necessary synchronization more efficiently yourself. + + Because the class does not perform reference counting, it does not provide protection from handle recycling security attacks. Because the reference counting algorithm implicitly serializes operations, a certain amount of thread safety is also lost. If you call the or method while an operation that is using the handle is outstanding on another thread, or if you call or from two threads at the same time, the results are non-deterministic. The class still provides the guaranteed critical finalization provided by the class. + ]]> @@ -215,15 +215,15 @@ Marks the handle for releasing and freeing resources. - or method allows the resources to be freed. Unlike the class, this will always happen immediately since there is no reference count to indicate that other threads are using this handle. Therefore, you must employ a synchronization mechanism to ensure it is safe to call the method. Although most classes that use the class do not need to provide a finalizer, this is sometimes necessary (for example, to flush out file buffers or to write some data back into memory). In this case, the class can provide a finalizer that is guaranteed to run before the critical finalizer runs. - - Call the or method when you are finished using the object. The method leaves the object in an unusable state. - - **Note** Always call or before you release your last reference to the object. Otherwise, the resources it is using will not be freed until the garbage collector calls the object's method. - + or method allows the resources to be freed. Unlike the class, this will always happen immediately since there is no reference count to indicate that other threads are using this handle. Therefore, you must employ a synchronization mechanism to ensure it is safe to call the method. Although most classes that use the class do not need to provide a finalizer, this is sometimes necessary (for example, to flush out file buffers or to write some data back into memory). In this case, the class can provide a finalizer that is guaranteed to run before the critical finalizer runs. + + Call the or method when you are finished using the object. The method leaves the object in an unusable state. + + **Note** Always call or before you release your last reference to the object. Otherwise, the resources it is using will not be freed until the garbage collector calls the object's method. + ]]> @@ -297,15 +297,15 @@ Releases all resources used by the . - or method allows the resources to be freed. Unlike the class, this will always happen immediately since there is no reference count to indicate that other threads are using this handle. Therefore, you must employ a synchronization mechanism to ensure it is safe to call the method. Although most classes that use the class do not need to provide a finalizer, this is sometimes necessary (for example, to flush out file buffers or to write some data back into memory). In this case, the class can provide a finalizer that is guaranteed to run before the critical finalizer runs. - - Call the or method when you are finished using the object. The method leaves the object in an unusable state. - - **Note** Always call the or method before you release your last reference to the object. Otherwise, the resources it is using will not be freed until the garbage collector calls the object's method. - + or method allows the resources to be freed. Unlike the class, this will always happen immediately since there is no reference count to indicate that other threads are using this handle. Therefore, you must employ a synchronization mechanism to ensure it is safe to call the method. Although most classes that use the class do not need to provide a finalizer, this is sometimes necessary (for example, to flush out file buffers or to write some data back into memory). In this case, the class can provide a finalizer that is guaranteed to run before the critical finalizer runs. + + Call the or method when you are finished using the object. The method leaves the object in an unusable state. + + **Note** Always call the or method before you release your last reference to the object. Otherwise, the resources it is using will not be freed until the garbage collector calls the object's method. + ]]> @@ -371,11 +371,11 @@ for a normal dispose operation; to finalize the handle. Releases the unmanaged resources used by the class specifying whether to perform a normal dispose operation. - method with the `disposing` parameter set to `false`. - + method with the `disposing` parameter set to `false`. + ]]> @@ -437,11 +437,11 @@ Frees all resources associated with the handle. - method is the destructor for the class. Application code should not call this method directly. - + method is the destructor for the class. Application code should not call this method directly. + ]]> @@ -493,11 +493,11 @@ Specifies the handle to be wrapped. - @@ -556,15 +556,15 @@ if the handle is closed; otherwise, . - method returns a value indicating whether the object's handle is no longer associated with a native resource. This differs from the definition of the property, which computes whether a given handle is always considered invalid. The method returns a `true` value in the following cases: - -- The method was called. - -- The method or method was called and there are no references to the object on other threads. - + method returns a value indicating whether the object's handle is no longer associated with a native resource. This differs from the definition of the property, which computes whether a given handle is always considered invalid. The method returns a `true` value in the following cases: + +- The method was called. + +- The method or method was called and there are no references to the object on other threads. + ]]> @@ -624,13 +624,13 @@ if the handle is valid; otherwise, . - property so that the common language runtime can determine whether critical finalization is required. Derived classes must provide an implementation that suits the general type of handle they support (0 or -1 is invalid). These classes can then be further derived for specific safe handle types. - - Unlike the property, which reports whether the object has finished using the underlying handle, the property calculates whether the given handle value is always considered invalid. Therefore, the property always returns the same value for any one handle value. - + property so that the common language runtime can determine whether critical finalization is required. Derived classes must provide an implementation that suits the general type of handle they support (0 or -1 is invalid). These classes can then be further derived for specific safe handle types. + + Unlike the property, which reports whether the object has finished using the underlying handle, the property calculates whether the given handle value is always considered invalid. Therefore, the property always returns the same value for any one handle value. + ]]> @@ -691,17 +691,17 @@ if the handle is released successfully; otherwise, in the event of a catastrophic failure, . In this case, it generates a releaseHandleFailed Managed Debugging Assistant. - method is guaranteed to be called only once, provided that you employ proper synchronization mechanisms to ensure that only one call to the or method is made. The method will not be called if the or property is `true`. Implement this method in your derived classes to execute any code that is required to free the handle. Because one of the functions of is to guarantee prevention of resource leaks, the code in your implementation of must never fail. The garbage collector calls after normal finalizers have been run for objects that were garbage collected at the same time, and guarantees the resources to invoke it and that it will not be interrupted while it is in progress. This method will be prepared as a constrained execution region (CER) at instance construction time (along with all the methods in its statically determinable call graph). Although this prevents thread abort interrupts, you must still be careful not to introduce any fault paths in your overridden method. In particular, apply the attribute to any methods you call from . In most cases this code should be: - - `ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)` - - Additionally, for simple cleanup (for example, calling the Windows API `CloseHandle` on a file handle) you can check the return value for the single platform invoke call. For complex cleanup, you may have a lot of program logic and many method calls, some of which might fail. You must ensure that your program logic has fallback code for each of those cases. - - If the method returns `false` for any reason, it generates a [releaseHandleFailed](/dotnet/framework/debug-trace-profile/releasehandlefailed-mda) Managed Debugging Assistant. - + method is guaranteed to be called only once, provided that you employ proper synchronization mechanisms to ensure that only one call to the or method is made. The method will not be called if the or property is `true`. Implement this method in your derived classes to execute any code that is required to free the handle. Because one of the functions of is to guarantee prevention of resource leaks, the code in your implementation of must never fail. The garbage collector calls after normal finalizers have been run for objects that were garbage collected at the same time, and guarantees the resources to invoke it and that it will not be interrupted while it is in progress. This method will be prepared as a constrained execution region (CER) at instance construction time (along with all the methods in its statically determinable call graph). Although this prevents thread abort interrupts, you must still be careful not to introduce any fault paths in your overridden method. In particular, apply the attribute to any methods you call from . In most cases this code should be: + + `ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)` + + Additionally, for simple cleanup (for example, calling the Windows API `CloseHandle` on a file handle) you can check the return value for the single platform invoke call. For complex cleanup, you may have a lot of program logic and many method calls, some of which might fail. You must ensure that your program logic has fallback code for each of those cases. + + If the method returns `false` for any reason, it generates a [releaseHandleFailed](/dotnet/framework/debug-trace-profile/releasehandlefailed-mda) Managed Debugging Assistant. + ]]> Diagnosing Run-time Errors with Managed Debugging Assistants @@ -764,11 +764,11 @@ The pre-existing handle to use. Sets the handle to the specified pre-existing handle. - method only if you need to support a pre-existing handle (for example, if the handle is returned in a structure) because the .NET Framework COM interop infrastructure does not support marshaling handles in a structure. - + method only if you need to support a pre-existing handle (for example, if the handle is returned in a structure) because the .NET Framework COM interop infrastructure does not support marshaling handles in a structure. + ]]> @@ -826,13 +826,13 @@ Marks a handle as invalid. - method only when you know that your handle is invalid and you want to mark it as such. Doing so does not change the value of the field; it only marks the handle as invalid. The handle might then contain a potentially stale value. The effect of this call is that no attempt is made to free the resources. - - As with the method, use only if you need to support a pre-existing handle. - + method only when you know that your handle is invalid and you want to mark it as such. Doing so does not change the value of the field; it only marks the handle as invalid. The handle might then contain a potentially stale value. The effect of this call is that no attempt is made to free the resources. + + As with the method, use only if you need to support a pre-existing handle. + ]]> diff --git a/xml/System.Runtime.InteropServices/ManagedToNativeComInteropStubAttribute.xml b/xml/System.Runtime.InteropServices/ManagedToNativeComInteropStubAttribute.xml index a00cef658d3..deac92b5ea3 100644 --- a/xml/System.Runtime.InteropServices/ManagedToNativeComInteropStubAttribute.xml +++ b/xml/System.Runtime.InteropServices/ManagedToNativeComInteropStubAttribute.xml @@ -59,62 +59,62 @@ Provides support for user customization of interop stubs in managed-to-COM interop scenarios. - attribute has the following characteristics: - -- The attribute can be used only on methods from interfaces that are marked `[ComImport]`. If the attribute is applied to non-interface types, it is ignored by the runtime. - -- The attribute can be used only once on the same method in an interface. If it is used more than once, the compiler generates a duplicated attribute error. - -- The attribute is not inheritable from a base interface. Derived interfaces must explicitly assign the attribute. - -- The assembly that contains the attributed method must also contain the customized stub. - - Overloaded stub methods are valid. Although you specify only the type and the name of the stub method, the runtime will discover the corresponding stub. It does this by examining all the arguments on the interface method, and then performing full signature matching by using an explicit `this` pointer. - - It is also possible for multiple methods in an interface to share the same stub method; however, you should be careful when you use shared stubs. - + attribute has the following characteristics: + +- The attribute can be used only on methods from interfaces that are marked `[ComImport]`. If the attribute is applied to non-interface types, it is ignored by the runtime. + +- The attribute can be used only once on the same method in an interface. If it is used more than once, the compiler generates a duplicated attribute error. + +- The attribute is not inheritable from a base interface. Derived interfaces must explicitly assign the attribute. + +- The assembly that contains the attributed method must also contain the customized stub. + + Overloaded stub methods are valid. Although you specify only the type and the name of the stub method, the runtime will discover the corresponding stub. It does this by examining all the arguments on the interface method, and then performing full signature matching by using an explicit `this` pointer. + + It is also possible for multiple methods in an interface to share the same stub method; however, you should be careful when you use shared stubs. + > [!NOTE] -> Stub methods must be static. - - You could inform the runtime to use a customized interop stub at build time instead of run time with the following C# code: - -``` -[ComImport] -interface IMyInterface -{ - [ManagedToNativeComInteropStubAttribute(typeof(TestStubClass), - "ForwardTestStub")] - void GetString (string arg); -} -``` - - You could then use the following code to declare the corresponding stub method: - -``` -class TestStubClass -{ - internal static void ForwardTestStub(IMyInterface thisObject, - string arg) {…} -} -``` - +> Stub methods must be static. + + You could inform the runtime to use a customized interop stub at build time instead of run time with the following C# code: + +``` +[ComImport] +interface IMyInterface +{ + [ManagedToNativeComInteropStubAttribute(typeof(TestStubClass), + "ForwardTestStub")] + void GetString (string arg); +} +``` + + You could then use the following code to declare the corresponding stub method: + +``` +class TestStubClass +{ + internal static void ForwardTestStub(IMyInterface thisObject, + string arg) {…} +} +``` + ]]> @@ -158,14 +158,14 @@ class TestStubClass Initializes a new instance of the class with the specified class type and method name. To be added. - cannot be found. - - -or- - - The method is not static or non-generic. - - -or- - + cannot be found. + + -or- + + The method is not static or non-generic. + + -or- + The method's parameter list does not match the expected parameter list for the stub. The interface that contains the managed interop method has no access to the stub method, because the stub method has private or protected accessibility, or because of a security issue. diff --git a/xml/System.Runtime.InteropServices/Marshal.xml b/xml/System.Runtime.InteropServices/Marshal.xml index 549fa4ef240..2d17abd85ce 100644 --- a/xml/System.Runtime.InteropServices/Marshal.xml +++ b/xml/System.Runtime.InteropServices/Marshal.xml @@ -3989,10 +3989,15 @@ The code retrieves a reference to an instance of Microsoft Word successfully. Ho You must manually keep the delegate from being collected by the garbage collector from managed code. The garbage collector does not track references to unmanaged code. + This API is unsupported in environments that don't support dynamic entry-point allocation, such as `ProcessDynamicCodePolicy` on Windows, `execmem off` in SELinux, and WebAssembly. + + It is recommended to use function pointers and instead. Function pointers are more efficient, easier to use correctly, and supported in all environments. + ]]> The parameter is a generic type definition. The parameter is . + Dynamic entrypoint allocation is not supported in the current environment. @@ -4058,11 +4063,15 @@ The code retrieves a reference to an instance of Microsoft Word successfully. Ho The delegate `d` is converted to a function pointer that can be passed to unmanaged code by using [the default platform calling convention](/dotnet/standard/native-interop/calling-conventions#platform-default-calling-convention). You can set the calling convention by applying the to the delegate. You must manually keep the delegate from being collected by the garbage collector from managed code. The garbage collector does not track references to unmanaged code. - + + This API is unsupported in environments that don't support dynamic entry-point allocation, such as `ProcessDynamicCodePolicy` on Windows, `execmem off` in SELinux, and WebAssembly. + + It is recommended to use function pointers and instead. Function pointers are more efficient, easier to use correctly, and supported in all environments. ]]> The parameter is a generic type definition. The parameter is . + Dynamic entrypoint allocation is not supported in the current environment. diff --git a/xml/System.Runtime.InteropServices/MarshalAsAttribute.xml b/xml/System.Runtime.InteropServices/MarshalAsAttribute.xml index 948dcc7732f..95ef950a223 100644 --- a/xml/System.Runtime.InteropServices/MarshalAsAttribute.xml +++ b/xml/System.Runtime.InteropServices/MarshalAsAttribute.xml @@ -727,9 +727,9 @@ When arrays are passed as C-style arrays, the marshaler cannot determine the size of the array. Therefore, to pass an managed array to an unmanaged function or method, you must provide two arguments: -- The array, defined by reference or value. +- The array, defined by reference or value. -- The array size, defined by reference or value. +- The array size, defined by reference or value. The zero-based index of the array size parameter is defined by using the field. diff --git a/xml/System.Runtime.InteropServices/PrimaryInteropAssemblyAttribute.xml b/xml/System.Runtime.InteropServices/PrimaryInteropAssemblyAttribute.xml index a2203c5d47c..a092737b3e4 100644 --- a/xml/System.Runtime.InteropServices/PrimaryInteropAssemblyAttribute.xml +++ b/xml/System.Runtime.InteropServices/PrimaryInteropAssemblyAttribute.xml @@ -58,23 +58,23 @@ Indicates that the attributed assembly is a primary interop assembly. - at design time. - - To specify a primary interop assembly in managed source code, you must apply the and to the assembly at design time. The on the primary interop assembly identifies the LIBID of the type library and the identifies the version of the particular type library for which this assembly is the primary interop assembly. The can appear multiple times if the assembly is the primary interop assembly for multiple versions of the same type library. - - When using the types defined in a type library, always reference the primary interop assembly for that type library, rather than reimporting or redefining the types themselves. For guidelines and procedures on how to produce or use primary interop assemblies, see [Primary Interop Assemblies](https://msdn.microsoft.com/library/b977a8be-59a0-40a0-a806-b11ffba5c080(v=vs.100)). For a detailed description of the type library importing process, see [Type Library to Assembly Conversion Summary](https://msdn.microsoft.com/library/bf3f90c5-4770-4ab8-895c-3ba1055cc958(v=vs.100)). - + at design time. + + To specify a primary interop assembly in managed source code, you must apply the and to the assembly at design time. The on the primary interop assembly identifies the LIBID of the type library and the identifies the version of the particular type library for which this assembly is the primary interop assembly. The can appear multiple times if the assembly is the primary interop assembly for multiple versions of the same type library. + + When using the types defined in a type library, always reference the primary interop assembly for that type library, rather than reimporting or redefining the types themselves. For guidelines and procedures on how to produce or use primary interop assemblies, see [Primary Interop Assemblies](https://msdn.microsoft.com/library/b977a8be-59a0-40a0-a806-b11ffba5c080(v=vs.100)). For a detailed description of the type library importing process, see [Type Library to Assembly Conversion Summary](https://msdn.microsoft.com/library/bf3f90c5-4770-4ab8-895c-3ba1055cc958(v=vs.100)). + ]]> @@ -122,11 +122,11 @@ The minor version of the type library for which this assembly is the primary interop assembly. Initializes a new instance of the class with the major and minor version numbers of the type library for which this assembly is the primary interop assembly. - can appear multiple times if the assembly is the primary interop assembly for multiple versions of the same type library. - + can appear multiple times if the assembly is the primary interop assembly for multiple versions of the same type library. + ]]> diff --git a/xml/System.Runtime.InteropServices/SafeBuffer.xml b/xml/System.Runtime.InteropServices/SafeBuffer.xml index 7028f2a8dbc..b69bb658934 100644 --- a/xml/System.Runtime.InteropServices/SafeBuffer.xml +++ b/xml/System.Runtime.InteropServices/SafeBuffer.xml @@ -79,18 +79,18 @@ Provides a controlled memory buffer that can be used for reading and writing. Attempts to access memory outside the controlled buffer (underruns and overruns) raise exceptions. - method before you use any instance of . To avoid races when you store an instance of a object in a static variable, you should use one of the following approaches: - -- Create a lock when publishing the . - -- Create a local variable, initialize the , and then assign the to the static variable, for example, by using the method. - + method before you use any instance of . To avoid races when you store an instance of a object in a static variable, you should use one of the following approaches: + +- Create a lock when publishing the . + +- Create a local variable, initialize the , and then assign the to the static variable, for example, by using the method. + > [!NOTE] -> Assignments in a static class constructor are implicitly locked. - +> Assignments in a static class constructor are implicitly locked. + ]]> @@ -200,32 +200,32 @@ A byte pointer, passed by reference, to receive the pointer from within the object. You must set this pointer to before you call this method. Obtains a pointer from a object for a block of memory. - returns, you should perform bounds checking by verifying that the `pointer` parameter is `null`. If it is not `null`, you must call the method in a constrained execution region (CER). - + returns, you should perform bounds checking by verifying that the `pointer` parameter is `null`. If it is not `null`, you must call the method in a constrained execution region (CER). + calls the method and exposes the pointer. - - The following example demonstrates how to use the method: - -``` -byte* pointer = null; -RuntimeHelpers.PrepareConstrainedRegions(); -try { - MySafeBuffer.AcquirePointer(ref pointer); - // Use pointer here, with your own bounds checking. - } -finally { - if (pointer != null) - MySafeBuffer.ReleasePointer(); - } -``` - - If you cast `pointer` (which is a pointer to a byte) as a pointer to a different type (T*), you may have pointer alignment issues. - - You must take responsibility for all bounds checking with this pointer. - + + The following example demonstrates how to use the method: + +``` +byte* pointer = null; +RuntimeHelpers.PrepareConstrainedRegions(); +try { + MySafeBuffer.AcquirePointer(ref pointer); + // Use pointer here, with your own bounds checking. + } +finally { + if (pointer != null) + MySafeBuffer.ReleasePointer(); + } +``` + + If you cast `pointer` (which is a pointer to a byte) as a pointer to a different type (T*), you may have pointer alignment issues. + + You must take responsibility for all bounds checking with this pointer. + ]]> The method has not been called. @@ -358,10 +358,10 @@ finally { Defines the allocation size of the memory region in bytes. You must call this method before you use the instance. To be added. - is less than zero. - - -or- - + is less than zero. + + -or- + is greater than the available address space. @@ -421,22 +421,22 @@ finally { The size of each element in the buffer. Specifies the allocation size of the memory buffer by using the specified number of elements and element size. You must call this method before you use the instance. - - is less than zero. - - -or- - - is less than zero. - - -or- - + is less than zero. + + -or- + + is less than zero. + + -or- + multiplied by is greater than the available address space. @@ -505,10 +505,10 @@ finally { Defines the allocation size of the memory region by specifying the number of value types. You must call this method before you use the instance. To be added. - is less than zero. - - -or- - + is less than zero. + + -or- + multiplied by the size of each element is greater than the available address space. @@ -711,10 +711,10 @@ finally { Reads the specified number of value types from memory starting at the offset, and writes them into an array starting at the index. To be added. - is less than zero. - - -or- - + is less than zero. + + -or- + is less than zero. is . @@ -829,11 +829,11 @@ finally { Releases a pointer that was obtained by the method. - The method has not been called. @@ -909,15 +909,15 @@ finally { The value to write. Writes a value type to memory at the given location. - The method has not been called. @@ -1005,11 +1005,11 @@ finally { The number of value types to write. Writes the specified number of value types to a memory location by reading bytes starting from the specified location in the input array. - diff --git a/xml/System.Runtime.InteropServices/SafeHandle.xml b/xml/System.Runtime.InteropServices/SafeHandle.xml index 5bb0a88bd5a..2cf3139a920 100644 --- a/xml/System.Runtime.InteropServices/SafeHandle.xml +++ b/xml/System.Runtime.InteropServices/SafeHandle.xml @@ -796,9 +796,9 @@ If this call is successful, it will set the `ref bool success` parameter to `tru ## Remarks The method returns a value indicating whether the object's handle is no longer associated with a native resource. This differs from the definition of the property, which computes whether a given handle is always considered invalid. The method returns a `true` value in the following cases: -- The method was called. +- The method was called. -- The method or method was called and there are no references to the object on other threads. +- The method or method was called and there are no references to the object on other threads. ]]> diff --git a/xml/System.Runtime.InteropServices/TypeIdentifierAttribute.xml b/xml/System.Runtime.InteropServices/TypeIdentifierAttribute.xml index ded5c454eed..78779d8d235 100644 --- a/xml/System.Runtime.InteropServices/TypeIdentifierAttribute.xml +++ b/xml/System.Runtime.InteropServices/TypeIdentifierAttribute.xml @@ -63,17 +63,17 @@ Provides support for type equivalence. - attribute is primarily emitted by compilers. It serves two purposes: - -- For all imported types, it indicates that the type is intended to be used for type equivalence. - -- For types that don't have GUIDs in their type library, it has a constructor that takes two strings (`scope` and `identifier`). These are combined into a GUID and become the key that is used for type equivalence. - - Type equivalence is discussed in the topic. - + attribute is primarily emitted by compilers. It serves two purposes: + +- For all imported types, it indicates that the type is intended to be used for type equivalence. + +- For types that don't have GUIDs in their type library, it has a constructor that takes two strings (`scope` and `identifier`). These are combined into a GUID and become the key that is used for type equivalence. + + Type equivalence is discussed in the topic. + ]]> Extending Metadata Using Attributes @@ -131,11 +131,11 @@ Creates a new instance of the class. - @@ -185,13 +185,13 @@ The second type equivalence string. Creates a new instance of the class with the specified scope and identifier. - class internally maintains the `scope` and `identifier` parameters as private members. - + class internally maintains the `scope` and `identifier` parameters as private members. + ]]> diff --git a/xml/System.Runtime.Remoting.Channels.Http/HttpChannel.xml b/xml/System.Runtime.Remoting.Channels.Http/HttpChannel.xml index f591f9e71db..b60215db976 100644 --- a/xml/System.Runtime.Remoting.Channels.Http/HttpChannel.xml +++ b/xml/System.Runtime.Remoting.Channels.Http/HttpChannel.xml @@ -57,11 +57,11 @@ ## Examples The following code example shows how to use a to set up a remoting server and its client. The example contains three parts: -- A server +- A server -- A client +- A client -- A remote object used by the server and the client +- A remote object used by the server and the client The following code example shows a server. diff --git a/xml/System.Runtime.Remoting.Channels.Http/HttpClientChannel.xml b/xml/System.Runtime.Remoting.Channels.Http/HttpClientChannel.xml index 1d5768558d9..bf8d66ea413 100644 --- a/xml/System.Runtime.Remoting.Channels.Http/HttpClientChannel.xml +++ b/xml/System.Runtime.Remoting.Channels.Http/HttpClientChannel.xml @@ -54,11 +54,11 @@ ## Examples The following code example shows how to use a to set up a remoting server and its client. The example contains three parts: -- A server +- A server -- A client +- A client -- A remote object used by the server and the client +- A remote object used by the server and the client The following code example shows a server. diff --git a/xml/System.Runtime.Remoting.Channels.Http/HttpServerChannel.xml b/xml/System.Runtime.Remoting.Channels.Http/HttpServerChannel.xml index 1af1aea8304..254fd5a7444 100644 --- a/xml/System.Runtime.Remoting.Channels.Http/HttpServerChannel.xml +++ b/xml/System.Runtime.Remoting.Channels.Http/HttpServerChannel.xml @@ -46,11 +46,11 @@ ## Examples The following code example shows how to use a object to set up a remoting server and its client. The example contains three parts: -- A server +- A server -- A client +- A client -- A remote object used by the server and the client +- A remote object used by the server and the client The following code example shows a server. diff --git a/xml/System.Runtime.Remoting.Channels.Ipc/IpcChannel.xml b/xml/System.Runtime.Remoting.Channels.Ipc/IpcChannel.xml index af34af98df4..bb7f39126b9 100644 --- a/xml/System.Runtime.Remoting.Channels.Ipc/IpcChannel.xml +++ b/xml/System.Runtime.Remoting.Channels.Ipc/IpcChannel.xml @@ -49,11 +49,11 @@ ## Examples The following code example shows how to use a to set up a remoting server and its client. The example contains three parts: -- A server +- A server -- A client +- A client -- A remote object used by the server and the client. +- A remote object used by the server and the client. The following code example shows a server. diff --git a/xml/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary.xml b/xml/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary.xml index 31150e6cf4b..cc7e40c6349 100644 --- a/xml/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary.xml +++ b/xml/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary.xml @@ -33,20 +33,20 @@ Wraps an XSD type. - class to convert between a object and an XSD `base64Binary` string. - + + + +## Examples + The following code example shows how to use the members in the class to convert between a object and an XSD `base64Binary` string. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/System.Runtime.Remoting.Metadata.W3cXsd2001.SoapBase64Binary/CPP/demo.cpp" id="Snippet10"::: - :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet10"::: - + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet10"::: + ]]> @@ -78,14 +78,14 @@ For more information about XSD data types, see the [XML Data Types Reference](ht Initializes a new instance of the class. - @@ -111,14 +111,14 @@ For more information about XSD data types, see the [XML Data Types Reference](ht A array that contains a 64-bit number. Initializes a new instance of the class with the binary representation of a 64-bit number. - @@ -148,14 +148,14 @@ For more information about XSD data types, see the [XML Data Types Reference](ht Returns the XML Schema definition language (XSD) of the current SOAP type. A that indicates the XSD of the current SOAP type. - method. This code example is part of a larger example that is provided for the class. - + method. This code example is part of a larger example that is provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/System.Runtime.Remoting.Metadata.W3cXsd2001.SoapBase64Binary/CPP/demo.cpp" id="Snippet13"::: - :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet13"::: - + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet13"::: + ]]> @@ -185,23 +185,23 @@ For more information about XSD data types, see the [XML Data Types Reference](ht Converts the specified into a object. A object that is obtained from . - method. This code example is part of a larger example that is provided for the class. - + method. This code example is part of a larger example that is provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/System.Runtime.Remoting.Metadata.W3cXsd2001.SoapBase64Binary/CPP/demo.cpp" id="Snippet11"::: - :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet11"::: - + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet11"::: + ]]> - One of the following: - -- is . - -- The length of is less than 4. - -- The length of is not a multiple of 4. + One of the following: + +- is . + +- The length of is less than 4. + +- The length of is not a multiple of 4. @@ -226,14 +226,14 @@ For more information about XSD data types, see the [XML Data Types Reference](ht Returns as a . A that is obtained from . - method. This code example is part of a larger example that is provided for the class. - + method. This code example is part of a larger example that is provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/System.Runtime.Remoting.Metadata.W3cXsd2001.SoapBase64Binary/CPP/demo.cpp" id="Snippet12"::: - :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet12"::: - + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet12"::: + ]]> @@ -259,14 +259,14 @@ For more information about XSD data types, see the [XML Data Types Reference](ht Gets or sets the binary representation of a 64-bit number. A array that contains the binary representation of a 64-bit number. - property. This code example is part of a larger example that is provided for the class. - + property. This code example is part of a larger example that is provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/System.Runtime.Remoting.Metadata.W3cXsd2001.SoapBase64Binary/CPP/demo.cpp" id="Snippet14"::: - :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet14"::: - + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet14"::: + ]]> @@ -292,14 +292,14 @@ For more information about XSD data types, see the [XML Data Types Reference](ht Gets the XML Schema definition language (XSD) of the current SOAP type. A that indicates the XSD of the current SOAP type. - property. This code example is part of a larger example that is provided for the class. - + property. This code example is part of a larger example that is provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/System.Runtime.Remoting.Metadata.W3cXsd2001.SoapBase64Binary/CPP/demo.cpp" id="Snippet16"::: - :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet16"::: - + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Remoting.Metadata.W3cXsd2001/SoapBase64Binary/Overview/demo.cs" id="Snippet16"::: + ]]> diff --git a/xml/System.Runtime.Versioning/FrameworkName.xml b/xml/System.Runtime.Versioning/FrameworkName.xml index f4319f73c37..493c3f9af86 100644 --- a/xml/System.Runtime.Versioning/FrameworkName.xml +++ b/xml/System.Runtime.Versioning/FrameworkName.xml @@ -124,58 +124,58 @@ A string that contains .NET Framework version information. Initializes a new instance of the class from a string that contains information about a version of .NET. - constructor parses a string in the following format. - + constructor parses a string in the following format. + `*identifier*,Version=*versionNumber*[,Profile=*profileName*]` - - Components in square brackets are optional. The following table describes each component. - -|Component|Description| -|---------------|-----------------| -|*identifier*|An arbitrary string that identifies this instance.| -|*versionNumber*|A string that represents the version of .NET, in the form [v]*major*.*minor*[.*build*.*revision*], where "v" can be either uppercase or lowercase, and the brackets denote optional elements of a version number.| -|*profileName*|An arbitrary string that represents the profile of the .NET version. Typically, it is used to denote some subset of the .NET Framework, such as the .NET Compact Framework or Silverlight.| - - If both *versionNumber* and *profileName* are present, they can appear in any order after *identifier*. These strings are defined by the "Version" and "Profile" keywords, which are not case-sensitive. - - The values of the *identifier*, *versionNumber*, and *profileName* components define the values of this object's properties as follows: - -- Any leading or trailing white space in the *identifier* component is removed and the resulting string is assigned to the property. - -- Any leading or trailing white space and the initial "v" or "V", if present, are removed from the `versionNumber`. The returned string is then passed to the constructor, and the resulting object is assigned to the property. - -- Any leading or trailing white space in the `profileName` component is removed and the resulting string is assigned to the property. - - The following are examples of valid strings that can be passed to the constructor: - -- .NET Framework, Version=4.0 - -- .NETFramework, Version=4.0 - -- .NET Framework, Version=2.0, Profile=Compact - -- .NET Framework, Version=v4.0, Profile=Compact - -- .NET Framework, Profile=Full, Version=2.0.0 - + + Components in square brackets are optional. The following table describes each component. + +|Component|Description| +|---------------|-----------------| +|*identifier*|An arbitrary string that identifies this instance.| +|*versionNumber*|A string that represents the version of .NET, in the form [v]*major*.*minor*[.*build*.*revision*], where "v" can be either uppercase or lowercase, and the brackets denote optional elements of a version number.| +|*profileName*|An arbitrary string that represents the profile of the .NET version. Typically, it is used to denote some subset of the .NET Framework, such as the .NET Compact Framework or Silverlight.| + + If both *versionNumber* and *profileName* are present, they can appear in any order after *identifier*. These strings are defined by the "Version" and "Profile" keywords, which are not case-sensitive. + + The values of the *identifier*, *versionNumber*, and *profileName* components define the values of this object's properties as follows: + +- Any leading or trailing white space in the *identifier* component is removed and the resulting string is assigned to the property. + +- Any leading or trailing white space and the initial "v" or "V", if present, are removed from the `versionNumber`. The returned string is then passed to the constructor, and the resulting object is assigned to the property. + +- Any leading or trailing white space in the `profileName` component is removed and the resulting string is assigned to the property. + + The following are examples of valid strings that can be passed to the constructor: + +- .NET Framework, Version=4.0 + +- .NETFramework, Version=4.0 + +- .NET Framework, Version=2.0, Profile=Compact + +- .NET Framework, Version=v4.0, Profile=Compact + +- .NET Framework, Profile=Full, Version=2.0.0 + ]]> - is . - - -or- - - has fewer than two components or more than three components. - - -or- - - does not include a major and minor version number. - - -or- - + is . + + -or- + + has fewer than two components or more than three components. + + -or- + + does not include a major and minor version number. + + -or- + does not include a valid version number. is . @@ -231,20 +231,20 @@ An object that contains .NET Framework version information. Initializes a new instance of the class from a string and a object that identify a .NET version. - class requires that a object include at least a major and minor version number. - + class requires that a object include at least a major and minor version number. + ]]> is . - is . - - -or- - + is . + + -or- + is . @@ -302,20 +302,20 @@ A profile name. Initializes a new instance of the class from a string, a object that identifies a .NET version, and a profile name. - class requires that a object include at least a major and minor version number. - + class requires that a object include at least a major and minor version number. + ]]> is . - is . - - -or- - + is . + + -or- + is . @@ -385,11 +385,11 @@ if every component of the current object matches the corresponding component of ; otherwise, . - object and calls the overload to test for equality. If the conversion does not succeed or if `obj` is `null`, the method returns `false`. - + object and calls the overload to test for equality. If the conversion does not succeed or if `obj` is `null`, the method returns `false`. + ]]> @@ -452,17 +452,17 @@ if every component of the current object matches the corresponding component of ; otherwise, . - property values of the current instance and `other`. - -- An ordinal comparison of the property values of the current instance and `other`. - -- A comparison of the version properties by calling the method. - + property values of the current instance and `other`. + +- An ordinal comparison of the property values of the current instance and `other`. + +- A comparison of the version properties by calling the method. + ]]> @@ -509,17 +509,17 @@ Gets the full name of this object. The full name of this object. - property has the following format: - - *identifier*, Version=*version*[, Profile=*profile*] - - where *identifier* corresponds to the property, `version` is equivalent to calling on the value of the property, and `profile` corresponds to the property. If a profile has not been assigned to the object, the profile component is not included in the string. - - The value of the property is identical to the string returned by the method. - + property has the following format: + + *identifier*, Version=*version*[, Profile=*profile*] + + where *identifier* corresponds to the property, `version` is equivalent to calling on the value of the property, and `profile` corresponds to the property. If a profile has not been assigned to the object, the profile component is not included in the string. + + The value of the property is identical to the string returned by the method. + ]]> @@ -617,11 +617,11 @@ Gets the identifier of this object. The identifier of this object. - property is set in the class constructor. - + property is set in the class constructor. + ]]> @@ -676,21 +676,21 @@ if the and parameters represent the same .NET Framework version; otherwise, . - method defines the operation of the equality operator for objects. - - Languages that do not support custom operators can call the method instead. - - - -## Examples - The following example uses the equality operator to determine whether a object that represents the running version of .NET is equal to a supported version of .NET. Note that the two versions are not equal because they do not have identical version numbers. - + method defines the operation of the equality operator for objects. + + Languages that do not support custom operators can call the method instead. + + + +## Examples + The following example uses the equality operator to determine whether a object that represents the running version of .NET is equal to a supported version of .NET. Note that the two versions are not equal because they do not have identical version numbers. + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Versioning/FrameworkName/op_Equality/Operators1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.versioning.frameworkname.operators/vb/Operators1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.versioning.frameworkname.operators/vb/Operators1.vb" id="Snippet1"::: + ]]> @@ -745,21 +745,21 @@ if the and parameters represent different .NET versions; otherwise, . - method defines the operation of the inequality operator for objects. - - Languages that do not support custom operators can test for inequality by calling the method and reversing its value. - - - -## Examples - The following example uses the equality operator to determine whether a object that represents the running version of .NET is equal to a supported version of .NET. Note that the two versions are not equal because they do not have identical version numbers. - + method defines the operation of the inequality operator for objects. + + Languages that do not support custom operators can test for inequality by calling the method and reversing its value. + + + +## Examples + The following example uses the equality operator to determine whether a object that represents the running version of .NET is equal to a supported version of .NET. Note that the two versions are not equal because they do not have identical version numbers. + :::code language="csharp" source="~/snippets/csharp/System.Runtime.Versioning/FrameworkName/op_Equality/Operators1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.versioning.frameworkname.operators/vb/Operators1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.runtime.versioning.frameworkname.operators/vb/Operators1.vb" id="Snippet2"::: + ]]> @@ -812,11 +812,11 @@ Gets the profile name of this object. The profile name of this object. - property is set in the class constructor. - + property is set in the class constructor. + ]]> @@ -870,17 +870,17 @@ Returns the string representation of this object. A string that represents this object. - method has the following format: - - *identifier*, Version=*version*[, Profile=*profile*] - - where *identifier* corresponds to the property, `version` is equivalent to calling on the value of the property, and `profile` corresponds to the property. If a profile has not been assigned to the object, the profile component is not included in the returned string. - - The value returned by the method is identical to the value of the property. - + method has the following format: + + *identifier*, Version=*version*[, Profile=*profile*] + + where *identifier* corresponds to the property, `version` is equivalent to calling on the value of the property, and `profile` corresponds to the property. If a profile has not been assigned to the object, the profile component is not included in the returned string. + + The value returned by the method is identical to the value of the property. + ]]> @@ -933,11 +933,11 @@ Gets the version of this object. An object that contains version information about this object. - property is set in the class constructor. - + property is set in the class constructor. + ]]> diff --git a/xml/System.Security.AccessControl/CommonAcl.xml b/xml/System.Security.AccessControl/CommonAcl.xml index 8e7de82979b..d151e044361 100644 --- a/xml/System.Security.AccessControl/CommonAcl.xml +++ b/xml/System.Security.AccessControl/CommonAcl.xml @@ -36,46 +36,46 @@ Represents an access control list (ACL) and is the base class for the and classes. - , , , and flags on all ACEs in leaf object ACLs are cleared. - -- ACEs that have an flag in the absence of the or flag are meaningless; they are removed. - -- The flag in the absence of the or flag can be removed. - -- ACEs that have an value of or in discretionary access control lists (DACLs) are removed. - -- Any audit ACE that does not specify either or is removed. - -- On DACLs, SystemAudit and SystemAlarm ACEs are removed. - -- On system access control lists (SACLs), AccessAllowed and AccessDenied ACEs are removed. - - Canonical order is maintained according to the following algorithm: - -- Explicit ACEs take precedence over inherited ACEs; this rule applies to both DACLs and SACLs. - -- In DACLs, among the explicit ACEs, ACEs that deny access take precedence over ACEs that allow access. For directory object ACLs, the nonobject ACEs come before object ACEs. - -- All common ACEs take precedence over noncommon ACEs. - -- Inherited ACEs maintain their relative order after canonicity. - -- Unrecognized and custom ACEs are disallowed in both DACLs and SACLs. - -- Within contiguous ranges (explicit AccessDenied and AccessAllowed ACEs on DACLs, all explicit ACEs on SACLs), the ACEs are sorted by using the methods of the objects associated with the ACEs. - - Adjacent ACEs are combined, if appropriate. This reduces the size of the ACL without affecting the access control semantics it grants. - + , , , and flags on all ACEs in leaf object ACLs are cleared. + +- ACEs that have an flag in the absence of the or flag are meaningless; they are removed. + +- The flag in the absence of the or flag can be removed. + +- ACEs that have an value of or in discretionary access control lists (DACLs) are removed. + +- Any audit ACE that does not specify either or is removed. + +- On DACLs, SystemAudit and SystemAlarm ACEs are removed. + +- On system access control lists (SACLs), AccessAllowed and AccessDenied ACEs are removed. + + Canonical order is maintained according to the following algorithm: + +- Explicit ACEs take precedence over inherited ACEs; this rule applies to both DACLs and SACLs. + +- In DACLs, among the explicit ACEs, ACEs that deny access take precedence over ACEs that allow access. For directory object ACLs, the nonobject ACEs come before object ACEs. + +- All common ACEs take precedence over noncommon ACEs. + +- Inherited ACEs maintain their relative order after canonicity. + +- Unrecognized and custom ACEs are disallowed in both DACLs and SACLs. + +- Within contiguous ranges (explicit AccessDenied and AccessAllowed ACEs on DACLs, all explicit ACEs on SACLs), the ACEs are sorted by using the methods of the objects associated with the ACEs. + + Adjacent ACEs are combined, if appropriate. This reduces the size of the ACL without affecting the access control semantics it grants. + ]]> diff --git a/xml/System.Security.AccessControl/EventWaitHandleSecurity.xml b/xml/System.Security.AccessControl/EventWaitHandleSecurity.xml index d201604780a..7dae6314bd2 100644 --- a/xml/System.Security.AccessControl/EventWaitHandleSecurity.xml +++ b/xml/System.Security.AccessControl/EventWaitHandleSecurity.xml @@ -44,56 +44,56 @@ Represents the Windows access control security applied to a named system wait handle. This class cannot be inherited. - object specifies access rights for a named system wait handle, and also specifies the way access attempts are audited. Access rights to the wait handle are expressed as rules, with each access rule represented by an object. Each auditing rule is represented by an object. - - This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. An or object might represent more than one ACE. - + object specifies access rights for a named system wait handle, and also specifies the way access attempts are audited. Access rights to the wait handle are expressed as rules, with each access rule represented by an object. Each auditing rule is represented by an object. + + This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. An or object might represent more than one ACE. + > [!NOTE] -> An object can represent a local wait handle or a named system wait handle. Windows access control security is meaningful only for named system wait handles. - - The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: - -- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. - -- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. - -- Manipulating security descriptor flags, which should be under resource manager control only. - -- Creating invalid combinations of ACE flags. - -- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. - -- Inserting meaningless ACEs into ACLs. - - The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: - -- Low-level tasks that are normally performed by the resource manager. - -- Adding or removing access control entries in ways that do not maintain the canonical ordering. - - To modify Windows access control security for a named wait handle, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. - +> An object can represent a local wait handle or a named system wait handle. Windows access control security is meaningful only for named system wait handles. + + The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: + +- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. + +- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. + +- Manipulating security descriptor flags, which should be under resource manager control only. + +- Creating invalid combinations of ACE flags. + +- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. + +- Inserting meaningless ACEs into ACLs. + + The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: + +- Low-level tasks that are normally performed by the resource manager. + +- Adding or removing access control entries in ways that do not maintain the canonical ordering. + + To modify Windows access control security for a named wait handle, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. + > [!IMPORTANT] -> Changes you make to an object do not affect the access levels of the named wait handle until you call the method to assign the altered security object to the named wait handle. - - To copy access control security from one wait handle to another, use the method to get an object representing the access and audit rules for the first wait handle, and then use the method, or a constructor that accepts an object, to assign those rules to the second wait handle. - - Users with an investment in the security descriptor definition language (SDDL) can use the method to set access rules for a named wait handle, and the method to obtain a string that represents the access rules in SDDL format. This is not recommended for new development. - - - -## Examples - The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates an object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. - +> Changes you make to an object do not affect the access levels of the named wait handle until you call the method to assign the altered security object to the named wait handle. + + To copy access control security from one wait handle to another, use the method to get an object representing the access and audit rules for the first wait handle, and then use the method, or a constructor that accepts an object, to assign those rules to the second wait handle. + + Users with an investment in the security descriptor definition language (SDDL) can use the method to set access rules for a named wait handle, and the method to obtain a string that represents the access rules in SDDL format. This is not recommended for new development. + + + +## Examples + The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates an object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/EventWaitHandleAccessRule/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -132,11 +132,11 @@ Initializes a new instance of the class with default values. - object always starts with an empty discretionary access list (DACL), which denies all access for all users. - + object always starts with an empty discretionary access list (DACL), which denies all access for all users. + ]]> @@ -174,11 +174,11 @@ Gets the enumeration type that the class uses to represent access rights. A object representing the enumeration. - class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. - + class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. + ]]> @@ -230,23 +230,23 @@ Creates a new access control rule for the specified user, with the specified access rights, access control, and flags. An object representing the specified rights for the specified user. - class. - + class. + > [!NOTE] -> Although inheritance and propagation flags are meaningless for named events, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. - +> Although inheritance and propagation flags are meaningless for named events, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -285,11 +285,11 @@ Gets the type that the class uses to represent access rules. A object representing the class. - class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. - + class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. + ]]> @@ -330,22 +330,22 @@ The access control rule to add. Searches for a matching access control rule with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. - - - -## Examples - The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates an object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. - + method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. + + + +## Examples + The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates an object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/EventWaitHandleAccessRule/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -388,11 +388,11 @@ The audit rule to add. The user specified by this rule determines the search. Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. - + method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. + ]]> @@ -446,23 +446,23 @@ Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, and the outcome that triggers the audit rule. An object representing the specified audit rule for the specified user. The return type of the method is the base class, , but the return value can be cast safely to the derived class. - class. - + class. + > [!NOTE] -> Although inheritance and propagation flags are meaningless for named events, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. - +> Although inheritance and propagation flags are meaningless for named events, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -501,11 +501,11 @@ Gets the type that the class uses to represent audit rules. A object representing the class. - class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. - + class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. + ]]> @@ -548,27 +548,27 @@ if a compatible rule is found; otherwise, . - is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - + is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + > [!IMPORTANT] -> Although you can specify inheritance and propagation flags for event access rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named events, and they make the maintenance of access rules more complicated. - - - -## Examples - The following code example demonstrates the use of the method to remove rights from an rule in an object. It also shows that other rights in `rule` are ignored. - - The example creates an object and adds rules that allow and deny various rights for the current user. The rights allowed include , , and . The example then creates a new rule for the current user, including and rights, and uses that rule with the method to remove from the rule in the object. The right in `rule` is ignored. - +> Although you can specify inheritance and propagation flags for event access rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named events, and they make the maintenance of access rules more complicated. + + + +## Examples + The following code example demonstrates the use of the method to remove rights from an rule in an object. It also shows that other rights in `rule` are ignored. + + The example creates an object and adds rules that allow and deny various rights for the current user. The rights allowed include , , and . The example then creates a new rule for the current user, including and rights, and uses that rule with the method to remove from the rule in the object. The right in `rule` is ignored. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/EventWaitHandleSecurity/RemoveAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -611,24 +611,24 @@ An that specifies the user and to search for. Any rights specified by this rule are ignored. Searches for all access control rules with the same user and (allow or deny) as the specified rule and, if found, removes them. - is searched for rules that have the same user and the same value as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. - - - -## Examples - The following code example shows that the method removes all rules that match user and , ignoring rights. - - The example creates an object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the rule. The example then creates a new rule that allows the current user to take ownership, and uses that rule to remove the rule from the object. - + is searched for rules that have the same user and the same value as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. + + + +## Examples + The following code example shows that the method removes all rules that match user and , ignoring rights. + + The example creates an object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the rule. The example then creates a new rule that allows the current user to take ownership, and uses that rule to remove the rule from the object. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/EventWaitHandleSecurity/RemoveAccessRuleAll/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: + ]]> @@ -671,27 +671,27 @@ The to remove. Searches for an access control rule that exactly matches the specified rule and, if found, removes it. - are not affected. - + are not affected. + > [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - - - -## Examples - The following code example shows that the method requires an exact match in order to remove a rule, and that rules to allow and deny rights are independent of each other. - - The example creates an object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the access rule. The example then passes the original rule to the method, and displays the results, showing that nothing is deleted. The example then constructs a rule that matches the rule in the object, and successfully uses the method to remove the rule. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + + + +## Examples + The following code example shows that the method requires an exact match in order to remove a rule, and that rules to allow and deny rights are independent of each other. + + The example creates an object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the access rule. The example then passes the original rule to the method, and displays the results, showing that nothing is deleted. The example then constructs a rule that matches the rule in the object, and successfully uses the method to remove the rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/EventWaitHandleSecurity/RemoveAccessRuleSpecific/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: + ]]> @@ -736,14 +736,14 @@ if a compatible rule is found; otherwise, . - is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - + is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + > [!IMPORTANT] -> Although you can specify inheritance and propagation flags for event audit rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named events, and they make the maintenance of audit rules more complicated. - +> Although you can specify inheritance and propagation flags for event audit rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named events, and they make the maintenance of audit rules more complicated. + ]]> @@ -786,11 +786,11 @@ An that specifies the user to search for. Any rights specified by this rule are ignored. Searches for all audit rules with the same user as the specified rule and, if found, removes them. - is searched for audit rules that have the same user as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. - + is searched for audit rules that have the same user as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. + ]]> @@ -833,14 +833,14 @@ The to remove. Searches for an audit rule that exactly matches the specified rule and, if found, removes it. - [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + ]]> @@ -883,24 +883,24 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all access control rules with the same user as the specified rule, regardless of , and then adds the specified rule. - method replaces all rules for the matching user with the rule specified for the match. - - The example creates an object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace both of the existing rules with the new rule. - + method replaces all rules for the matching user with the rule specified for the match. + + The example creates an object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace both of the existing rules with the new rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/EventWaitHandleSecurity/ResetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -943,26 +943,26 @@ The to add. The user and of this rule determine the rules to remove before this rule is added. Removes all access control rules with the same user and (allow or deny) as the specified rule, and then adds the specified rule. - , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. - - If there are no rules whose user and match the specified rule, `rule` is added. - - - -## Examples - The following code example shows how the method removes all rules that match both the user and the of `rule`, replacing them with `rule`. - - The example creates an object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace the existing rule with the new rule. The rule that denies access is not affected. - + , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. + + If there are no rules whose user and match the specified rule, `rule` is added. + + + +## Examples + The following code example shows how the method removes all rules that match both the user and the of `rule`, replacing them with `rule`. + + The example creates an object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace the existing rule with the new rule. The rule that denies access is not affected. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/EventWaitHandleSecurity/SetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.EventWaitHandleSecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -1005,11 +1005,11 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all audit rules with the same user as the specified rule, regardless of the value, and then adds the specified rule. - diff --git a/xml/System.Security.AccessControl/MutexSecurity.xml b/xml/System.Security.AccessControl/MutexSecurity.xml index 948f5c01cc4..abc21e43799 100644 --- a/xml/System.Security.AccessControl/MutexSecurity.xml +++ b/xml/System.Security.AccessControl/MutexSecurity.xml @@ -44,54 +44,54 @@ Represents the Windows access control security for a named mutex. This class cannot be inherited. - object specifies access rights for a named system mutex, and also specifies how access attempts are audited. Access rights to the mutex are expressed as rules, with each access rule represented by a object. Each auditing rule is represented by a object. - - This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. A or object might represent more than one ACE. - + object specifies access rights for a named system mutex, and also specifies how access attempts are audited. Access rights to the mutex are expressed as rules, with each access rule represented by a object. Each auditing rule is represented by a object. + + This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. A or object might represent more than one ACE. + > [!NOTE] -> A object can represent a local mutex or a named system mutex. Windows access control security is meaningful only for named system mutexes. - - The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: - -- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. - -- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. - -- Manipulating security descriptor flags, which should be under resource manager control only. - -- Creating invalid combinations of ACE flags. - -- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. - -- Inserting meaningless ACEs into ACLs. - - The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: - -- Low-level tasks that are normally performed by the resource manager. - -- Adding or removing access control entries in ways that do not maintain the canonical ordering. - - To modify Windows access control security for a named mutex, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. - +> A object can represent a local mutex or a named system mutex. Windows access control security is meaningful only for named system mutexes. + + The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: + +- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. + +- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. + +- Manipulating security descriptor flags, which should be under resource manager control only. + +- Creating invalid combinations of ACE flags. + +- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. + +- Inserting meaningless ACEs into ACLs. + + The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: + +- Low-level tasks that are normally performed by the resource manager. + +- Adding or removing access control entries in ways that do not maintain the canonical ordering. + + To modify Windows access control security for a named mutex, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. + > [!IMPORTANT] -> Changes you make to a object do not affect the access levels of the named mutex until you call the method to assign the altered security object to the named mutex. - - To copy access control security from one mutex to another, use the method to get a object representing the access and audit rules for the first mutex, and then use the method, or a constructor that accepts a object, to assign those rules to the second mutex. - +> Changes you make to a object do not affect the access levels of the named mutex until you call the method to assign the altered security object to the named mutex. + + To copy access control security from one mutex to another, use the method to get a object representing the access and audit rules for the first mutex, and then use the method, or a constructor that accepts a object, to assign those rules to the second mutex. + Users with an investment in the security descriptor definition language (SDDL) can use the method to set access rules for a named mutex, and the method to obtain a string that represents the access rules in SDDL format. This is not recommended for new development. - -## Examples - The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. - + +## Examples + The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/MutexAccessRule/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -139,11 +139,11 @@ Initializes a new instance of the class with default values. - object always starts with an empty discretionary access list (DACL), which denies all access for all users. - + object always starts with an empty discretionary access list (DACL), which denies all access for all users. + ]]> @@ -189,13 +189,13 @@ A combination of flags specifying the sections to retrieve. Initializes a new instance of the class with the specified sections of the access control security rules from the system mutex with the specified name. - object. - - Caution must be exercised when working with named system objects. If there is a system object named `name` that is not a mutex, its control access security might be retrieved. - + object. + + Caution must be exercised when working with named system objects. If there is a system object named `name` that is not a mutex, its control access security might be retrieved. + ]]> There is no system object with the specified name. @@ -234,11 +234,11 @@ Gets the enumeration that the class uses to represent access rights. A object representing the enumeration. - class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. - + class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. + ]]> @@ -290,23 +290,23 @@ Creates a new access control rule for the specified user, with the specified access rights, access control, and flags. A object representing the specified rights for the specified user. - class. - + class. + > [!NOTE] -> Although inheritance and propagation flags are meaningless for named mutexes, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. - +> Although inheritance and propagation flags are meaningless for named mutexes, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -345,11 +345,11 @@ Gets the type that the class uses to represent access rules. A object representing the class. - class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. - + class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. + ]]> @@ -390,22 +390,22 @@ The access control rule to add. Searches for a matching access control rule with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. - - - -## Examples - The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. - + method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. + + + +## Examples + The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/MutexAccessRule/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -450,11 +450,11 @@ The audit rule to add. The user specified by this rule determines the search. Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. - + method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. + ]]> @@ -506,23 +506,23 @@ Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, and the outcome that triggers the audit rule. A object representing the specified audit rule for the specified user. The return type of the method is the base class, , but the return value can be cast safely to the derived class. - class. - + class. + > [!NOTE] -> Although inheritance and propagation flags are meaningless for named mutexes, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. - +> Although inheritance and propagation flags are meaningless for named mutexes, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -561,11 +561,11 @@ Gets the type that the class uses to represent audit rules. A object representing the class. - class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. - + class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. + ]]> @@ -608,27 +608,27 @@ if a compatible rule is found; otherwise . - is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - + is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + > [!IMPORTANT] -> Although you can specify inheritance and propagation flags for mutex access rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named mutexes, and they make the maintenance of access rules more complicated. - - - -## Examples - The following code example demonstrates the use of the method to remove rights from an rule in a object. It also shows that other rights in `rule` are ignored. - - The example creates a object and adds rules that allow and deny various rights for the current user. The rights allowed include , , and . The example then creates a new rule for the current user, including and rights, and uses that rule with the method to remove from the rule in the object. The extraneous right in `rule` is ignored. - +> Although you can specify inheritance and propagation flags for mutex access rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named mutexes, and they make the maintenance of access rules more complicated. + + + +## Examples + The following code example demonstrates the use of the method to remove rights from an rule in a object. It also shows that other rights in `rule` are ignored. + + The example creates a object and adds rules that allow and deny various rights for the current user. The rights allowed include , , and . The example then creates a new rule for the current user, including and rights, and uses that rule with the method to remove from the rule in the object. The extraneous right in `rule` is ignored. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/MutexSecurity/RemoveAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -671,24 +671,24 @@ A that specifies the user and to search for. Any rights specified by this rule are ignored. Searches for all access control rules with the same user and (allow or deny) as the specified rule and, if found, removes them. - object is searched for rules that have the same user and the same value as `rule`. Any rights specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. - - - -## Examples - The following code example shows that the method removes all rules that match user and , ignoring rights. - - The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the rule. The example then creates a new rule that allows the current user to take ownership, and uses that rule to remove the rule from the object. - + object is searched for rules that have the same user and the same value as `rule`. Any rights specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. + + + +## Examples + The following code example shows that the method removes all rules that match user and , ignoring rights. + + The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the rule. The example then creates a new rule that allows the current user to take ownership, and uses that rule to remove the rule from the object. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/MutexSecurity/RemoveAccessRuleAll/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: + ]]> @@ -731,27 +731,27 @@ The to remove. Searches for an access control rule that exactly matches the specified rule and, if found, removes it. - are not affected. - + are not affected. + > [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - - - -## Examples - The following code example shows that the method requires an exact match in order to remove a rule, and that rules to allow and deny rights are independent of each other. - - The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the access rule. The example then passes the original rule to the method, and displays the results, showing that nothing is deleted. The example then constructs a rule that matches the rule in the object, and successfully uses the method to remove the rule. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + + + +## Examples + The following code example shows that the method requires an exact match in order to remove a rule, and that rules to allow and deny rights are independent of each other. + + The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the access rule. The example then passes the original rule to the method, and displays the results, showing that nothing is deleted. The example then constructs a rule that matches the rule in the object, and successfully uses the method to remove the rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/MutexSecurity/RemoveAccessRuleSpecific/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: + ]]> @@ -796,14 +796,14 @@ if a compatible rule is found; otherwise, . - is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - + is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + > [!IMPORTANT] -> Although you can specify inheritance and propagation flags for mutex audit rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named mutexes, and they make the maintenance of audit rules more complicated. - +> Although you can specify inheritance and propagation flags for mutex audit rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named mutexes, and they make the maintenance of audit rules more complicated. + ]]> @@ -846,11 +846,11 @@ A that specifies the user to search for. Any rights specified by this rule are ignored. Searches for all audit rules with the same user as the specified rule and, if found, removes them. - is searched for audit rules that have the same user as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. - + is searched for audit rules that have the same user as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. + ]]> @@ -893,14 +893,14 @@ The to be removed. Searches for an audit rule that exactly matches the specified rule and, if found, removes it. - [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + ]]> @@ -943,24 +943,24 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all access control rules with the same user as the specified rule, regardless of , and then adds the specified rule. - method replaces all rules for the matching user with the rule specified for the match. - - The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace both of the existing rules with the new rule. - + method replaces all rules for the matching user with the rule specified for the match. + + The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace both of the existing rules with the new rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/MutexSecurity/ResetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -1003,26 +1003,26 @@ The to add. The user and of this rule determine the rules to remove before this rule is added. Removes all access control rules with the same user and (allow or deny) as the specified rule, and then adds the specified rule. - , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. - - If there are no rules whose user and match the specified rule, `rule` is added. - - - -## Examples - The following code example shows how the method removes all rules that match both the user and the of `rule`, replacing them with `rule`. - - The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace the existing Allow rule with the new rule. The rule that denies access is not affected. - + , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. + + If there are no rules whose user and match the specified rule, `rule` is added. + + + +## Examples + The following code example shows how the method removes all rules that match both the user and the of `rule`, replacing them with `rule`. + + The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace the existing Allow rule with the new rule. The rule that denies access is not affected. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/MutexSecurity/SetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.MutexSecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -1065,11 +1065,11 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all audit rules with the same user as the specified rule, regardless of the value, and then adds the specified rule. - diff --git a/xml/System.Security.AccessControl/RegistrySecurity.xml b/xml/System.Security.AccessControl/RegistrySecurity.xml index 35cadd386a8..7083f7f8d86 100644 --- a/xml/System.Security.AccessControl/RegistrySecurity.xml +++ b/xml/System.Security.AccessControl/RegistrySecurity.xml @@ -58,73 +58,73 @@ Represents the Windows access control security for a registry key. This class cannot be inherited. - object specifies access rights for a registry key, and also specifies how access attempts are audited. Access rights to the registry key are expressed as rules, with each access rule represented by a object. Each auditing rule is represented by a object. - - This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. A or object might represent more than one ACE. - + object specifies access rights for a registry key, and also specifies how access attempts are audited. Access rights to the registry key are expressed as rules, with each access rule represented by a object. Each auditing rule is represented by a object. + + This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. A or object might represent more than one ACE. + > [!NOTE] -> Windows access control security can only be applied to registry keys. It cannot be applied to individual key/value pairs stored in a key. - - The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: - -- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. - -- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. - -- Manipulating security descriptor flags, which should be under resource manager control only. - -- Creating invalid combinations of ACE flags. - -- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. - -- Inserting meaningless ACEs into ACLs. - - The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: - -- Low-level tasks that are normally performed by the resource manager. - -- Adding or removing access control entries in ways that do not maintain the canonical ordering. - - To modify Windows access control security for a registry key, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. - +> Windows access control security can only be applied to registry keys. It cannot be applied to individual key/value pairs stored in a key. + + The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: + +- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. + +- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. + +- Manipulating security descriptor flags, which should be under resource manager control only. + +- Creating invalid combinations of ACE flags. + +- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. + +- Inserting meaningless ACEs into ACLs. + + The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: + +- Low-level tasks that are normally performed by the resource manager. + +- Adding or removing access control entries in ways that do not maintain the canonical ordering. + + To modify Windows access control security for a registry key, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. + > [!IMPORTANT] -> Changes you make to a object do not affect the access levels of the registry key until you call the method to assign the altered security object to the registry key. - - To copy access control security from one registry key to another, use the method to get a object representing the access and audit rules for the first registry key, and then use the method to assign those rules to the second registry key. You can also assign the rules to a second registry key with an or method that takes a object parameter. - - Users with an investment in the security descriptor definition language (SDDL) can use the method to set access rules for a registry key, and the method to obtain a string that represents the access rules in SDDL format. This is not recommended for new development. - - - -## Examples - This section contains two code examples. The first example shows how compatible rules merge when added and removed, and the second shows how inheritance and propagation flags affect the addition and deletion of rules. - - Example 1 - - The following code example shows how the method removes rights from a compatible rule, and how the method merges rights with compatible rules. - - The example creates a object and adds a rule that allows the current user rights. The example then creates a rule that grants the user , with the same inheritance and propagation rights as the first rule, and uses the method to remove this new rule from the object. is a constituent of , so it is removed from the compatible rule. The rules in the object are displayed, showing the remaining constituents of . - - The example code then calls the method to merge the right back into the rule in the object. - +> Changes you make to a object do not affect the access levels of the registry key until you call the method to assign the altered security object to the registry key. + + To copy access control security from one registry key to another, use the method to get a object representing the access and audit rules for the first registry key, and then use the method to assign those rules to the second registry key. You can also assign the rules to a second registry key with an or method that takes a object parameter. + + Users with an investment in the security descriptor definition language (SDDL) can use the method to set access rules for a registry key, and the method to obtain a string that represents the access rules in SDDL format. This is not recommended for new development. + + + +## Examples + This section contains two code examples. The first example shows how compatible rules merge when added and removed, and the second shows how inheritance and propagation flags affect the addition and deletion of rules. + + Example 1 + + The following code example shows how the method removes rights from a compatible rule, and how the method merges rights with compatible rules. + + The example creates a object and adds a rule that allows the current user rights. The example then creates a rule that grants the user , with the same inheritance and propagation rights as the first rule, and uses the method to remove this new rule from the object. is a constituent of , so it is removed from the compatible rule. The rules in the object are displayed, showing the remaining constituents of . + + The example code then calls the method to merge the right back into the rule in the object. + > [!NOTE] -> This example does not attach the security object to a object. The second example in this section attaches a security object, and so do the examples in and . - +> This example does not attach the security object to a object. The second example in this section attaches a security object, and so do the examples in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistrySecurity/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: - - Example 2 - - The following code example demonstrates access rules with inheritance and propagation. The example creates a object, then creates and adds two rules that have the flag. The first rule has no propagation flags, while the second has and . - - The program displays the rules in the object, and then uses the object to create a subkey. The program creates a child subkey and a grandchild subkey, then displays the security for each subkey. Finally, the program deletes the test keys. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: + + Example 2 + + The following code example demonstrates access rules with inheritance and propagation. The example creates a object, then creates and adds two rules that have the flag. The first rule has no propagation flags, while the second has and . + + The program displays the rules in the object, and then uses the object to create a subkey. The program creates a child subkey and a grandchild subkey, then displays the security for each subkey. Finally, the program deletes the test keys. + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistryAccessRule/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistryAccessRule.ctor2/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistryAccessRule.ctor2/VB/source.vb" id="Snippet1"::: + ]]> @@ -161,11 +161,11 @@ Initializes a new instance of the class with default values. - object always starts with an empty discretionary access list (DACL), which denies all access for all users. - + object always starts with an empty discretionary access list (DACL), which denies all access for all users. + ]]> @@ -206,11 +206,11 @@ Gets the enumeration type that the class uses to represent access rights. A object representing the enumeration. - class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. - + class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. + ]]> @@ -265,23 +265,23 @@ Creates a new access control rule for the specified user, with the specified access rights, access control, and flags. A object representing the specified rights for the specified user. - class. - + class. + > [!NOTE] -> Although you can specify the flag, there is no point in doing so. For the purposes of access control, the name/value pairs in a subkey are not separate objects. The access rights to name/value pairs are controlled by the rights of the subkey. Furthermore, since all subkeys are containers (that is, they can contain other subkeys), they are not affected by the flag. Finally, specifying the flag needlessly complicates the maintenance of rules, because it interferes with the normal combination of compatible rules. - +> Although you can specify the flag, there is no point in doing so. For the purposes of access control, the name/value pairs in a subkey are not separate objects. The access rights to name/value pairs are controlled by the rights of the subkey. Furthermore, since all subkeys are containers (that is, they can contain other subkeys), they are not affected by the flag. Finally, specifying the flag needlessly complicates the maintenance of rules, because it interferes with the normal combination of compatible rules. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -323,11 +323,11 @@ Gets the type that the class uses to represent access rules. A object representing the class. - class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. - + class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. + ]]> @@ -371,30 +371,30 @@ The access control rule to add. Searches for a matching access control with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. - - Rules cannot be merged if they have different inheritance flags. For example, if a user is allowed read access with no inheritance flags, and is used to add a rule giving the user write access with inheritance for subkeys (), the two rules cannot be merged. - - Rules with different values are never merged. - - Rules express rights in the most economical way. For example, if a user has , and rights, and you add a rule allowing rights, the user has all the constituent parts of rights. If you query the user's rights, you will see a rule containing rights. Similarly, if you remove rights, the other constituents of rights will reappear. - - - -## Examples - The following code example creates registry access rules and adds them to a object, showing how rules that allow and deny rights remain separate, while compatible rules of the same kind are merged. - + method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. + + Rules cannot be merged if they have different inheritance flags. For example, if a user is allowed read access with no inheritance flags, and is used to add a rule giving the user write access with inheritance for subkeys (), the two rules cannot be merged. + + Rules with different values are never merged. + + Rules express rights in the most economical way. For example, if a user has , and rights, and you add a rule allowing rights, the user has all the constituent parts of rights. If you query the user's rights, you will see a rule containing rights. Similarly, if you remove rights, the other constituents of rights will reappear. + + + +## Examples + The following code example creates registry access rules and adds them to a object, showing how rules that allow and deny rights remain separate, while compatible rules of the same kind are merged. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - - A code example that demonstrates inheritance and propagation flags can be found in the class. - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + + A code example that demonstrates inheritance and propagation flags can be found in the class. + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistryAccessRule/.ctor/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -440,13 +440,13 @@ The audit rule to add. The user specified by this rule determines the search. Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. - - Rules cannot be merged if they have different inheritance flags. For example, if failed attempts to write to a key are audited for a particular user, with no inheritance flags, and is used to add a rule specifying that failed attempts to change permissions are to be audited for the same user, but with inheritance for subkeys (), the two rules cannot be merged. - + method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. + + Rules cannot be merged if they have different inheritance flags. For example, if failed attempts to write to a key are audited for a particular user, with no inheritance flags, and is used to add a rule specifying that failed attempts to change permissions are to be audited for the same user, but with inheritance for subkeys (), the two rules cannot be merged. + ]]> @@ -501,23 +501,23 @@ Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, the inheritance and propagation of the rule, and the outcome that triggers the rule. A object representing the specified audit rule for the specified user, with the specified flags. The return type of the method is the base class, , but the return value can be cast safely to the derived class. - class. - + class. + > [!NOTE] -> Although you can specify the flag, there is no point in doing so. For the purposes of audit control, the name/value pairs in a subkey are not separate objects. The audit rights to name/value pairs are controlled by the rights of the subkey. Furthermore, since all subkeys are containers (that is, they can contain other subkeys), they are not affected by the flag. Finally, specifying the flag needlessly complicates the maintenance of rules, because it interferes with the normal combination of compatible rules. - +> Although you can specify the flag, there is no point in doing so. For the purposes of audit control, the name/value pairs in a subkey are not separate objects. The audit rights to name/value pairs are controlled by the rights of the subkey. Furthermore, since all subkeys are containers (that is, they can contain other subkeys), they are not affected by the flag. Finally, specifying the flag needlessly complicates the maintenance of rules, because it interferes with the normal combination of compatible rules. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -559,11 +559,11 @@ Gets the type that the class uses to represent audit rules. A object representing the class. - class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. - + class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. + ]]> @@ -609,26 +609,26 @@ if a compatible rule is found; otherwise . - is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - - - -## Examples - The following code example shows how the method removes rights from a compatible rule, and how the method merges rights with compatible rules. - - The example creates a object and adds a rule that allows the current user rights. The example then creates a rule that grants the user , with the same inheritance and propagation rights as the first rule, and uses the method to remove this new rule from the object. is a constituent of , so it is removed from the compatible rule. The rules in the object are displayed, showing the remaining constituents of . - - The example code then calls the method to merge the right back into the rule in the object. - + is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + + + +## Examples + The following code example shows how the method removes rights from a compatible rule, and how the method merges rights with compatible rules. + + The example creates a object and adds a rule that allows the current user rights. The example then creates a rule that grants the user , with the same inheritance and propagation rights as the first rule, and uses the method to remove this new rule from the object. is a constituent of , so it is removed from the compatible rule. The rules in the object are displayed, showing the remaining constituents of . + + The example code then calls the method to merge the right back into the rule in the object. + > [!NOTE] -> This example does not attach the security object to a object. The second example in this section attaches a security object, and so do the examples in . - +> This example does not attach the security object to a object. The second example in this section attaches a security object, and so do the examples in . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistrySecurity/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -674,26 +674,26 @@ A that specifies the user and to search for. Any rights, inheritance flags, or propagation flags specified by this rule are ignored. Searches for all access control rules with the same user and (allow or deny) as the specified rule and, if found, removes them. - is searched for rules that have the same user and the same value as `rule`. Any rights, inheritance flags, or propagation flags specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. - - For example, if a user has multiple rules that allow various rights with different inheritance and propagation flags, you can remove all those rules by creating a object that specifies the user and , with any arbitrary rights and flags, and passing that rule to the method. - - - -## Examples - The following code example shows that the method removes all rules that match user and , ignoring rights and flags. - - The example creates a object and adds rules that allow and deny various rights for the current user, with different inheritance and propagation flags. The example then creates a new rule that allows the current user to take ownership, and passes that rule to the method to remove the two rules that allow access. - + is searched for rules that have the same user and the same value as `rule`. Any rights, inheritance flags, or propagation flags specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. + + For example, if a user has multiple rules that allow various rights with different inheritance and propagation flags, you can remove all those rules by creating a object that specifies the user and , with any arbitrary rights and flags, and passing that rule to the method. + + + +## Examples + The following code example shows that the method removes all rules that match user and , ignoring rights and flags. + + The example creates a object and adds rules that allow and deny various rights for the current user, with different inheritance and propagation flags. The example then creates a new rule that allows the current user to take ownership, and passes that rule to the method to remove the two rules that allow access. + > [!NOTE] -> This example does not attach the security object to a object. See the method and the method. - +> This example does not attach the security object to a object. See the method and the method. + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistrySecurity/RemoveAccessRuleAll/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: + ]]> @@ -739,27 +739,27 @@ The to remove. Searches for an access control rule that exactly matches the specified rule and, if found, removes it. - are not affected. - + are not affected. + > [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - - - -## Examples - The following code example shows that the method removes a rule only if it matches exactly. - - The example creates two rules that allow different rights. The rules have compatible inheritance and propagation flags, so when the second rule is added it merges with the first. The example calls the method, specifying the first rule, but because the rules are merged there is no rule that matches. The example then calls the method to the remove the second rule from the merged rule, and finally calls the method to remove the first rule. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + + + +## Examples + The following code example shows that the method removes a rule only if it matches exactly. + + The example creates two rules that allow different rights. The rules have compatible inheritance and propagation flags, so when the second rule is added it merges with the first. The example calls the method, specifying the first rule, but because the rules are merged there is no rule that matches. The example then calls the method to the remove the second rule from the merged rule, and finally calls the method to remove the first rule. + > [!NOTE] -> This example does not attach the security object to a object. See the method and the method. - +> This example does not attach the security object to a object. See the method and the method. + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistrySecurity/RemoveAccessRuleSpecific/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: + ]]> @@ -807,11 +807,11 @@ if a compatible rule is found; otherwise, . - is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - + is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + ]]> @@ -857,11 +857,11 @@ A that specifies the user to search for. Any rights, inheritance flags, or propagation flags specified by this rule are ignored. Searches for all audit rules with the same user as the specified rule and, if found, removes them. - is searched for audit rules that have the same user as `rule`. Any rights, inheritance flags, or propagation flags specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. - + is searched for audit rules that have the same user as `rule`. Any rights, inheritance flags, or propagation flags specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. + ]]> @@ -907,14 +907,14 @@ The to be removed. Searches for an audit rule that exactly matches the specified rule and, if found, removes it. - [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + ]]> @@ -960,24 +960,24 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all access control rules with the same user as the specified rule, regardless of , and then adds the specified rule. - method replaces all rules for the matching user with the rule specified for the match. - - The example creates a object and adds rules that allow and deny various rights for the current user, with different inheritance and propagation flags. The example then creates a new rule that allows the current user only to read the key, and uses the method to remove the all rules for the user and replace them with the new rule. - + method replaces all rules for the matching user with the rule specified for the match. + + The example creates a object and adds rules that allow and deny various rights for the current user, with different inheritance and propagation flags. The example then creates a new rule that allows the current user only to read the key, and uses the method to remove the all rules for the user and replace them with the new rule. + > [!NOTE] -> This example does not attach the security object to a object. See the method and the method. - +> This example does not attach the security object to a object. See the method and the method. + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistrySecurity/ResetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -1021,26 +1021,26 @@ The to add. The user and of this rule determine the rules to remove before this rule is added. Removes all access control rules with the same user and (allow or deny) as the specified rule, and then adds the specified rule. - , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. - - If there are no rules whose user and match the specified rule, `rule` is added. - - - -## Examples - The following code example shows that the method removes all rules that match both the user and the of `rule`, ignoring rights and flags, and replaces them with `rule`. - - The example creates a object and adds rules that allow and deny various rights for the current user, with different inheritance and propagation flags. The example then creates a new rule that allows the current user only to read the key, and uses the method to remove the two rules that allow access and to replace them with the new rule. The rule that denies access is not affected. - + , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. + + If there are no rules whose user and match the specified rule, `rule` is added. + + + +## Examples + The following code example shows that the method removes all rules that match both the user and the of `rule`, ignoring rights and flags, and replaces them with `rule`. + + The example creates a object and adds rules that allow and deny various rights for the current user, with different inheritance and propagation flags. The example then creates a new rule that allows the current user only to read the key, and uses the method to remove the two rules that allow access and to replace them with the new rule. The rule that denies access is not affected. + > [!NOTE] -> This example does not attach the security object to a object. See the method and the method. - +> This example does not attach the security object to a object. See the method and the method. + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/RegistrySecurity/SetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.RegistrySecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -1086,11 +1086,11 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all audit rules with the same user as the specified rule, regardless of the value, and then adds the specified rule. - diff --git a/xml/System.Security.AccessControl/SemaphoreSecurity.xml b/xml/System.Security.AccessControl/SemaphoreSecurity.xml index 893433f3d77..b142647b80e 100644 --- a/xml/System.Security.AccessControl/SemaphoreSecurity.xml +++ b/xml/System.Security.AccessControl/SemaphoreSecurity.xml @@ -48,54 +48,54 @@ Represents the Windows access control security for a named semaphore. This class cannot be inherited. - object specifies access rights for a named system semaphore, and also specifies how access attempts are audited. Access rights to the semaphore are expressed as rules, with each access rule represented by a object. Each auditing rule is represented by a object. - - This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. A or object might represent more than one ACE. - + object specifies access rights for a named system semaphore, and also specifies how access attempts are audited. Access rights to the semaphore are expressed as rules, with each access rule represented by a object. Each auditing rule is represented by a object. + + This mirrors the underlying Windows security system, in which each securable object has at most one discretionary access control list (DACL) that controls access to the secured object, and at most one system access control list (SACL) that specifies which access attempts are audited. The DACL and SACL are ordered lists of access control entries (ACE) that specify access and auditing for users and groups. A or object might represent more than one ACE. + > [!NOTE] -> A object can represent a local semaphore or a named system semaphore. Windows access control security is meaningful only for named system semaphores. - - The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: - -- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. - -- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. - -- Manipulating security descriptor flags, which should be under resource manager control only. - -- Creating invalid combinations of ACE flags. - -- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. - -- Inserting meaningless ACEs into ACLs. - - The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: - -- Low-level tasks that are normally performed by the resource manager. - -- Adding or removing access control entries in ways that do not maintain the canonical ordering. - - To modify Windows access control security for a named semaphore, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. - +> A object can represent a local semaphore or a named system semaphore. Windows access control security is meaningful only for named system semaphores. + + The , , and classes hide the implementation details of ACLs and ACEs. They allow you to ignore the seventeen different ACE types and the complexity of correctly maintaining inheritance and propagation of access rights. These objects are also designed to prevent the following common access control errors: + +- Creating a security descriptor with a null DACL. A null reference to a DACL allows any user to add access rules to an object, potentially creating a denial-of-service attack. A new object always starts with an empty DACL, which denies all access for all users. + +- Violating the canonical ordering of ACEs. If the ACE list in the DACL is not kept in the canonical order, users might inadvertently be given access to the secured object. For example, denied access rights must always appear before allowed access rights. objects maintain the correct order internally. + +- Manipulating security descriptor flags, which should be under resource manager control only. + +- Creating invalid combinations of ACE flags. + +- Manipulating inherited ACEs. Inheritance and propagation are handled by the resource manager, in response to changes you make to access and audit rules. + +- Inserting meaningless ACEs into ACLs. + + The only capabilities not supported by the .NET security objects are dangerous activities that should be avoided by the majority of application developers, such as the following: + +- Low-level tasks that are normally performed by the resource manager. + +- Adding or removing access control entries in ways that do not maintain the canonical ordering. + + To modify Windows access control security for a named semaphore, use the method to get the object. Modify the security object by adding and removing rules, and then use the method to reattach it. + > [!IMPORTANT] -> Changes you make to a object do not affect the access levels of the named semaphore until you call the method to assign the altered security object to the named semaphore. - - To copy access control security from one semaphore to another, use the method to get a object representing the access and audit rules for the first semaphore, then use the method, or a constructor that accepts a object, to assign those rules to the second semaphore. - +> Changes you make to a object do not affect the access levels of the named semaphore until you call the method to assign the altered security object to the named semaphore. + + To copy access control security from one semaphore to another, use the method to get a object representing the access and audit rules for the first semaphore, then use the method, or a constructor that accepts a object, to assign those rules to the second semaphore. + Users with an investment in the security descriptor definition language (SDDL) can use the method to set access rules for a named semaphore, and the method to obtain a string that represents the access rules in SDDL format. This is not recommended for new development. - -## Examples - The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. - + +## Examples + The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/SemaphoreAccessRule/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -143,11 +143,11 @@ Initializes a new instance of the class with default values. - object always starts with an empty discretionary access list (DACL), which denies all access for all users. - + object always starts with an empty discretionary access list (DACL), which denies all access for all users. + ]]> @@ -187,13 +187,13 @@ A combination of flags specifying the sections to retrieve. Initializes a new instance of the class with the specified sections of the access control security rules from the system semaphore with the specified name. - object. - - Caution must be exercised when working with named system objects. If there is a system object named `name` that is not a semaphore, its control access security might be retrieved. - + object. + + Caution must be exercised when working with named system objects. If there is a system object named `name` that is not a semaphore, its control access security might be retrieved. + ]]> @@ -231,11 +231,11 @@ Gets the enumeration that the class uses to represent access rights. A object representing the enumeration. - class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. - + class override the property and return the type they use to represent access rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct enumeration type to use with each security object. + ]]> @@ -287,23 +287,23 @@ Creates a new access control rule for the specified user, with the specified access rights, access control, and flags. A object representing the specified rights for the specified user. - class. - + class. + > [!NOTE] -> Although inheritance and propagation flags are meaningless for named semaphores, it is still possible to specify them This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. - +> Although inheritance and propagation flags are meaningless for named semaphores, it is still possible to specify them This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -342,11 +342,11 @@ Gets the type that the class uses to represent access rules. A object representing the class. - class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. - + class override the property and return the type they use to represent access rules. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct access rule type to use with each security object. + ]]> @@ -387,22 +387,22 @@ The access control rule to add. Searches for a matching rule with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. - - - -## Examples - The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. - + method searches for rules with the same user or group and the same as `rule`. If none are found, `rule` is added. If a matching rule is found, the rights in `rule` are merged with the existing rule. + + + +## Examples + The following code example demonstrates the separation between rules and rules, and shows the combination of rights in compatible rules. The example creates a object, adds rules that allow and deny various rights for the current user, and displays the resulting pair of rules. The example then allows new rights for the current user and displays the result, showing that the new rights are merged with the existing rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/SemaphoreAccessRule/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.AddAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -445,11 +445,11 @@ The audit rule to add. The user specified by this rule determines the search. Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule. - method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. - + method searches for rules with the same user or group as `rule`. If none are found, `rule` is added. If a matching rule is found, the flags in `rule` are merged into the existing rule. + ]]> @@ -501,23 +501,23 @@ Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, and the outcome that triggers the audit rule. A object representing the specified audit rule for the specified user. The return type of the method is the base class, , but the return value can be cast safely to the derived class. - class. - + class. + > [!NOTE] -> Although inheritance and propagation flags are meaningless for named semaphores, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. - +> Although inheritance and propagation flags are meaningless for named semaphores, it is still possible to specify them. This is not recommended, because it needlessly complicates the maintenance of rules, for example by interfering with the combination of rules that would otherwise be compatible. + ]]> , , , or specifies an invalid value. - is . - - -or- - + is . + + -or- + is zero. is neither of type , nor of a type such as that can be converted to type . @@ -556,11 +556,11 @@ Gets the type that the class uses to represent audit rules. A object representing the class. - class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. - + class override the property and return the type they use to represent audit rights. When you work with arrays or collections that contain multiple types of security objects, use this property to determine the correct audit rule type to use with each security object. + ]]> @@ -603,27 +603,27 @@ if a compatible rule is found; otherwise . - is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - + is searched for a rule that has the same user and the same value as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + > [!IMPORTANT] -> Although you can specify inheritance and propagation flags for semaphore access rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named semaphores, and they make the maintenance of access rules more complicated. - - - -## Examples - The following code example demonstrates the use of the method to remove rights from an rule in a object. It also shows that other rights in `rule` are ignored. - - The example creates a object and adds rules that allow and deny various rights for the current user. The rights allowed include , , and . The example then creates a new rule for the current user, including and rights, and uses that rule with the method to remove from the rule in the object. The extraneous right in `rule` is ignored. - +> Although you can specify inheritance and propagation flags for semaphore access rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named semaphores, and they make the maintenance of access rules more complicated. + + + +## Examples + The following code example demonstrates the use of the method to remove rights from an rule in a object. It also shows that other rights in `rule` are ignored. + + The example creates a object and adds rules that allow and deny various rights for the current user. The rights allowed include , , and . The example then creates a new rule for the current user, including and rights, and uses that rule with the method to remove from the rule in the object. The extraneous right in `rule` is ignored. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/SemaphoreSecurity/RemoveAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.RemoveAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -666,24 +666,24 @@ A that specifies the user and to search for. Any rights specified by this rule are ignored. Searches for all access control rules with the same user and (allow or deny) as the specified rule and, if found, removes them. - object is searched for rules that have the same user and the same value as `rule`. Any rights specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. - - - -## Examples - The following code example shows that the method removes all rules that match user and , ignoring rights. - - The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the rule. The example then creates a new rule that allows the current user to take ownership, and uses that rule to remove the rule from the object. - + object is searched for rules that have the same user and the same value as `rule`. Any rights specified by `rule` are ignored when performing this search. If no matching rules are found, no action is taken. + + + +## Examples + The following code example shows that the method removes all rules that match user and , ignoring rights. + + The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the rule. The example then creates a new rule that allows the current user to take ownership, and uses that rule to remove the rule from the object. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/SemaphoreSecurity/RemoveAccessRuleAll/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.RemoveAccessRuleAll/VB/source.vb" id="Snippet1"::: + ]]> @@ -726,27 +726,27 @@ The to remove. Searches for an access control rule that exactly matches the specified rule and, if found, removes it. - are not affected. - + are not affected. + > [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - - - -## Examples - The following code example shows that the method requires an exact match in order to remove a rule, and that rules to allow and deny rights are independent of each other. - - The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the access rule. The example then passes the original rule to the method, and displays the results, showing that nothing is deleted. The example then constructs a rule that matches the rule in the object, and successfully uses the method to remove the rule. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the access security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + + + +## Examples + The following code example shows that the method requires an exact match in order to remove a rule, and that rules to allow and deny rights are independent of each other. + + The example creates a object, adds rules that allow and deny various rights for the current user, and then merges additional rights into the access rule. The example then passes the original rule to the method, and displays the results, showing that nothing is deleted. The example then constructs a rule that matches the rule in the object, and successfully uses the method to remove the rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/SemaphoreSecurity/RemoveAccessRuleSpecific/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.RemoveAccessRuleSpecific/VB/source.vb" id="Snippet1"::: + ]]> @@ -791,14 +791,14 @@ if a compatible rule is found; otherwise, . - is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. - + is searched for an audit rule that has the same user as `rule`. If no such rule is found, no action is taken, and the method returns `false`. If matching rules are found, their inheritance and compatibility flags are checked for compatibility with the flags specified in `rule`. If no compatible rule is found, no action is taken, and the method returns `false`. If a rule with compatible flags is found, the rights specified in `rule` are removed from the compatible rule, and the method returns `true`. If `rule` specifies rights not contained in the compatible rule, no action is taken with respect to those rights. If all rights are removed from the compatible rule, the entire rule is removed from the current object. + > [!IMPORTANT] -> Although you can specify inheritance and propagation flags for semaphore audit rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named semaphores, and they make the maintenance of audit rules more complicated. - +> Although you can specify inheritance and propagation flags for semaphore audit rules, by creating them with the method, this is not recommended. Inheritance and propagation have no meaning for named semaphores, and they make the maintenance of audit rules more complicated. + ]]> @@ -841,11 +841,11 @@ A that specifies the user to search for. Any rights specified by this rule are ignored. Searches for all audit rules with the same user as the specified rule and, if found, removes them. - is searched for audit rules that have the same user as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. - + is searched for audit rules that have the same user as `rule`. Any rights specified by `rule` are ignored when performing this search. All matching rules are removed. If no matching rules are found, no action is taken. + ]]> @@ -888,14 +888,14 @@ The to remove. Searches for an audit rule that exactly matches the specified rule and, if found, removes it. - [!IMPORTANT] -> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. - +> A rule represents one or more underlying access control entries (ACE), and these entries are split or combined as necessary when you modify the audit security rules for a user. Thus, a rule might no longer exist in the specific form it had when it was added, and in that case the method cannot remove it. + ]]> @@ -938,24 +938,24 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all access control rules with the same user as the specified rule, regardless of , and then adds the specified rule. - method replaces all rules for the matching user with the rule specified for the match. - - The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace both of the existing rules with the new rule. - + method replaces all rules for the matching user with the rule specified for the match. + + The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace both of the existing rules with the new rule. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/SemaphoreSecurity/ResetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.ResetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -998,26 +998,26 @@ The to add. The user and of this rule determine the rules to remove before this rule is added. Removes all access control rules with the same user and (allow or deny) as the specified rule, and then adds the specified rule. - , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. - - If there are no rules whose user and match the specified rule, `rule` is added. - - - -## Examples - The following code example shows how the method removes all rules that match both the user and the of `rule`, replacing them with `rule`. - - The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace the existing Allow rule with the new rule. The rule that denies access is not affected. - + , the effect of this method is to remove all rules for the specified user, replacing them with the specified rule. If the specified rule has , all rules for the specified user are replaced with the specified rule. + + If there are no rules whose user and match the specified rule, `rule` is added. + + + +## Examples + The following code example shows how the method removes all rules that match both the user and the of `rule`, replacing them with `rule`. + + The example creates a object and adds rules that allow and deny various rights for the current user. The example then creates a new rule that allows the current user full control, and uses the method to replace the existing Allow rule with the new rule. The rule that denies access is not affected. + > [!NOTE] -> This example does not attach the security object to a object. Examples that attach security objects can be found in and . - +> This example does not attach the security object to a object. Examples that attach security objects can be found in and . + :::code language="csharp" source="~/snippets/csharp/System.Security.AccessControl/SemaphoreSecurity/SetAccessRule/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AccessControl.SemaphoreSecurity.SetAccessRule/VB/source.vb" id="Snippet1"::: + ]]> @@ -1060,11 +1060,11 @@ The to add. The user specified by this rule determines the rules to remove before this rule is added. Removes all audit rules with the same user as the specified rule, regardless of the value, and then adds the specified rule. - diff --git a/xml/System.Security.Claims/Claim.xml b/xml/System.Security.Claims/Claim.xml index 2044f7f3a56..53752e673d2 100644 --- a/xml/System.Security.Claims/Claim.xml +++ b/xml/System.Security.Claims/Claim.xml @@ -64,17 +64,17 @@ The following describes important properties of the class: -- The property is a string (typically a URI) that contains the semantic information about the claim; it tells you what the value of the claim means. For example, a claim with a claim type of (`"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"`) represents a user's first name. The value of the property can be one of the well-known claim types defined in the class, or it can be an arbitrary URI as defined by the issuer. For example, a claim type of "urn:spendinglimit" might represent a user attribute that makes sense within the business context of the issuer. +- The property is a string (typically a URI) that contains the semantic information about the claim; it tells you what the value of the claim means. For example, a claim with a claim type of (`"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"`) represents a user's first name. The value of the property can be one of the well-known claim types defined in the class, or it can be an arbitrary URI as defined by the issuer. For example, a claim type of "urn:spendinglimit" might represent a user attribute that makes sense within the business context of the issuer. -- The property contains the value of the claim. In order to reduce dependencies and simplify administration, in WIF the value of a claim is represented only as a string. For more complex value types, it is recommended that you use standard XML schema types to indicate how the value is meant to be serialized into and deserialized from a string. +- The property contains the value of the claim. In order to reduce dependencies and simplify administration, in WIF the value of a claim is represented only as a string. For more complex value types, it is recommended that you use standard XML schema types to indicate how the value is meant to be serialized into and deserialized from a string. -- The property contains a string that identifies the type information for the value. This property should be used to understand the format of the value and to provide information about how to deserialize it. If your solution requires complex value types, it is recommended that you use standard XML schema types in the property to indicate how the property is meant to be serialized into and deserialized from a string. +- The property contains a string that identifies the type information for the value. This property should be used to understand the format of the value and to provide information about how to deserialize it. If your solution requires complex value types, it is recommended that you use standard XML schema types in the property to indicate how the property is meant to be serialized into and deserialized from a string. -- The property is a object that represents the subject of the claim. The subject of the claim is the entity (typically the user who is requesting access to a resource) about which the claim is asserted. The contains, among its properties, a collection of claims that describe the properties and attributes of the subject as attested to by one or more issuers. +- The property is a object that represents the subject of the claim. The subject of the claim is the entity (typically the user who is requesting access to a resource) about which the claim is asserted. The contains, among its properties, a collection of claims that describe the properties and attributes of the subject as attested to by one or more issuers. -- The property contains the name of the entity that issued the claim. The issuer of a claim is represented in WIF by a string that contains a name taken from a list of well-known issuers that is maintained by the issuer name registry. The issuer name registry is an instance of a class that derives from the class. The issuer name registry associates a mnemonic name to the cryptographic material needed to verify the signatures of tokens produced by the corresponding issuer. For example, the class, available out of the box with .NET 4.5, associates the mnemonic name for each issuer with its corresponding X.509 certificate. The list of well-known issuers is typically built at startup time by the issuer name registry. The list used by the is specified in the application configuration file. +- The property contains the name of the entity that issued the claim. The issuer of a claim is represented in WIF by a string that contains a name taken from a list of well-known issuers that is maintained by the issuer name registry. The issuer name registry is an instance of a class that derives from the class. The issuer name registry associates a mnemonic name to the cryptographic material needed to verify the signatures of tokens produced by the corresponding issuer. For example, the class, available out of the box with .NET 4.5, associates the mnemonic name for each issuer with its corresponding X.509 certificate. The list of well-known issuers is typically built at startup time by the issuer name registry. The list used by the is specified in the application configuration file. -- The property contains the name of the entity that originally issued the claim. This property is designed to facilitate scenarios where a claim may pass through multiple issuers before it is presented by the client to the RP application; such as federation scenarios. You can examine the property to determine the entity that originally issued the claim. The name is taken from the list of well-known issuers maintained by the issuer name registry, as in the case of the property. +- The property contains the name of the entity that originally issued the claim. This property is designed to facilitate scenarios where a claim may pass through multiple issuers before it is presented by the client to the RP application; such as federation scenarios. You can examine the property to determine the entity that originally issued the claim. The name is taken from the list of well-known issuers maintained by the issuer name registry, as in the case of the property. diff --git a/xml/System.Security.Claims/ClaimsAuthorizationManager.xml b/xml/System.Security.Claims/ClaimsAuthorizationManager.xml index a2bce789066..74ef699a7e1 100644 --- a/xml/System.Security.Claims/ClaimsAuthorizationManager.xml +++ b/xml/System.Security.Claims/ClaimsAuthorizationManager.xml @@ -25,9 +25,9 @@ ## Remarks The class provides the base implementation for a claims authorization manager. A claims authorization manager can be used in the following two scenarios: -- In web-based applications and services, a claims authorization manager can be added to the processing pipeline to provide an extensibility point from which you can authorize access to a resource according to the value of incoming claims before the application code that actually implements the requested resource is called. +- In web-based applications and services, a claims authorization manager can be added to the processing pipeline to provide an extensibility point from which you can authorize access to a resource according to the value of incoming claims before the application code that actually implements the requested resource is called. -- When you use the class or the class to perform either imperative or declarative claims-based access checks in your code, the claims authorization manager that is configured for your application is called by the system to perform the check. Claims-based access checks can be performed in both web-based applications and desktop applications. +- When you use the class or the class to perform either imperative or declarative claims-based access checks in your code, the claims authorization manager that is configured for your application is called by the system to perform the check. Claims-based access checks can be performed in both web-based applications and desktop applications. The default implementation provided by the class authorizes access for each claim presented; however, you can derive from this class and override the method to provide your own authorization logic. diff --git a/xml/System.Security.Claims/ClaimsPrincipal.xml b/xml/System.Security.Claims/ClaimsPrincipal.xml index 1bb9c75e50a..5d110bd2182 100644 --- a/xml/System.Security.Claims/ClaimsPrincipal.xml +++ b/xml/System.Security.Claims/ClaimsPrincipal.xml @@ -72,13 +72,13 @@ The introduction of in .NET 4.5 as the principal from which most principal classes derive does not force you to change anything in the way in which you deal with identity. It does, however open up more possibilities and offer more chances to exercise finer access control. For example: -- The application code itself can work directly with the claims contained in the current principal to drive extra authentication, authorization, and personalization tasks. +- The application code itself can work directly with the claims contained in the current principal to drive extra authentication, authorization, and personalization tasks. -- You can front your resources with a claims processing pipeline, which can deal with authentication requests and authorization policy even before execution reaches your code. For example, you can configure a web-based application or service with a custom claims authentication manager, an instance of a class that derives from the class. When so configured, the request processing pipeline invokes the method on your claims authentication manager passing it a that represents the context of the incoming request. Your claims authentication manager can then perform authentication based on the values of the incoming claims. It can also filter, transform, or add claims to the incoming claim set. For example, it could be used to enrich the incoming claim set with new claims created from a local data source such as a local user profile +- You can front your resources with a claims processing pipeline, which can deal with authentication requests and authorization policy even before execution reaches your code. For example, you can configure a web-based application or service with a custom claims authentication manager, an instance of a class that derives from the class. When so configured, the request processing pipeline invokes the method on your claims authentication manager passing it a that represents the context of the incoming request. Your claims authentication manager can then perform authentication based on the values of the incoming claims. It can also filter, transform, or add claims to the incoming claim set. For example, it could be used to enrich the incoming claim set with new claims created from a local data source such as a local user profile -- You can configure a web-based application with a custom claims authorization manager, an instance of a class that derives from the class. When so configured, the request processing pipeline packages the incoming in an and invokes the method on your claims authorization manager. Your claims authorization manager can then enforce authorization based on the incoming claims. +- You can configure a web-based application with a custom claims authorization manager, an instance of a class that derives from the class. When so configured, the request processing pipeline packages the incoming in an and invokes the method on your claims authorization manager. Your claims authorization manager can then enforce authorization based on the incoming claims. -- Inline claims-based code access checks can be performed by configuring your application with a custom claims authorization manager and using either the class to perform imperative access checks or the to perform declarative access checks. Claims-based code access checks are performed inline, outside of the processing pipeline, and so are available to all applications as long as a claims authorization manager is configured. +- Inline claims-based code access checks can be performed by configuring your application with a custom claims authorization manager and using either the class to perform imperative access checks or the to perform declarative access checks. Claims-based code access checks are performed inline, outside of the processing pipeline, and so are available to all applications as long as a claims authorization manager is configured. You can obtain a instance for the principal associated with a request, or the principal under which a thread is executing, in a [relying party (RP) application](/archive/msdn-magazine/2010/august/federated-identity-passive-authentication-for-asp-net-with-wif) by casting the property to . The claims associated with an object are available through its property. The property returns all of the claims contained by the identities associated with the principal. In the uncommon case in which the contains multiple instances, you can use the property or you can access the primary identity by using the property. provides several methods through which these claims may be searched and fully supports Language Integrated Query (LINQ). Identities can be added to the principal by using the or methods. diff --git a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml index 0450396d344..9f37ed8658f 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X500DistinguishedName.xml @@ -77,11 +77,11 @@ The following guidelines apply: -- Field values can be uppercase or lowercase. +- Field values can be uppercase or lowercase. -- Delimiters are slash marks (/) and must appear before the first value and between subsequent values. +- Delimiters are slash marks (/) and must appear before the first value and between subsequent values. -- Delimiters can be followed by a space. +- Delimiters can be followed by a space. The following is an example of a correctly formatted name: [X500:/ C=US/ O=Microsoft/ OU=WGA/ CN=TedSt] diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml index e1d9ef167db..676251844af 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate.xml @@ -263,11 +263,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . -or- @@ -341,11 +341,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The handle parameter does not represent a valid structure. @@ -410,11 +410,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The value of the parameter is . @@ -494,11 +494,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . @@ -581,11 +581,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . -or- @@ -670,11 +670,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . -or- @@ -737,11 +737,11 @@ To be added. An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -827,11 +827,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . @@ -913,11 +913,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . @@ -1004,11 +1004,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . -or- @@ -1099,11 +1099,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . -or- @@ -1191,11 +1191,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . @@ -1277,11 +1277,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. The parameter is . @@ -2688,11 +2688,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. diff --git a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml index 0a601c3f209..65c716eff02 100644 --- a/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml +++ b/xml/System.Security.Cryptography.X509Certificates/X509Certificate2.xml @@ -83,7 +83,7 @@ :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/x509certificate2/vb/program.vb" id="Snippet1"::: The following example creates a command-line executable that takes a certificate file as an argument and prints various certificate properties to the console. - + :::code language="csharp" source="~/snippets/csharp/System.Security.Cryptography.X509Certificates/PublicKey/Overview/certinfo.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/CertInfo/VB/certinfo.vb" id="Snippet1"::: @@ -236,11 +236,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -304,11 +304,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -410,11 +410,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -481,11 +481,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -567,11 +567,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -651,11 +651,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -792,11 +792,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -876,11 +876,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -964,11 +964,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -1050,11 +1050,11 @@ An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -1165,11 +1165,11 @@ If you create an An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -1248,11 +1248,11 @@ If you create an An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. @@ -1334,11 +1334,11 @@ If you create an An error with the certificate occurs. For example: -- The certificate file does not exist. +- The certificate file does not exist. -- The certificate is invalid. +- The certificate is invalid. -- The certificate's password is incorrect. +- The certificate's password is incorrect. diff --git a/xml/System.Security.Cryptography.Xml/EncryptedXml.xml b/xml/System.Security.Cryptography.Xml/EncryptedXml.xml index de4c7814b28..9c10faf7c28 100644 --- a/xml/System.Security.Cryptography.Xml/EncryptedXml.xml +++ b/xml/System.Security.Cryptography.Xml/EncryptedXml.xml @@ -51,13 +51,13 @@ Use one of the following methods to exchange key information: -- Do not include any key information. If you choose this option, both parties must agree on an algorithm and key before they exchange encrypted data. +- Do not include any key information. If you choose this option, both parties must agree on an algorithm and key before they exchange encrypted data. -- Include the location of the key in the Uniform Resource Identifier (URI) attribute of the `` element. Both parties must agree on the key location ahead of time and this location must be kept secret. +- Include the location of the key in the Uniform Resource Identifier (URI) attribute of the `` element. Both parties must agree on the key location ahead of time and this location must be kept secret. -- Include a string name that maps to a key in the `` element. Both parties must agree on the key name mapping before they exchange encrypted data and this mapping must be kept secret. +- Include a string name that maps to a key in the `` element. Both parties must agree on the key name mapping before they exchange encrypted data and this mapping must be kept secret. -- Include an encrypted key in the `` element. Both parties must agree on the key that decrypts the encrypted key before they exchange encrypted data. You can optionally include a name or location of the key that will decrypt the key in the `` element. +- Include an encrypted key in the `` element. Both parties must agree on the key that decrypts the encrypted key before they exchange encrypted data. You can optionally include a name or location of the key that will decrypt the key in the `` element. diff --git a/xml/System.Security.Cryptography.Xml/Reference.xml b/xml/System.Security.Cryptography.Xml/Reference.xml index 8d0be3c956c..d0544bd6b6a 100644 --- a/xml/System.Security.Cryptography.Xml/Reference.xml +++ b/xml/System.Security.Cryptography.Xml/Reference.xml @@ -46,15 +46,15 @@ Use the object to specify the following information: -- The digest algorithm used to sign of the data object. This value is required. +- The digest algorithm used to sign of the data object. This value is required. -- The Uniform Resource Identifier (URI) of the data object to sign. The URI can specify a file path or specific elements within an XML document. This value is required. +- The Uniform Resource Identifier (URI) of the data object to sign. The URI can specify a file path or specific elements within an XML document. This value is required. -- A chain of transforms to apply before generating the digest. This value is optional. +- A chain of transforms to apply before generating the digest. This value is optional. -- The type of object to sign. This value is optional. +- The type of object to sign. This value is optional. -- A unique identifier used to reference the current `` element. This value is optional. +- A unique identifier used to reference the current `` element. This value is optional. For more information about the `` element, see the [W3C specification](https://www.w3.org/TR/xmldsig-core/). diff --git a/xml/System.Security.Cryptography/CngKey.xml b/xml/System.Security.Cryptography/CngKey.xml index 26643d12dfb..b0946ae73a6 100644 --- a/xml/System.Security.Cryptography/CngKey.xml +++ b/xml/System.Security.Cryptography/CngKey.xml @@ -481,7 +481,7 @@ ## Remarks -- When you call the method on an ephemeral key, it closes the handle to the key. +- When you call the method on an ephemeral key, it closes the handle to the key. When you call the method on a named key, the object can no longer be used after the named key is deleted. @@ -970,15 +970,15 @@ This method is useful in the following cases: -- A new version of the operating system supports a new Cryptography Next Generation (CNG) key property that does not have a wrapper. +- A new version of the operating system supports a new Cryptography Next Generation (CNG) key property that does not have a wrapper. -- You add a custom property to the key. +- You add a custom property to the key. The `options` parameter is specifically used to indicate the following: -- Whether the property is built-in, or custom. +- Whether the property is built-in, or custom. -- Whether the property should be persisted with the key. +- Whether the property should be persisted with the key. These options must match the value that the property was set with, or the property will not be found. @@ -1112,9 +1112,9 @@ ## Remarks The `options` parameter is specifically used to indicate the following: -- Whether the property is built-in, or custom. +- Whether the property is built-in, or custom. -- Whether the property should be persisted with the key. +- Whether the property should be persisted with the key. These options must match the value that the property was set with, or the property will not be found. @@ -1345,9 +1345,9 @@ The return value depends on the method that is used to obtain the key: -- If the key was not opened by the method overload, the common language runtime (CLR) is managing the key and can determine whether it is ephemeral. +- If the key was not opened by the method overload, the common language runtime (CLR) is managing the key and can determine whether it is ephemeral. -- If the key was opened by the method overload, the CLR cannot determine whether it is ephemeral. Therefore, the key is assumed to be persisted. However, if this method is used to open a handle to a key that is created by the CLR, the CLR will be able to determine whether it is ephemeral. +- If the key was opened by the method overload, the CLR cannot determine whether it is ephemeral. Therefore, the key is assumed to be persisted. However, if this method is used to open a handle to a key that is created by the CLR, the CLR will be able to determine whether it is ephemeral. This property does not have a public setter; it is read-only. @@ -1638,9 +1638,9 @@ ## Remarks This overload uses the following defaults: -- Key storage provider (KSP): . Use the overload if you want to specify another KSP. +- Key storage provider (KSP): . Use the overload if you want to specify another KSP. -- Key open options: . +- Key open options: . ]]> diff --git a/xml/System.Security.Cryptography/CspParameters.xml b/xml/System.Security.Cryptography/CspParameters.xml index 6e9bb6ada80..6724732f230 100644 --- a/xml/System.Security.Cryptography/CspParameters.xml +++ b/xml/System.Security.Cryptography/CspParameters.xml @@ -74,11 +74,11 @@ Use the class to do the following: -- Specify a particular CSP by passing the provider type to the or property. You can also specify a CSP using an overload of the constructor. +- Specify a particular CSP by passing the provider type to the or property. You can also specify a CSP using an overload of the constructor. -- Create a key container where you can store cryptographic keys. Key containers provide the most secure way to persist cryptographic keys and keep them secret from malicious third parties. For more information about creating key containers, see [How to: Store Asymmetric Keys in a Key Container](/dotnet/standard/security/how-to-store-asymmetric-keys-in-a-key-container). +- Create a key container where you can store cryptographic keys. Key containers provide the most secure way to persist cryptographic keys and keep them secret from malicious third parties. For more information about creating key containers, see [How to: Store Asymmetric Keys in a Key Container](/dotnet/standard/security/how-to-store-asymmetric-keys-in-a-key-container). -- Specify whether to create an asymmetric signature key or an asymmetric exchange key using the property. +- Specify whether to create an asymmetric signature key or an asymmetric exchange key using the property. @@ -215,9 +215,9 @@ ## Remarks Use the constructor to specify a provider type by passing a numeric value that represents that provider. The numeric values that represent the default provider types are defined in the WinCrypt.h header file: -- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. -- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. For information about other provider type values, see the field. For more information about the default provider types and their behaviors, see the [Microsoft Cryptography API (CAPI) documentation](/windows/win32/seccrypto/cryptography-reference). @@ -279,9 +279,9 @@ Specify a provider type by passing a numeric value that represents the desired provider type. The numeric values that represent the default provider types are defined in the WinCrypt.h header file: -- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. -- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. For information about other provider type values, see the field. For more information about the default provider types and their behaviors, see the [Microsoft Cryptography API (CAPI) documentation](/windows/win32/seccrypto/cryptography-reference). @@ -355,9 +355,9 @@ Specify a provider type by passing a numeric value that represents the desired provider type. The numeric values that represent the default provider types are defined in the WinCrypt.h header file: -- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. -- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. For information about other provider type values, see the field. For more information about the default provider types and their behaviors, see the [Microsoft Cryptography API (CAPI) documentation](/windows/win32/seccrypto/cryptography-reference). @@ -410,9 +410,9 @@ Specify a provider type by passing a numeric value that represents the desired provider type. The numeric values that represent the default provider types are defined in the WinCrypt.h header file: -- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. -- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. For information about other provider type values, see the field. For more information about the default provider types and their behaviors, see the [Microsoft Cryptography API (CAPI) documentation](/windows/win32/seccrypto/cryptography-reference). @@ -464,9 +464,9 @@ Specify a provider type by passing a numeric value that represents the desired provider type. The numeric values that represent the default provider types are defined in the WinCrypt.h header file: -- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `1` to the `dwTypeIn` parameter. -- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. +- To specify a provider compatible with the algorithm, pass a value of `13` to the `dwTypeIn` parameter. For information about other provider type values, see the field. For more information about the default provider types and their behaviors, see the [Microsoft Cryptography API (CAPI) documentation](/windows/win32/seccrypto/cryptography-reference). @@ -899,9 +899,9 @@ For details on provider names, see the [Microsoft Cryptography API (CAPI) docume ## Remarks Use the field to specify a provider type by passing a numeric value that represents that provider. The numeric values that represent the default provider types are defined in the WinCrypt.h header file: -- To specify a provider compatible with the class, pass a value of `1`. +- To specify a provider compatible with the class, pass a value of `1`. -- To specify a provider compatible with the class, pass a value of `13`. +- To specify a provider compatible with the class, pass a value of `13`. The following table lists the provider types and their corresponding numeric values defined in the WinCrypt.h header file. diff --git a/xml/System.Security.Cryptography/ECDiffieHellmanPublicKey.xml b/xml/System.Security.Cryptography/ECDiffieHellmanPublicKey.xml index 190c6eccbd1..df29827edaf 100644 --- a/xml/System.Security.Cryptography/ECDiffieHellmanPublicKey.xml +++ b/xml/System.Security.Cryptography/ECDiffieHellmanPublicKey.xml @@ -281,9 +281,9 @@ ## Remarks This method executes in two distinct scenarios: -- If `disposing` equals `true`, the method has been called directly or indirectly by a user's code. Managed and unmanaged resources can be disposed. +- If `disposing` equals `true`, the method has been called directly or indirectly by a user's code. Managed and unmanaged resources can be disposed. -- If `disposing` equals `false`, the method has been called by the runtime from inside the finalizer, and you should not reference managed resources. Only unmanaged resources can be disposed. +- If `disposing` equals `false`, the method has been called by the runtime from inside the finalizer, and you should not reference managed resources. Only unmanaged resources can be disposed. If you need to provide cleanup code for managed and unmanaged resources that an object created, you should override this method. diff --git a/xml/System.Security.Cryptography/ECParameters.xml b/xml/System.Security.Cryptography/ECParameters.xml index 193db0ba3d7..9c84c6095b8 100644 --- a/xml/System.Security.Cryptography/ECParameters.xml +++ b/xml/System.Security.Cryptography/ECParameters.xml @@ -240,19 +240,19 @@ Validates the current object. - method checks the integrity of the structure, throwing a when it is not valid. The following are the requirements: - -- . and . are required fields and must have the same length. - -- If the curve is an explicit curve, is required and must have the same length as .. - -- If the curve is a named curve, is required and must have the same length as . and .. - -- . must also succeed. - + method checks the integrity of the structure, throwing a when it is not valid. The following are the requirements: + +- . and . are required fields and must have the same length. + +- If the curve is an explicit curve, is required and must have the same length as .. + +- If the curve is a named curve, is required and must have the same length as . and .. + +- . must also succeed. + ]]> The key or curve parameters are not valid for the current curve type. diff --git a/xml/System.Security.Cryptography/RSACng.xml b/xml/System.Security.Cryptography/RSACng.xml index 00d14d7950d..ff5779d8f3e 100644 --- a/xml/System.Security.Cryptography/RSACng.xml +++ b/xml/System.Security.Cryptography/RSACng.xml @@ -53,7 +53,7 @@ uses a programming model that is similar to the class rather than the class. For example: -- The key used by is managed by a separate object. In contrast, has a key that is directly tied to the operations of the type itself. +- The key used by is managed by a separate object. In contrast, has a key that is directly tied to the operations of the type itself. - performs such operations as signing and verifying signatures by using properties of the object, just as uses its object properties to control signing and verification operations. diff --git a/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml b/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml index ef09c633e72..bed7b7993a9 100644 --- a/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml +++ b/xml/System.Security.Cryptography/RSACryptoServiceProvider.xml @@ -2072,9 +2072,9 @@ The supported RSA key sizes depend on the available cryptographic service provid The `halg` parameter can accept a , a , or a . The string value can be one of the following: -- The object identifier (OID) friendly name of the hash algorithm to use, either a name registered in the crypto config file or one in the Crypto API OID table. +- The object identifier (OID) friendly name of the hash algorithm to use, either a name registered in the crypto config file or one in the Crypto API OID table. -- The OID value. The OID must be one recognized by the Crypto API. +- The OID value. The OID must be one recognized by the Crypto API. For example, you could use SignData(new byte[5], "1.3.14.3.2.26") or SignData(new byte[5], "sha1"), or SignData(new byte[5], "SHA1"). diff --git a/xml/System.Security.Permissions/HostProtectionAttribute.xml b/xml/System.Security.Permissions/HostProtectionAttribute.xml index 21764314f88..ef3bf327219 100644 --- a/xml/System.Security.Permissions/HostProtectionAttribute.xml +++ b/xml/System.Security.Permissions/HostProtectionAttribute.xml @@ -52,40 +52,40 @@ Allows the use of declarative security actions to determine host protection requirements. This class cannot be inherited. - [!IMPORTANT] -> The purpose of this attribute is to enforce host-specific programming model guidelines, not security behavior. Although a link demand is used to check for conformance to programming model requirements, the is not a security permission. - - If the host does not have programming model requirements, the link demands do not occur. - - This attribute identifies the following: - -- Methods or classes that do not fit the host programming model, but are otherwise benign. - -- Methods or classes that do not fit the host programming model and could lead to destabilizing server-managed user code. - -- Methods or classes that do not fit the host programming model and could lead to a destabilization of the server process itself. - +> The purpose of this attribute is to enforce host-specific programming model guidelines, not security behavior. Although a link demand is used to check for conformance to programming model requirements, the is not a security permission. + + If the host does not have programming model requirements, the link demands do not occur. + + This attribute identifies the following: + +- Methods or classes that do not fit the host programming model, but are otherwise benign. + +- Methods or classes that do not fit the host programming model and could lead to destabilizing server-managed user code. + +- Methods or classes that do not fit the host programming model and could lead to a destabilization of the server process itself. + > [!NOTE] -> If you are creating a class library that is to be called by applications that may execute in a host protected environment, you should apply this attribute to members that expose resource categories. The .NET Framework class library members with this attribute cause only the immediate caller to be checked. Your library member must also cause a check of its immediate caller in the same manner. - +> If you are creating a class library that is to be called by applications that may execute in a host protected environment, you should apply this attribute to members that expose resource categories. The .NET Framework class library members with this attribute cause only the immediate caller to be checked. Your library member must also cause a check of its immediate caller in the same manner. + > [!NOTE] > Do not use the [Ngen.exe (Native Image Generator)](/dotnet/framework/tools/ngen-exe-native-image-generator) to create a native image of assemblies that are protected by the . In a full-trust environment, the image is always loaded, without regard to the , and in a partial-trust environment the image is not loaded. - -## Examples - The following code example illustrates the use of the attribute with a variety of values. - + +## Examples + The following code example illustrates the use of the attribute with a variety of values. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet1"::: + ]]> Extending Metadata Using Attributes @@ -136,11 +136,11 @@ Initializes a new instance of the class with default values. - with all Boolean properties set to `false`. - + with all Boolean properties set to `false`. + ]]> @@ -177,11 +177,11 @@ One of the values. Initializes a new instance of the class with the specified value. - @@ -221,13 +221,13 @@ Creates and returns a new host protection permission. An that corresponds to the current attribute. - @@ -265,20 +265,20 @@ if external process management is exposed; otherwise, . The default is . - attribute with the property. This example is part of a larger example provided for the class. - + attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet5"::: + ]]> @@ -317,20 +317,20 @@ if external threading is exposed; otherwise, . The default is . - attribute with the property. This example is part of a larger example provided for the class. - + attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet6"::: + ]]> @@ -369,11 +369,11 @@ if resources might leak memory on termination; otherwise, . - @@ -411,20 +411,20 @@ Gets or sets flags specifying categories of functionality that are potentially harmful to the host. A bitwise combination of the values. The default is . - flags specify the resources exposed by the method or class that are potentially harmful to the host. - - - -## Examples - The following code example illustrates the use of the attribute with the property. This example is part of a larger example provided for the class. - + flags specify the resources exposed by the method or class that are potentially harmful to the host. + + + +## Examples + The following code example illustrates the use of the attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet2"::: + ]]> @@ -469,20 +469,20 @@ if the security infrastructure is exposed; otherwise, . The default is . - object to impersonate a user is an example of exposing the security infrastructure. - - - -## Examples - The following code example illustrates the use of the attribute with the property. This example is part of a larger example provided for the class. - + object to impersonate a user is an example of exposing the security infrastructure. + + + +## Examples + The following code example illustrates the use of the attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet4"::: + ]]> @@ -521,20 +521,20 @@ if self-affecting process management is exposed; otherwise, . The default is . - attribute with the property. This example is part of a larger example provided for the class. - + attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet2"::: + ]]> @@ -573,20 +573,20 @@ if self-affecting threading is exposed; otherwise, . The default is . - attribute with the property. This example is part of a larger example provided for the class. - + attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet3"::: + ]]> @@ -625,20 +625,20 @@ if shared state is exposed; otherwise, . The default is . - is `true`, it indicates that a state is exposed that might be shared between threads. - - - -## Examples - The following code example illustrates the use of the attribute with the property. This example is part of a larger example provided for the class. - + is `true`, it indicates that a state is exposed that might be shared between threads. + + + +## Examples + The following code example illustrates the use of the attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet3"::: + ]]> @@ -677,15 +677,15 @@ if synchronization is exposed; otherwise, . The default is . - attribute with the property. This example is part of a larger example provided for the class. - + attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet6"::: + ]]> @@ -724,15 +724,15 @@ if the user interface is exposed; otherwise, . The default is . - attribute with the property. This example is part of a larger example provided for the class. - + attribute with the property. This example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/CPP/hostprotectionattribute.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/HostProtectionAttribute/Overview/hostprotectionattribute.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.HostProtectionAttribute.1.1/VB/hostprotectionattribute.vb" id="Snippet3"::: + ]]> diff --git a/xml/System.Security.Permissions/WebBrowserPermissionLevel.xml b/xml/System.Security.Permissions/WebBrowserPermissionLevel.xml index 2930fb5354b..6292194dd82 100644 --- a/xml/System.Security.Permissions/WebBrowserPermissionLevel.xml +++ b/xml/System.Security.Permissions/WebBrowserPermissionLevel.xml @@ -44,30 +44,30 @@ Specifies the permission level for a Web browser. - property of the class. - - The Safe permission level restricts the following Web browser operations. - -- A pop-up window cannot be created over the Web browser control. - -- The Web browser control can only be navigated to its site of origin. - -- The security settings of the Web browser control are reduced. - - - -## Examples - The following example shows how to demand that the calling code has unrestricted permission to create a Web browser control. - + Use this enumeration to set the property of the class. + + The Safe permission level restricts the following Web browser operations. + +- A pop-up window cannot be created over the Web browser control. + +- The Web browser control can only be navigated to its site of origin. + +- The security settings of the Web browser control are reduced. + + + +## Examples + The following example shows how to demand that the calling code has unrestricted permission to create a Web browser control. + :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/WebBrowserPermission/.ctor/Window1.xaml.cs" id="Snippetwebbrowserpermissionattribute3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/WebBrowserPermissionsSnippets/visualbasic/window1.xaml.vb" id="Snippetwebbrowserpermissionattribute3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/WebBrowserPermissionsSnippets/visualbasic/window1.xaml.vb" id="Snippetwebbrowserpermissionattribute3"::: + ]]> diff --git a/xml/System.Security.Permissions/ZoneIdentityPermission.xml b/xml/System.Security.Permissions/ZoneIdentityPermission.xml index 64f1a837c3d..30eda55bdc1 100644 --- a/xml/System.Security.Permissions/ZoneIdentityPermission.xml +++ b/xml/System.Security.Permissions/ZoneIdentityPermission.xml @@ -49,27 +49,27 @@ Defines the identity permission for the zone from which the code originates. This class cannot be inherited. - [!IMPORTANT] -> Starting with .NET Framework 4, identity permissions are not used. - +> Starting with .NET Framework 4, identity permissions are not used. + ]]> @@ -120,24 +120,24 @@ One of the values. Initializes a new instance of the class with the specified . - [!NOTE] -> In the .NET Framework versions 1.0 and 1.1, identity permissions cannot have an permission state value. Starting with the .NET Framework version 2.0, identity permissions can have any permission state value. This means that in 2.0 and later versions, identity permissions have the same behavior as permissions that implement the interface. That is, a demand for an identity always succeeds, regardless of the identity of the assembly, if the assembly has been granted full trust. - - In the .NET Framework versions 1.0 and 1.1, demands on the identity permissions are effective, even when the calling assembly is fully trusted. That is, although the calling assembly has full trust, a demand for an identity permission fails if the assembly does not meet the demanded criteria. Starting with the .NET Framework version 2.0, demands for identity permissions are ineffective if the calling assembly has full trust. This assures consistency for all permissions, eliminating the treatment of identity permissions as a special case. - - - -## Examples - The following example shows the use of the constructor. - +> In the .NET Framework versions 1.0 and 1.1, identity permissions cannot have an permission state value. Starting with the .NET Framework version 2.0, identity permissions can have any permission state value. This means that in 2.0 and later versions, identity permissions have the same behavior as permissions that implement the interface. That is, a demand for an identity always succeeds, regardless of the identity of the assembly, if the assembly has been granted full trust. + + In the .NET Framework versions 1.0 and 1.1, demands on the identity permissions are effective, even when the calling assembly is fully trusted. That is, although the calling assembly has full trust, a demand for an identity permission fails if the assembly does not meet the demanded criteria. Starting with the .NET Framework version 2.0, demands for identity permissions are ineffective if the calling assembly has full trust. This assures consistency for all permissions, eliminating the treatment of identity permissions as a special case. + + + +## Examples + The following example shows the use of the constructor. + :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/ZoneIdentityPermission/.ctor/zoneidentity.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.ZoneIdentityPermission/VB/zoneidentity.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.ZoneIdentityPermission/VB/zoneidentity.vb" id="Snippet7"::: + ]]> The parameter is not a valid value of . @@ -176,14 +176,14 @@ The zone identifier. Initializes a new instance of the class to represent the specified zone identity. - constructor. - + constructor. + :::code language="csharp" source="~/snippets/csharp/System.Security.Permissions/ZoneIdentityPermission/.ctor/zoneidentity.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.ZoneIdentityPermission/VB/zoneidentity.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.ZoneIdentityPermission/VB/zoneidentity.vb" id="Snippet8"::: + ]]> @@ -222,11 +222,11 @@ Creates and returns an identical copy of the current permission. A copy of the current permission. - @@ -268,10 +268,10 @@ Reconstructs a permission with a specified state from an XML encoding. To be added. The parameter is . - The parameter is not a valid permission element. - - -or- - + The parameter is not a valid permission element. + + -or- + The parameter's version number is not valid. @@ -312,13 +312,13 @@ Creates and returns a permission that is the intersection of the current permission and the specified permission. A new permission that represents the intersection of the current permission and the specified permission. This new permission is if the intersection is empty. - objects is the same permission. Any other combination results in a permission that is `null`. - + objects is the same permission. Any other combination results in a permission that is `null`. + ]]> The parameter is not and is not of the same type as the current permission. @@ -362,11 +362,11 @@ if the current permission is a subset of the specified permission; otherwise, . - security zone. - + security zone. + ]]> The parameter is not , this permission does not represent the security zone, and the specified permission is not equal to the current permission. @@ -481,19 +481,19 @@ Creates a permission that is the union of the current permission and the specified permission. A new permission that represents the union of the current permission and the specified permission. - is a permission that represents the security zone represented by both the current permission and the specified permission. Any demand that passes either permission passes their union. The union of two identical objects is the same permission. The union of a null permission and a permission is the permission that is not null. - - Note that a object representing a security zone is treated as a null permission and handled as a special case. The union of a object representing the security zone and a null permission is null. The union of two different zone identity permissions results in an exception being thrown when neither of the two permissions represents the security zone. - + is a permission that represents the security zone represented by both the current permission and the specified permission. Any demand that passes either permission passes their union. The union of two identical objects is the same permission. The union of a null permission and a permission is the permission that is not null. + + Note that a object representing a security zone is treated as a null permission and handled as a special case. The union of a object representing the security zone and a null permission is null. The union of two different zone identity permissions results in an exception being thrown when neither of the two permissions represents the security zone. + ]]> - The parameter is not and is not of the same type as the current permission. - - -or- - + The parameter is not and is not of the same type as the current permission. + + -or- + The two permissions are not equal and the current permission does not represent the security zone. diff --git a/xml/System.Security.Policy/NetCodeGroup.xml b/xml/System.Security.Policy/NetCodeGroup.xml index 601520997b1..df53702bcfb 100644 --- a/xml/System.Security.Policy/NetCodeGroup.xml +++ b/xml/System.Security.Policy/NetCodeGroup.xml @@ -45,34 +45,34 @@ Grants Web permission to the site from which the assembly was downloaded. This class cannot be inherited. - has the same merge semantics as that of ; it forms the union of the objects of all matching child code groups and the it generates from the input evidence. However, returns a permission containing a dynamically calculated that grants connect access to the site from which the code is run; simply returns a static permission set. - - When a is created, it contains the default connection access rules shown in the following table. - -|URI Scheme|Rule| -|----------------|----------| -|file|No connection access to the origin server is permitted.| -|http|HTTP and HTTPS access is permitted using the origin port.| -|https|HTTPS access is permitted using the origin port.| - - You can control the scheme and port that code is permitted to use when connecting back to its site of origin by passing a object with the appropriate and property values to the method. You can create a connection access rule that applies when the origin scheme is not present in the evidence or is not recognized by specifying ("") as the scheme. You can also create a connection access rule that applies when there is no connection access rule with a matching scheme by specifying ("*") as the scheme. - + has the same merge semantics as that of ; it forms the union of the objects of all matching child code groups and the it generates from the input evidence. However, returns a permission containing a dynamically calculated that grants connect access to the site from which the code is run; simply returns a static permission set. + + When a is created, it contains the default connection access rules shown in the following table. + +|URI Scheme|Rule| +|----------------|----------| +|file|No connection access to the origin server is permitted.| +|http|HTTP and HTTPS access is permitted using the origin port.| +|https|HTTPS access is permitted using the origin port.| + + You can control the scheme and port that code is permitted to use when connecting back to its site of origin by passing a object with the appropriate and property values to the method. You can create a connection access rule that applies when the origin scheme is not present in the evidence or is not recognized by specifying ("") as the scheme. You can also create a connection access rule that applies when there is no connection access rule with a matching scheme by specifying ("*") as the scheme. + > [!NOTE] -> If code does not submit the URI scheme as evidence, access is permitted using any scheme back to the origin site. - - - -## Examples - The following code example demonstrates creating a and adding objects for code downloaded using the HTTP scheme. - +> If code does not submit the URI scheme as evidence, access is permitted using any scheme back to the origin site. + + + +## Examples + The following code example demonstrates creating a and adding objects for code downloaded using the HTTP scheme. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/NclCodeGroup/cpp/sample.cpp" id="Snippet3"::: - :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet3"::: - + :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet3"::: + ]]> @@ -110,25 +110,25 @@ A membership condition that tests evidence to determine whether this code group applies code access security policy. Initializes a new instance of the class. - is created, it contains the default connection access rules shown in the following table. - -|Scheme|Rule| -|------------|----------| -|file|No connection access to the origin server is permitted.| -|http|HTTP and HTTPS access is permitted using the origin port.| -|https|HTTPS access is permitted using the origin port.| - - - -## Examples - The following code example demonstrates creating a and adding objects for code downloaded using the HTTP scheme. - + is created, it contains the default connection access rules shown in the following table. + +|Scheme|Rule| +|------------|----------| +|file|No connection access to the origin server is permitted.| +|http|HTTP and HTTPS access is permitted using the origin port.| +|https|HTTPS access is permitted using the origin port.| + + + +## Examples + The following code example demonstrates creating a and adding objects for code downloaded using the HTTP scheme. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/NclCodeGroup/cpp/sample.cpp" id="Snippet3"::: - :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet3"::: - + :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet3"::: + ]]> The parameter is . @@ -166,15 +166,15 @@ Contains a value used to specify connection access for code with an unknown or unrecognized origin scheme. - method, you specify a scheme and an associated object. Any objects that you add to the using as the origin scheme are applied when the code's origin scheme is not present in its evidence, or is not a scheme recognized by the object. - - To specify the objects to use when the code's origin scheme does not match any of the schemes contained in the set of origin schemes added to the current object, use the value. - - The value of the field is an empty string (""). - + method, you specify a scheme and an associated object. Any objects that you add to the using as the origin scheme are applied when the code's origin scheme is not present in its evidence, or is not a scheme recognized by the object. + + To specify the objects to use when the code's origin scheme does not match any of the schemes contained in the set of origin schemes added to the current object, use the value. + + The value of the field is an empty string (""). + ]]> @@ -216,28 +216,28 @@ A that specifies the scheme and port code can use to connect back to its origin server. Adds the specified connection access to the current code group. - objects for the same `origin scheme`. If an `origin scheme` already has one or more associated objects, specifying `null` for `connectAccess` has no effect. If the origin scheme does not have associated objects, specifying `null` for `connectAccess` prevents code with an origin scheme that matches `originScheme` from accessing its origin server. - - - -## Examples - The following code example demonstrates creating and adding objects to a . - + objects for the same `origin scheme`. If an `origin scheme` already has one or more associated objects, specifying `null` for `connectAccess` has no effect. If the origin scheme does not have associated objects, specifying `null` for `connectAccess` prevents code with an origin scheme that matches `originScheme` from accessing its origin server. + + + +## Examples + The following code example demonstrates creating and adding objects to a . + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/NclCodeGroup/cpp/sample.cpp" id="Snippet3"::: - :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet3"::: - + :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet3"::: + ]]> is . - contains characters that are not permitted in schemes. - - -or- - + contains characters that are not permitted in schemes. + + -or- + = and specifies as its scheme. @@ -272,17 +272,17 @@ Contains a value used to specify any other unspecified origin scheme. - method, you specify a scheme and an associated object. You can use the value of the field to specify the objects that should be used for any scheme that is not explicitly contained in the set of origin schemes added to the current object. - - The objects specified with the field are only used if the code's origin scheme does not match any of the schemes contained in the set of origin schemes added to the current object. - - To specify the objects to apply when the code's origin scheme is not available in its evidence or is not recognized, use the value. - - The value of the field is "*". - + method, you specify a scheme and an associated object. You can use the value of the field to specify the objects that should be used for any scheme that is not explicitly contained in the set of origin schemes added to the current object. + + The objects specified with the field are only used if the code's origin scheme does not match any of the schemes contained in the set of origin schemes added to the current object. + + To specify the objects to apply when the code's origin scheme is not available in its evidence or is not recognized, use the value. + + The value of the field is "*". + ]]> @@ -368,11 +368,11 @@ Makes a deep copy of the current code group. An equivalent copy of the current code group, including its membership conditions and child code groups. - @@ -459,17 +459,17 @@ if the specified code group is equivalent to the current code group; otherwise, . - objects: - -- The and properties. - -- The property. - -- The set of origin schemes and the associated objects. - + objects: + +- The and properties. + +- The property. + +- The set of origin schemes and the associated objects. + ]]> @@ -507,19 +507,19 @@ Gets the connection access information for the current code group. A array containing connection access information. - property value is the origin scheme, and the property value is the array of associated objects. If there are no associated objects, returns an empty array. - - - -## Examples - The following code example demonstrates displaying the connection access rules for a object. - + property value is the origin scheme, and the property value is the array of associated objects. If there are no associated objects, returns an empty array. + + + +## Examples + The following code example demonstrates displaying the connection access rules for a object. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/NclCodeGroup/cpp/sample.cpp" id="Snippet8"::: - :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet8"::: - + :::code language="csharp" source="~/snippets/csharp/System.Security.Policy/CodeConnectAccess/Overview/sample.cs" id="Snippet8"::: + ]]> @@ -713,27 +713,27 @@ Removes all connection access information for the current code group. - @@ -781,15 +781,15 @@ Resolves policy for the code group and its descendants for a set of evidence. A that consists of the permissions granted by the code group with optional attributes, or if the code group does not apply (the membership condition does not match the specified evidence). - The parameter is . @@ -839,11 +839,11 @@ Resolves matching code groups. The complete set of code groups that were matched by the evidence. - The parameter is . diff --git a/xml/System.Security.RightsManagement/ContentGrant.xml b/xml/System.Security.RightsManagement/ContentGrant.xml index 393b487fa47..4c3f161490b 100644 --- a/xml/System.Security.RightsManagement/ContentGrant.xml +++ b/xml/System.Security.RightsManagement/ContentGrant.xml @@ -84,9 +84,9 @@ ## Remarks This constructor initializes the instance with no date or time limitations. -- The property is set to ., which indicates there is no starting limitation. +- The property is set to ., which indicates there is no starting limitation. -- The property is set to ., which indicates there is no ending limitation. +- The property is set to ., which indicates there is no ending limitation. Use the alternate constructor to create an instance with date and time limitations. diff --git a/xml/System.Security/AllowPartiallyTrustedCallersAttribute.xml b/xml/System.Security/AllowPartiallyTrustedCallersAttribute.xml index 7ad1a65f92f..a64fc4851ac 100644 --- a/xml/System.Security/AllowPartiallyTrustedCallersAttribute.xml +++ b/xml/System.Security/AllowPartiallyTrustedCallersAttribute.xml @@ -86,7 +86,7 @@ ## Examples The following example shows how to use the class. - + :::code language="csharp" source="~/snippets/csharp/System.Security/AllowPartiallyTrustedCallersAttribute/Overview/AllowPartiallyTrustedCallersAttribute.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.AllowPartiallyTrustedCallersAttribute/VB/allowpartiallytrustedcallersattribute.vb" id="Snippet1"::: @@ -189,7 +189,7 @@ ## Remarks The following examples demonstrate how to use this property. -- Default, unconditional APTCA: +- Default, unconditional APTCA: ``` [assembly: AllowPartiallyTrustedCallers] @@ -197,7 +197,7 @@ Defaults to . -- Explicit, unconditional APTCA: +- Explicit, unconditional APTCA: ``` [assembly: AllowPartiallyTrustedCallers(PartialTrustVisibilityLevel=VisibleToAllHosts)] @@ -205,7 +205,7 @@ The assembly can always be called by partial-trust code. -- Explicit, conditional APTCA: +- Explicit, conditional APTCA: ``` [assembly: AllowPartiallyTrustedCallers(PartialTrustVisibilityLevel=NotVisibleByDefault)] diff --git a/xml/System.Security/CodeAccessPermission.xml b/xml/System.Security/CodeAccessPermission.xml index 72a69d248e4..374da30f0ee 100644 --- a/xml/System.Security/CodeAccessPermission.xml +++ b/xml/System.Security/CodeAccessPermission.xml @@ -59,36 +59,36 @@ Defines the underlying structure of all code access permissions. - . - - The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. - - Inheritors of the class must be granted full trust to function correctly as permissions extending the security infrastructure. To determine that the inheritors are fully trusted, issues an for = `true` and = `true`. - - - -## Examples - The following code example shows a permission derived from the class. - + Code access permissions use a stack walk to ensure that all callers of the code have been granted a permission. If a permission object is `null`, it is handled the same as a permission object with the state . + + The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. + + Inheritors of the class must be granted full trust to function correctly as permissions extending the security infrastructure. To determine that the inheritors are fully trusted, issues an for = `true` and = `true`. + + + +## Examples + The following code example shows a permission derived from the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/CPP/nameidpermission.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Security/CodeAccessPermission/Overview/nameidpermission.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet1"::: + ]]> - When you inherit from , you must also implement the interface. - - The following members must be overridden: , , , , , and . - - You must also define a constructor that takes a as its only parameter. - + When you inherit from , you must also implement the interface. + + The following members must be overridden: , , , , , and . + + You must also define a constructor that takes a as its only parameter. + You must apply the attribute to a class that inherits from . @@ -122,11 +122,11 @@ Initializes a new instance of the class. - @@ -173,24 +173,24 @@ Declares that the calling code can access the resource protected by a permission demand through the code that calls this method, even if callers higher in the stack have not been granted permission to access the resource. Using can create security issues. - prevents a stack walk originating lower in the call stack from proceeding up the call stack beyond the code that calls this method. Therefore, even if callers higher on the call stack do not have the requisite permissions to access a resource, they can still access it through the code that calls this method on the necessary permission. An assertion is effective only if the code that calls passes the security check for the permission that it is asserting. - - The call to is effective until the calling code returns to its caller. Only one can be active on a frame. An attempt to call when an active exists on the frame results in a . Call or to remove an active . - - is ignored for a permission not granted because a demand for that permission will not succeed. However, if code lower on the call stack calls for that permission, a is thrown when the stack walk reaches the code that tried to call . This happens because the code that called has not been granted the permission, even though it tried to it. - + prevents a stack walk originating lower in the call stack from proceeding up the call stack beyond the code that calls this method. Therefore, even if callers higher on the call stack do not have the requisite permissions to access a resource, they can still access it through the code that calls this method on the necessary permission. An assertion is effective only if the code that calls passes the security check for the permission that it is asserting. + + The call to is effective until the calling code returns to its caller. Only one can be active on a frame. An attempt to call when an active exists on the frame results in a . Call or to remove an active . + + is ignored for a permission not granted because a demand for that permission will not succeed. However, if code lower on the call stack calls for that permission, a is thrown when the stack walk reaches the code that tried to call . This happens because the code that called has not been granted the permission, even though it tried to it. + > [!CAUTION] -> Because calling removes the requirement that all code in the call chain must be granted permission to access the specified resource, it can open up security issues if used incorrectly or inappropriately. Therefore, it should be used with great caution. - +> Because calling removes the requirement that all code in the call chain must be granted permission to access the specified resource, it can open up security issues if used incorrectly or inappropriately. Therefore, it should be used with great caution. + ]]> - The calling code does not have . - - -or- - + The calling code does not have . + + -or- + There is already an active for the current frame. You cannot override this method. @@ -235,20 +235,20 @@ When implemented by a derived class, creates and returns an identical copy of the current permission object. A copy of the current permission object. - method. This code example is part of a larger example provided for the class. - + method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/CPP/nameidpermission.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Security/CodeAccessPermission/Overview/nameidpermission.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet2"::: + ]]> @@ -299,19 +299,19 @@ Forces a at run time if all callers higher in the call stack have not been granted the permission specified by the current instance. - for the necessary before performing a file operation requested by the caller. - - The permissions of the code that calls this method are not examined; the check begins from the immediate caller of that code and proceeds up the stack. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. succeeds only if no is raised. - + for the necessary before performing a file operation requested by the caller. + + The permissions of the code that calls this method are not examined; the check begins from the immediate caller of that code and proceeds up the stack. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. succeeds only if no is raised. + ]]> - A caller higher in the call stack does not have the permission specified by the current instance. - - -or- - + A caller higher in the call stack does not have the permission specified by the current instance. + + -or- + A caller higher in the call stack has called on the current permission object. You cannot override this method. @@ -368,19 +368,19 @@ Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance. - [!IMPORTANT] -> The method should be used only to protect resources from accidental access by fully trusted code. It should not be used to protect resources from intentional misuse by untrusted code. For example, if method `A` issues a for a permission and then calls method `B`, method `B` can overtly override the by issuing an . The called method is always higher in the stack. Therefore, if method `B` tries to access a protected resource, the security system begins checking for permissions with it because method `B` is the immediate caller, and then walks down the stack to confirm that there is no or lower in the stack. Method `B`, which is trying to access the resource, can stop the stack walk immediately by using the method. In that case, the placed on the stack by method `A` (the calling method) is never discovered. - - This method prevents callers higher in the call stack from accessing the protected resource through the code that calls this method, even if those callers have been granted permission to access it. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. - - can limit the liability of the programmer or help prevent accidental security issues because it helps prevent the method that calls from being used to access the resource protected by the denied permission. If a method calls on a permission, and if a for that permission is invoked by a caller lower in the call stack, that security check will fail when it reaches the . - - The call to is effective until the calling code returns to its caller. Only one can be active on a frame. An attempt to call when an active exists on the frame results in a . Call or to remove an active . is ignored for a permission not granted because a demand for that permission will not succeed. - +> The method should be used only to protect resources from accidental access by fully trusted code. It should not be used to protect resources from intentional misuse by untrusted code. For example, if method `A` issues a for a permission and then calls method `B`, method `B` can overtly override the by issuing an . The called method is always higher in the stack. Therefore, if method `B` tries to access a protected resource, the security system begins checking for permissions with it because method `B` is the immediate caller, and then walks down the stack to confirm that there is no or lower in the stack. Method `B`, which is trying to access the resource, can stop the stack walk immediately by using the method. In that case, the placed on the stack by method `A` (the calling method) is never discovered. + + This method prevents callers higher in the call stack from accessing the protected resource through the code that calls this method, even if those callers have been granted permission to access it. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. + + can limit the liability of the programmer or help prevent accidental security issues because it helps prevent the method that calls from being used to access the resource protected by the denied permission. If a method calls on a permission, and if a for that permission is invoked by a caller lower in the call stack, that security check will fail when it reaches the . + + The call to is effective until the calling code returns to its caller. Only one can be active on a frame. An attempt to call when an active exists on the frame results in a . Call or to remove an active . is ignored for a permission not granted because a demand for that permission will not succeed. + ]]> There is already an active for the current frame. @@ -432,11 +432,11 @@ if the specified object is equal to the current ; otherwise, . - . - + . + ]]> @@ -480,27 +480,27 @@ The XML encoding to use to reconstruct the security object. When overridden in a derived class, reconstructs a security object with a specified state from an XML encoding. - and methods to make the objects security-encodable. - - - -## Examples - The following code example shows an override of the method. This code example is part of a larger example provided for the class. - + and methods to make the objects security-encodable. + + + +## Examples + The following code example shows an override of the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/CPP/nameidpermission.cpp" id="Snippet10"::: :::code language="csharp" source="~/snippets/csharp/System.Security/CodeAccessPermission/Overview/nameidpermission.cs" id="Snippet10"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet10"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet10"::: + ]]> The parameter is . - The parameter does not contain the XML encoding for an instance of the same type as the current instance. - - -or- - + The parameter does not contain the XML encoding for an instance of the same type as the current instance. + + -or- + The version number of the parameter is not supported. You must override this method in a derived class. @@ -546,11 +546,11 @@ Gets a hash code for the object that is suitable for use in hashing algorithms and data structures such as a hash table. A hash code for the current object. - objects. - + objects. + ]]> @@ -595,20 +595,20 @@ When implemented by a derived class, creates and returns a permission that is the intersection of the current permission and the specified permission. A new permission that represents the intersection of the current permission and the specified permission. This new permission is if the intersection is empty. - method. This code example is part of a larger example provided for the class. - + method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/CPP/nameidpermission.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Security/CodeAccessPermission/Overview/nameidpermission.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet5"::: + ]]> The parameter is not and is not an instance of the same class as the current permission. @@ -658,36 +658,36 @@ if the current permission is a subset of the specified permission; otherwise, . - method. *X*, *Y*, and *Z* represent custom code access permission objects that are not null references, *U* represents an unrestricted code access permission, and *N* represents an empty permission with a of . - -- *X*.IsSubsetOf(*X*) returns `true`. - -- *X*.IsSubsetOf(*Y*) returns the same value as *Y*.IsSubsetOf(*X*) if and only if *X* and *Y* represent the same set of permissions. - -- If *X*.IsSubsetOf(*Y*) and *Y*.IsSubsetOf(*Z*) both return `true`, *X*.IsSubsetOf(*Z*) returns `true`. - -- *X*.IsSubsetOf(*U*) returns `true`. - -- *X*.IsSubsetOf(*N*) returns `false`. - -- *N*.IsSubsetOf(*X*) returns `true`. - - If *X* and *Y* represent custom code access permission objects that are null references, *X*.IsSubsetOf(*Y*) returns `true`. If *Z* is also null, the compound set operation *X*.Union(*Y*).IsSubsetOf(*Z*) also returns `true` because the union of two null permissions is a null permission. - - - -## Examples - The following code example shows an override of the method. This code example is part of a larger example provided for the class. - + method. *X*, *Y*, and *Z* represent custom code access permission objects that are not null references, *U* represents an unrestricted code access permission, and *N* represents an empty permission with a of . + +- *X*.IsSubsetOf(*X*) returns `true`. + +- *X*.IsSubsetOf(*Y*) returns the same value as *Y*.IsSubsetOf(*X*) if and only if *X* and *Y* represent the same set of permissions. + +- If *X*.IsSubsetOf(*Y*) and *Y*.IsSubsetOf(*Z*) both return `true`, *X*.IsSubsetOf(*Z*) returns `true`. + +- *X*.IsSubsetOf(*U*) returns `true`. + +- *X*.IsSubsetOf(*N*) returns `false`. + +- *N*.IsSubsetOf(*X*) returns `true`. + + If *X* and *Y* represent custom code access permission objects that are null references, *X*.IsSubsetOf(*Y*) returns `true`. If *Z* is also null, the compound set operation *X*.Union(*Y*).IsSubsetOf(*Z*) also returns `true` because the union of two null permissions is a null permission. + + + +## Examples + The following code example shows an override of the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/CPP/nameidpermission.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Security/CodeAccessPermission/Overview/nameidpermission.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet4"::: + ]]> The parameter is not and is not of the same type as the current permission. @@ -738,19 +738,19 @@ Prevents callers higher in the call stack from using the code that calls this method to access all resources except for the resource specified by the current instance. - [!IMPORTANT] -> The method should be used only to protect resources from accidental access by fully trusted code. It should not be used to protect resources from intentional misuse by untrusted code. For example, if method `A` issues a for a permission and then calls method `B`, method `B` can overtly override the by issuing an . The called method is always higher in the stack. Therefore, if method `B` tries to access a protected resource, the security system begins checking for permissions with it because method `B` is the immediate caller, and then walks down the stack to confirm that there is no or lower in the stack. Method `B`, which is trying to access the resource, can stop the stack walk immediately by using the method. In that case, the placed on the stack by method `A` (the calling method) is never discovered. - - is similar to , in that both cause stack walks to fail when they would otherwise succeed. The difference is that specifies permissions that will cause the stack walk to fail, but specifies the only permissions that do not cause the stack walk to fail. - - Call this method to ensure that your code can be used to access only the specified resources. The call to is effective until the calling code returns to its caller. Only one can be active on a frame. An attempt to call when an active exists on the frame results in a . Call or to remove an active . - - is ignored for a permission not granted because a demand for that permission will not succeed. However, if code lower on the call stack later calls for that permission, a is thrown when the stack walk reaches the code that tried to call . This is because the code that called has not been granted the permission, even though it called for that permission. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. - +> The method should be used only to protect resources from accidental access by fully trusted code. It should not be used to protect resources from intentional misuse by untrusted code. For example, if method `A` issues a for a permission and then calls method `B`, method `B` can overtly override the by issuing an . The called method is always higher in the stack. Therefore, if method `B` tries to access a protected resource, the security system begins checking for permissions with it because method `B` is the immediate caller, and then walks down the stack to confirm that there is no or lower in the stack. Method `B`, which is trying to access the resource, can stop the stack walk immediately by using the method. In that case, the placed on the stack by method `A` (the calling method) is never discovered. + + is similar to , in that both cause stack walks to fail when they would otherwise succeed. The difference is that specifies permissions that will cause the stack walk to fail, but specifies the only permissions that do not cause the stack walk to fail. + + Call this method to ensure that your code can be used to access only the specified resources. The call to is effective until the calling code returns to its caller. Only one can be active on a frame. An attempt to call when an active exists on the frame results in a . Call or to remove an active . + + is ignored for a permission not granted because a demand for that permission will not succeed. However, if code lower on the call stack later calls for that permission, a is thrown when the stack walk reaches the code that tried to call . This is because the code that called has not been granted the permission, even though it called for that permission. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. + ]]> There is already an active for the current frame. @@ -798,11 +798,11 @@ Causes all previous overrides for the current frame to be removed and no longer in effect. - , , or ) for the current frame, an is thrown. - + , , or ) for the current frame, an is thrown. + ]]> There is no previous , , or for the current frame. @@ -847,11 +847,11 @@ Causes any previous for the current frame to be removed and no longer in effect. - for the current frame, an is thrown. - + for the current frame, an is thrown. + ]]> There is no previous for the current frame. @@ -904,11 +904,11 @@ Causes any previous for the current frame to be removed and no longer in effect. - for the current frame, an is thrown. - + for the current frame, an is thrown. + ]]> There is no previous for the current frame. @@ -953,11 +953,11 @@ Causes any previous for the current frame to be removed and no longer in effect. - for the current frame, an is thrown. - + for the current frame, an is thrown. + ]]> There is no previous for the current frame. @@ -997,11 +997,11 @@ Creates and returns a string representation of the current permission object. A string representation of the current permission object. - @@ -1043,20 +1043,20 @@ When overridden in a derived class, creates an XML encoding of the security object and its current state. An XML encoding of the security object, including any state information. - and methods to make the objects security-encodable. - - - -## Examples - The following code example shows an override of the method. This code example is part of a larger example provided for the class. - + and methods to make the objects security-encodable. + + + +## Examples + The following code example shows an override of the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/CPP/nameidpermission.cpp" id="Snippet11"::: :::code language="csharp" source="~/snippets/csharp/System.Security/CodeAccessPermission/Overview/nameidpermission.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet11"::: + ]]> @@ -1104,20 +1104,20 @@ When overridden in a derived class, creates a permission that is the union of the current permission and the specified permission. A new permission that represents the union of the current permission and the specified permission. - is a permission that represents all the operations represented by both the current permission and the specified permission. Any demand that passes either permission passes their union. - - - -## Examples - The following code example shows an override of the method. This code example is part of a larger example provided for the class. - + is a permission that represents all the operations represented by both the current permission and the specified permission. Any demand that passes either permission passes their union. + + + +## Examples + The following code example shows an override of the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/CPP/nameidpermission.cpp" id="Snippet12"::: :::code language="csharp" source="~/snippets/csharp/System.Security/CodeAccessPermission/Overview/nameidpermission.cs" id="Snippet12"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet12"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Security.Permissions.NameIdPermission/VB/nameidpermission.vb" id="Snippet12"::: + ]]> The parameter is not . This method is only supported at this level when passed . diff --git a/xml/System.Security/HostSecurityManager.xml b/xml/System.Security/HostSecurityManager.xml index badc9120c02..b835bda4944 100644 --- a/xml/System.Security/HostSecurityManager.xml +++ b/xml/System.Security/HostSecurityManager.xml @@ -219,11 +219,11 @@ This property is called at creation time. It allows a host to supply a policy for the current . A policy level consists of the following: -- A set of code groups organized into a single rooted tree. +- A set of code groups organized into a single rooted tree. -- A set of named permission sets that are referenced by the code groups to specify permissions to be granted to code belonging to the code group. +- A set of named permission sets that are referenced by the code groups to specify permissions to be granted to code belonging to the code group. -- A list of fully trusted assemblies. +- A list of fully trusted assemblies. > [!IMPORTANT] > See the Notes to Inheritors for the class for critical implementation information. diff --git a/xml/System.Security/IPermission.xml b/xml/System.Security/IPermission.xml index 590e4c07e93..9a44cb3a273 100644 --- a/xml/System.Security/IPermission.xml +++ b/xml/System.Security/IPermission.xml @@ -84,37 +84,37 @@ Defines methods implemented by permission types. - [!NOTE] -> If you write a new permission, you must implement this interface in your class. - +> If you write a new permission, you must implement this interface in your class. + > [!IMPORTANT] -> A permission can be accessed by multiple threads. When implementing this interface, you must guarantee that the , , , and method implementations are thread safe. - - - -## Examples - This example shows how to define a permission class for use with code access security. All of the necessary permission interfaces are implemented. - +> A permission can be accessed by multiple threads. When implementing this interface, you must guarantee that the , , , and method implementations are thread safe. + + + +## Examples + This example shows how to define a permission class for use with code access security. All of the necessary permission interfaces are implemented. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Permission/cpp/Permission.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Security/IPermission/Overview/Permission.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet1"::: + ]]> @@ -169,20 +169,20 @@ Creates and returns an identical copy of the current permission. A copy of the current permission. - method. This code example is part of a larger example provided for the interface. - + method. This code example is part of a larger example provided for the interface. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Permission/cpp/Permission.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/System.Security/IPermission/Overview/Permission.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet4"::: + ]]> @@ -236,15 +236,15 @@ Throws a at run time if the security requirement is not met. - for the necessary before performing a file operation requested by the caller. - - Although the majority of the classes that implement this interface method satisfy the security criteria by performing a full stack walk, a stack walk is not necessarily performed. An example of an implementation that does not perform a stack walk is . - - When a stack walk is performed, the permissions of the code that calls this method are not examined; the check begins from the immediate caller of that code and proceeds up the stack. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. succeeds only if no is raised. - + for the necessary before performing a file operation requested by the caller. + + Although the majority of the classes that implement this interface method satisfy the security criteria by performing a full stack walk, a stack walk is not necessarily performed. An example of an implementation that does not perform a stack walk is . + + When a stack walk is performed, the permissions of the code that calls this method are not examined; the check begins from the immediate caller of that code and proceeds up the stack. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. succeeds only if no is raised. + ]]> @@ -303,28 +303,28 @@ Creates and returns a permission that is the intersection of the current permission and the specified permission. A new permission that represents the intersection of the current permission and the specified permission. This new permission is if the intersection is empty. - method. `X` and `Y` represent object references that are not `null`. - -- `X`.Intersect(`X`) returns a value equal to `X`. - -- `X`.Intersect(`Y`) returns the same value as `Y`.Intersect(`X`). - -- `X`.Intersect(`null`) returns `null`. - - - -## Examples - The following code example demonstrates implementing the method. This code example is part of a larger example provided for the class. - + method. `X` and `Y` represent object references that are not `null`. + +- `X`.Intersect(`X`) returns a value equal to `X`. + +- `X`.Intersect(`Y`) returns the same value as `Y`.Intersect(`X`). + +- `X`.Intersect(`null`) returns `null`. + + + +## Examples + The following code example demonstrates implementing the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Permission/cpp/Permission.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Security/IPermission/Overview/Permission.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet2"::: + ]]> The parameter is not and is not an instance of the same class as the current permission. @@ -385,30 +385,30 @@ if the current permission is a subset of the specified permission; otherwise, . - method. `X`, `Y`, and `Z` represent objects that are not `null`. - -- `X`.IsSubsetOf(`X`) returns `true`. - -- `X`.IsSubsetOf(`Y`) returns the same value as `Y`.IsSubsetOf(`X`) if and only if `X` and `Y` represent the same set of permissions. - -- If `X`.IsSubsetOf(`Y`) and `Y`.IsSubsetOf(`Z`) both return `true`, `X`.IsSubsetOf(`Z`) returns `true`. - - If `X` represents an empty object with a permission state of and `Y` represents an object that is `null`, `X`.IsSubsetOf(`Y`) returns `true`. If `Z` is also an empty permission, the compound set operation `X`.Union(Z).IsSubsetOf(Y) also returns `true` because the union of two empty permissions is an empty permission. - - - -## Examples - The following code example demonstrates implementing the method. This code example is part of a larger example provided for the class. - + method. `X`, `Y`, and `Z` represent objects that are not `null`. + +- `X`.IsSubsetOf(`X`) returns `true`. + +- `X`.IsSubsetOf(`Y`) returns the same value as `Y`.IsSubsetOf(`X`) if and only if `X` and `Y` represent the same set of permissions. + +- If `X`.IsSubsetOf(`Y`) and `Y`.IsSubsetOf(`Z`) both return `true`, `X`.IsSubsetOf(`Z`) returns `true`. + + If `X` represents an empty object with a permission state of and `Y` represents an object that is `null`, `X`.IsSubsetOf(`Y`) returns `true`. If `Z` is also an empty permission, the compound set operation `X`.Union(Z).IsSubsetOf(Y) also returns `true` because the union of two empty permissions is an empty permission. + + + +## Examples + The following code example demonstrates implementing the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Permission/cpp/Permission.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Security/IPermission/Overview/Permission.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet3"::: + ]]> The parameter is not and is not of the same type as the current permission. @@ -468,28 +468,28 @@ Creates a permission that is the union of the current permission and the specified permission. A new permission that represents the union of the current permission and the specified permission. - is a permission that represents all the operations represented by both the current permission and the specified permission. Any demand that passes either permission passes their union. - - The following statements are required to be true for all implementations of the method. `X` and `Y` represent objects that are not `null`. - -- `X`.Union(`X`) returns an object that has the same value as `X`. - -- `X`.Union(`Y`) returns an object that has the same value as the object returned by `Y`.Union(`X`). - -- `X`.Union(`null`) returns an object that has the same value as `X`. - - - -## Examples - The following code example demonstrates implementing the method. This code example is part of a larger example provided for the class. - + is a permission that represents all the operations represented by both the current permission and the specified permission. Any demand that passes either permission passes their union. + + The following statements are required to be true for all implementations of the method. `X` and `Y` represent objects that are not `null`. + +- `X`.Union(`X`) returns an object that has the same value as `X`. + +- `X`.Union(`Y`) returns an object that has the same value as the object returned by `Y`.Union(`X`). + +- `X`.Union(`null`) returns an object that has the same value as `X`. + + + +## Examples + The following code example demonstrates implementing the method. This code example is part of a larger example provided for the class. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_CLR/Permission/cpp/Permission.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Security/IPermission/Overview/Permission.cs" id="Snippet5"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/Permission/vb/permission.vb" id="Snippet5"::: - + ]]> The parameter is not and is not of the same type as the current permission. diff --git a/xml/System.Security/ManifestKinds.xml b/xml/System.Security/ManifestKinds.xml index e5c680ef9ad..51df2df911f 100644 --- a/xml/System.Security/ManifestKinds.xml +++ b/xml/System.Security/ManifestKinds.xml @@ -22,15 +22,15 @@ Represents the type of manifest that the signature information applies to. - method, it specifies which manifests you want to generate signature information for. - -- In a object, it shows you which manifest the signature information is generated from. - + method, it specifies which manifests you want to generate signature information for. + +- In a object, it shows you which manifest the signature information is generated from. + ]]> diff --git a/xml/System.Security/SecurityElement.xml b/xml/System.Security/SecurityElement.xml index 56268a4d8e2..a5b000c529d 100644 --- a/xml/System.Security/SecurityElement.xml +++ b/xml/System.Security/SecurityElement.xml @@ -94,11 +94,11 @@ The simple XML object model for an element consists of the following parts: -- The tag is the element name. +- The tag is the element name. -- The attributes are zero or more name/value attribute pairs on the element. +- The attributes are zero or more name/value attribute pairs on the element. -- The children are zero or more elements nested within `` and ``. +- The children are zero or more elements nested within `` and ``. It is strongly suggested that attribute based XML representation is used to express security elements and their values. This means properties of an element are expressed as attributes and property values are expressed as attribute values. Avoid nesting text within tags. For any `text` representation a representation of type `` is usually available. Using this attribute-based XML representation increases readability and allows easy WMI portability of the resulting XML serialization. diff --git a/xml/System.Security/SecurityException.xml b/xml/System.Security/SecurityException.xml index 422746c32f2..85a33c4aff3 100644 --- a/xml/System.Security/SecurityException.xml +++ b/xml/System.Security/SecurityException.xml @@ -1175,9 +1175,9 @@ This property contains one of the following: -- Information about the method that the failed assembly was executing when the security check that triggered the exception occurred. +- Information about the method that the failed assembly was executing when the security check that triggered the exception occurred. -- Information about the method that placed either a or security action on the call stack, in the case of a failure due to a or . +- Information about the method that placed either a or security action on the call stack, in the case of a failure due to a or . - `null`, in the case of a failure that is impossible to attribute to a specific method. diff --git a/xml/System.ServiceModel.Activation/AspNetCompatibilityRequirementsAttribute.xml b/xml/System.ServiceModel.Activation/AspNetCompatibilityRequirementsAttribute.xml index f4776d286d9..e8cd760f0e9 100644 --- a/xml/System.ServiceModel.Activation/AspNetCompatibilityRequirementsAttribute.xml +++ b/xml/System.ServiceModel.Activation/AspNetCompatibilityRequirementsAttribute.xml @@ -27,42 +27,42 @@ Applied to a Windows Communication Foundation (WCF) service to indicate whether that service can be run in ASP.NET compatibility code. - ` - - `` - - `` - - This flag is `false` by default and thus WCF services run in the Mixed Transports Mode unless you explicitly opt into the ASP.NET compatibility mode. - - For more information about ASP.NET compatibility mode, see [<serviceHostingEnvironment>](/dotnet/framework/configure-apps/file-schema/wcf/servicehostingenvironment). - - Use the property to do this. At runtime, applications can detect if ASP.NET compatibility mode is enabled by checking the value of the static property . - - - -## Examples - Service developers can ensure that their service is only run in ASP.NET Compatibility Mode by setting the property on the to as shown in the following example - + ` + + `` + + `` + + This flag is `false` by default and thus WCF services run in the Mixed Transports Mode unless you explicitly opt into the ASP.NET compatibility mode. + + For more information about ASP.NET compatibility mode, see [<serviceHostingEnvironment>](/dotnet/framework/configure-apps/file-schema/wcf/servicehostingenvironment). + + Use the property to do this. At runtime, applications can detect if ASP.NET compatibility mode is enabled by checking the value of the static property . + + + +## Examples + Service developers can ensure that their service is only run in ASP.NET Compatibility Mode by setting the property on the to as shown in the following example + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_aspnetcompatibility/cs/service.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_aspnetcompatibility/vb/service.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_aspnetcompatibility/vb/service.vb" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_aspnetcompatibility/cs/service.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_aspnetcompatibility/vb/service.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_aspnetcompatibility/vb/service.vb" id="Snippet2"::: + ]]> @@ -117,19 +117,19 @@ Gets or sets the level of ASP.NET compatibility required by the service. The that indicates the services required degree of ASP.NET compatibility. The default value is . - property to set the hosting mode in code. This can also be done by setting an application-level configuration flag `aspNetCompatibilityEnabled`. For more information, see [<serviceHostingEnvironment>](/dotnet/framework/configure-apps/file-schema/wcf/servicehostingenvironment). - - At runtime, applications can detect whether ASP.NET compatibility mode is enabled by checking the value of the static property . - - - -## Examples + property to set the hosting mode in code. This can also be done by setting an application-level configuration flag `aspNetCompatibilityEnabled`. For more information, see [<serviceHostingEnvironment>](/dotnet/framework/configure-apps/file-schema/wcf/servicehostingenvironment). + + At runtime, applications can detect whether ASP.NET compatibility mode is enabled by checking the value of the static property . + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_aspnetcompatibility/cs/service.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_aspnetcompatibility/vb/service.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_aspnetcompatibility/vb/service.vb" id="Snippet2"::: + ]]> The value is not a valid one for the . @@ -167,11 +167,11 @@ The that contains the parameters that the binding elements for the service can access. Adds custom data that the binding elements can access to support the implementation of the contract. - @@ -204,11 +204,11 @@ The for hosting the service. Checks that the type of hosting is consistent with the ASP.NET compatibility requirements. - @@ -244,11 +244,11 @@ The for hosting the service. Validates the service behavior. - diff --git a/xml/System.ServiceModel.Activities.Description/SqlWorkflowInstanceStoreBehavior.xml b/xml/System.ServiceModel.Activities.Description/SqlWorkflowInstanceStoreBehavior.xml index 7c1b8937535..163866617c5 100644 --- a/xml/System.ServiceModel.Activities.Description/SqlWorkflowInstanceStoreBehavior.xml +++ b/xml/System.ServiceModel.Activities.Description/SqlWorkflowInstanceStoreBehavior.xml @@ -73,11 +73,11 @@ A connection string that refers to a SQL Server persistence database. Initializes an instance of the class using the connection string passed as a parameter. - object using the connection string. - + object using the connection string. + ]]> @@ -206,11 +206,11 @@ if the instance state information is kept in the persistence database; otherwise . - @@ -256,17 +256,17 @@ Gets or sets the property. This property specifies what action a service host should take when it receives an when the host tries to lock an instance because the instance is currently locked by another host. The action a service host should take when receiving a . - to the caller. - -- Basic Retry. The service host reattempts to lock the instance with a linear retry interval and passes the exception to the caller at the end of the sequence. - -- Aggressive Retry. The service host reattempts to lock the instance with an exponentially increasing delay and passes the to the caller at the end of the sequence. - + to the caller. + +- Basic Retry. The service host reattempts to lock the instance with a linear retry interval and passes the exception to the caller at the end of the sequence. + +- Aggressive Retry. The service host reattempts to lock the instance with an exponentially increasing delay and passes the to the caller at the end of the sequence. + ]]> diff --git a/xml/System.ServiceModel.Channels/Binding.xml b/xml/System.ServiceModel.Channels/Binding.xml index 76d61b285ba..8e5f5d2bf4d 100644 --- a/xml/System.ServiceModel.Channels/Binding.xml +++ b/xml/System.ServiceModel.Channels/Binding.xml @@ -1281,9 +1281,9 @@ ## Remarks When using a reliable session, there are two different inactivity timers that must be satisfied to keep the connection alive. If either of these inactivity timers goes off, then the connection is dropped. -- The first inactivity timer is on the reliable session and is called the . This inactivity timer fires if no messages, either application or infrastructure, are received within the timeout period. An infrastructure message is a message that is generated for the purpose of one of the protocols in the channel stack, such as a keep alive or an acknowledgment, rather than containing application data. +- The first inactivity timer is on the reliable session and is called the . This inactivity timer fires if no messages, either application or infrastructure, are received within the timeout period. An infrastructure message is a message that is generated for the purpose of one of the protocols in the channel stack, such as a keep alive or an acknowledgment, rather than containing application data. -- The second inactivity timer is on the service and uses the setting of the binding. This inactivity timer fires if no application messages are received within the timeout period. This specifies, for example, the maximum time a client may take to send at least one message to the server before the server will close the channel used by a session. This behavior ensures that clients cannot hold on to server resources for arbitrary long periods. +- The second inactivity timer is on the service and uses the setting of the binding. This inactivity timer fires if no application messages are received within the timeout period. This specifies, for example, the maximum time a client may take to send at least one message to the server before the server will close the channel used by a session. This behavior ensures that clients cannot hold on to server resources for arbitrary long periods. Since the connection is dropped if either inactivity timer fires, increasing once it is greater than has no effect. The default for both of these timeouts is 10 minutes, so you always have to increase both of them to make a difference when using a reliable session. diff --git a/xml/System.ServiceModel.Channels/ContextExchangeMechanism.xml b/xml/System.ServiceModel.Channels/ContextExchangeMechanism.xml index 43ecc7dd276..6487d375050 100644 --- a/xml/System.ServiceModel.Channels/ContextExchangeMechanism.xml +++ b/xml/System.ServiceModel.Channels/ContextExchangeMechanism.xml @@ -28,33 +28,33 @@ Specifies whether an HTTP cookie or a SOAP header is the mechanism used to exchange context for a conversation between a client and service. - property or the constructor to specify the value of the for a conversation between a client and service. - - Service endpoints that require support for the context exchange protocol can make this requirement explicit in their published policy. Policy assertions that represent the requirement for the client to support the context exchange protocol at the SOAP level or that require the enabling of HTTP cookie support can be published by an endpoint. The generation of these assertions into the policy on the service is controlled by the value of the property as follows: - -- For HttpCookie, the following assertion is generated: - - ``` - - ``` - -- For ContextSoapHeader, the following assertion is generated: - - ``` - - ``` - - The HttpCookie enumeration is implemented at the transport layer. This can be used in the case of simplex communication, where the client makes an initial request and the context is provided by the service on the corresponding reply. All subsequent messages between the service and client for the lifetime of that conversation contain the context. For service endpoints that use an HTTP transport and clients that agree to allow the use of HTTP cookies, the HttpCookie enumeration can be utilized to exchange the application context. When HTTP cookies are used to propagate context, they should be protected using transport security. This mechanism cannot be used with non-HTTP transports. - - The ContextSoapHeader enumeration provides an alternative that is implemented in a custom context channel and that can be used with non-HTTP transports and other message exchange pattern, such as request-reply, and a duplex session. This context exchange protocol provides a SOAP-based equivalent of the feature offered by HTTP cookies at the transport layer. It introduces a new `wsc:Context` SOAP header to represent the context information. The `wsc:Context` header must be protected from modification while in transit for the same reason as the WS-Addressing headers must be protected: upon arrival, these headers are used to dispatch the message to the correct workflow instances. The `wsc:Context` header is therefore required to be digitally signed at either SOAP or transport level when the binding offers message protection capability. - - The channel layer communicates the context to and from the application layer using . - + property or the constructor to specify the value of the for a conversation between a client and service. + + Service endpoints that require support for the context exchange protocol can make this requirement explicit in their published policy. Policy assertions that represent the requirement for the client to support the context exchange protocol at the SOAP level or that require the enabling of HTTP cookie support can be published by an endpoint. The generation of these assertions into the policy on the service is controlled by the value of the property as follows: + +- For HttpCookie, the following assertion is generated: + + ``` + + ``` + +- For ContextSoapHeader, the following assertion is generated: + + ``` + + ``` + + The HttpCookie enumeration is implemented at the transport layer. This can be used in the case of simplex communication, where the client makes an initial request and the context is provided by the service on the corresponding reply. All subsequent messages between the service and client for the lifetime of that conversation contain the context. For service endpoints that use an HTTP transport and clients that agree to allow the use of HTTP cookies, the HttpCookie enumeration can be utilized to exchange the application context. When HTTP cookies are used to propagate context, they should be protected using transport security. This mechanism cannot be used with non-HTTP transports. + + The ContextSoapHeader enumeration provides an alternative that is implemented in a custom context channel and that can be used with non-HTTP transports and other message exchange pattern, such as request-reply, and a duplex session. This context exchange protocol provides a SOAP-based equivalent of the feature offered by HTTP cookies at the transport layer. It introduces a new `wsc:Context` SOAP header to represent the context information. The `wsc:Context` header must be protected from modification while in transit for the same reason as the WS-Addressing headers must be protected: upon arrival, these headers are used to dispatch the message to the correct workflow instances. The `wsc:Context` header is therefore required to be digitally signed at either SOAP or transport level when the binding offers message protection capability. + + The channel layer communicates the context to and from the application layer using . + ]]> diff --git a/xml/System.ServiceModel.Channels/CustomBinding.xml b/xml/System.ServiceModel.Channels/CustomBinding.xml index ad199ad7608..3fb623c83fb 100644 --- a/xml/System.ServiceModel.Channels/CustomBinding.xml +++ b/xml/System.ServiceModel.Channels/CustomBinding.xml @@ -58,11 +58,11 @@ A custom binding is constructed using one of the from a collection of binding elements that are "stacked" in a specific order: -- At the top is an optional that allows flowing transactions. +- At the top is an optional that allows flowing transactions. -- Next is an optional that provides a session and ordering mechanism as defined in the WS-ReliableMessaging specification. This notion of a session can cross SOAP and transport intermediaries. +- Next is an optional that provides a session and ordering mechanism as defined in the WS-ReliableMessaging specification. This notion of a session can cross SOAP and transport intermediaries. -- Next is an optional security binding element that provides security features like authorization, authentication, protection, and confidentiality. The following security binding elements are provided by Windows Communication Foundation (WCF): +- Next is an optional security binding element that provides security features like authorization, authentication, protection, and confidentiality. The following security binding elements are provided by Windows Communication Foundation (WCF): - @@ -72,11 +72,11 @@ - -- Next are the optional message-patterns specified by binding elements: +- Next are the optional message-patterns specified by binding elements: - -- Next are the optional transport upgrades/helpers binding elements: +- Next are the optional transport upgrades/helpers binding elements: - @@ -84,7 +84,7 @@ - -- Next is a required message encoding binding element. You can use your own transport or use one of the following message encoding bindings: +- Next is a required message encoding binding element. You can use your own transport or use one of the following message encoding bindings: - @@ -92,7 +92,7 @@ - -- At the bottom is a required transport element. You can use your own transport or use one of transport binding elements provided by Windows Communication Foundation (WCF): +- At the bottom is a required transport element. You can use your own transport or use one of transport binding elements provided by Windows Communication Foundation (WCF): - diff --git a/xml/System.ServiceModel.Channels/FaultConverter.xml b/xml/System.ServiceModel.Channels/FaultConverter.xml index 1c349412966..eeae20fa6fb 100644 --- a/xml/System.ServiceModel.Channels/FaultConverter.xml +++ b/xml/System.ServiceModel.Channels/FaultConverter.xml @@ -174,11 +174,11 @@ ## Remarks For a channel layer to implement `GetProperty` to support converting fault messages to SOAP exceptions, override this method to create an exception by doing the following steps: -- Inspect the fault message. +- Inspect the fault message. -- If recognized, do the appropriate conversion. +- If recognized, do the appropriate conversion. -- If not recognized, convert it by a call to `GetProperty` on the inner channel. +- If not recognized, convert it by a call to `GetProperty` on the inner channel. Transport channels should delegate to to get the default SOAP/WS-Addressing fault converter. diff --git a/xml/System.ServiceModel.Channels/HttpRequestMessageProperty.xml b/xml/System.ServiceModel.Channels/HttpRequestMessageProperty.xml index 924874f6d78..fae99f52b77 100644 --- a/xml/System.ServiceModel.Channels/HttpRequestMessageProperty.xml +++ b/xml/System.ServiceModel.Channels/HttpRequestMessageProperty.xml @@ -62,39 +62,39 @@ Provides access to the HTTP request to access and respond to the additional information made available for requests over the HTTP protocol. - and related classes. - - For incoming messages, this property is added to messages. - - For outgoing messages, this property causes the following to happen: - -- is set to . - -- is appended to the . - -- is added to the HTTP headers set to be transmitted. - - - -## Examples - The following code shows how to set several of the properties in an instance of this class and incorporate the instance into a message. - + and related classes. + + For incoming messages, this property is added to messages. + + For outgoing messages, this property causes the following to happen: + +- is set to . + +- is appended to the . + +- is added to the HTTP headers set to be transmitted. + + + +## Examples + The following code shows how to set several of the properties in an instance of this class and incorporate the instance into a message. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_pox/cs/service.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_pox/vb/service.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_pox/vb/service.vb" id="Snippet3"::: + ]]> @@ -127,25 +127,25 @@ Initializes a new instance of the class. - = `POST`. - -- is set to the empty string. - -- = `false`. - - - -## Examples - The following code shows how to instantiate this class from a message without explicitly calling the constructor. - + = `POST`. + +- is set to the empty string. + +- = `false`. + + + +## Examples + The following code shows how to instantiate this class from a message without explicitly calling the constructor. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_pox/cs/service.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_pox/vb/service.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_pox/vb/service.vb" id="Snippet0"::: + ]]> @@ -182,19 +182,19 @@ Gets the HTTP headers from the HTTP request. Returns a that contains the HTTP headers in the HTTP request. - @@ -237,19 +237,19 @@ Gets or sets the HTTP verb for the HTTP request. The HTTP verb for the HTTP request. - The value is set to . @@ -327,11 +327,11 @@ Gets or sets the query string for the HTTP request. The query string from the HTTP request. - The value is set to . @@ -380,19 +380,19 @@ if the message body is suppressed; otherwise, . The default is . - object for the response message, set the property to `true`. - - When interoperating with non-WCF services, it is important to note that certain verbs are expected to contain a message body according to the HTTP standard; these include PUT and POST. Other verbs are expected to suppress the message body; these include GET and HEAD. - - - -## Examples + object for the response message, set the property to `true`. + + When interoperating with non-WCF services, it is important to note that certain verbs are expected to contain a message body according to the HTTP standard; these include PUT and POST. Other verbs are expected to suppress the message body; these include GET and HEAD. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_pox/cs/service.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_pox/vb/service.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_pox/vb/service.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.ServiceModel.Channels/HttpResponseMessageProperty.xml b/xml/System.ServiceModel.Channels/HttpResponseMessageProperty.xml index 421411a0e2a..e3077337687 100644 --- a/xml/System.ServiceModel.Channels/HttpResponseMessageProperty.xml +++ b/xml/System.ServiceModel.Channels/HttpResponseMessageProperty.xml @@ -62,28 +62,28 @@ Provides access to the HTTP response in order to access and respond to the additional information made available for requests over the HTTP protocol. - and related classes. - - - -## Examples - This shows how to use create an instance of the `HttpResponseProperty` class and modify some of its members: - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uehttpresponsemessageproperty/cs/service.cs" id="Snippet0"::: - + and related classes. + + + +## Examples + This shows how to use create an instance of the `HttpResponseProperty` class and modify some of its members: + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uehttpresponsemessageproperty/cs/service.cs" id="Snippet0"::: + ]]> @@ -116,17 +116,17 @@ Initializes a new instance of the class. - = . - -- is set to `null`. - -- = `false`. - + = . + +- is set to `null`. + +- = `false`. + ]]> @@ -163,13 +163,13 @@ Gets the HTTP headers from the HTTP response. Returns a that contains the HTTP headers in the HTTP response. - @@ -234,13 +234,13 @@ Gets the name of the message property associated with the class. Returns "httpResponse". - @@ -283,18 +283,18 @@ Gets or sets the status code of the current HTTP response to which this property is attached. Returns the to send on the HTTP response. - enumeration. - - - -## Examples - This shows how to get the that is sent on the HTTP response: - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uehttpresponsemessageproperty/cs/service.cs" id="Snippet3"::: - + enumeration. + + + +## Examples + This shows how to get the that is sent on the HTTP response: + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uehttpresponsemessageproperty/cs/service.cs" id="Snippet3"::: + ]]> The value is set to less than 100 or greater than 599. @@ -342,18 +342,18 @@ Gets or sets the description of the status code of the current HTTP response to which this property is attached. Returns the to send for the HTTP response. - @@ -397,18 +397,18 @@ if the message body is suppressed; otherwise, . The default is . - associated with this response has this property set to `true`. - - - -## Examples - This shows how to suppress the message body: - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uehttpresponsemessageproperty/cs/service.cs" id="Snippet5"::: - + associated with this response has this property set to `true`. + + + +## Examples + This shows how to suppress the message body: + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uehttpresponsemessageproperty/cs/service.cs" id="Snippet5"::: + ]]> @@ -452,43 +452,43 @@ if the message preamble is suppressed; otherwise, . - property enables users to write content into the from within a WCF operation body. This takes effect only on webhosted scenarios. The property is `false` by default. - + property enables users to write content into the from within a WCF operation body. This takes effect only on webhosted scenarios. The property is `false` by default. + > [!WARNING] -> If the property is set to `true`, you must set the headers, content-type, status code on the response because WCF will no longer do it. - - The following code shows an example of how to do this. - +> If the property is set to `true`, you must set the headers, content-type, status code on the response because WCF will no longer do it. + + The following code shows an example of how to do this. + ```csharp -public class Service1 : IService1 -{ - public void GetData() - { - HttpContext hc = HttpContext.Current; - string str = @""; - var buffer = new byte[str.Length]; - buffer = ASCIIEncoding.UTF8.GetBytes(str); - +public class Service1 : IService1 +{ + public void GetData() + { + HttpContext hc = HttpContext.Current; + string str = @""; + var buffer = new byte[str.Length]; + buffer = ASCIIEncoding.UTF8.GetBytes(str); + // Enable the property. - var responseProperty = new HttpResponseMessageProperty(); - responseProperty.SuppressPreamble = true; - OperationContext.Current.OutgoingMessageProperties[HttpResponseMessageProperty.Name] = responseProperty; - + var responseProperty = new HttpResponseMessageProperty(); + responseProperty.SuppressPreamble = true; + OperationContext.Current.OutgoingMessageProperties[HttpResponseMessageProperty.Name] = responseProperty; + // Set the response. - hc.Response.StatusCode = 200; - hc.Response.ContentType = "text/xml; charset=utf-8"; - hc.Response.ClearContent(); - hc.Response.Flush(); - - hc.Response.OutputStream.Write(buffer, 0, buffer.Length); - hc.Response.Flush(); - } -} -``` - + hc.Response.StatusCode = 200; + hc.Response.ContentType = "text/xml; charset=utf-8"; + hc.Response.ClearContent(); + hc.Response.Flush(); + + hc.Response.OutputStream.Write(buffer, 0, buffer.Length); + hc.Response.Flush(); + } +} +``` + ]]> diff --git a/xml/System.ServiceModel.Channels/HttpTransportBindingElement.xml b/xml/System.ServiceModel.Channels/HttpTransportBindingElement.xml index e7f222c4192..904cb474390 100644 --- a/xml/System.ServiceModel.Channels/HttpTransportBindingElement.xml +++ b/xml/System.ServiceModel.Channels/HttpTransportBindingElement.xml @@ -57,44 +57,44 @@ Represents the binding element used to specify an HTTP transport for transmitting messages. - class is the starting point for creating a custom binding that implements the HTTP transport protocol. HTTP is the primary transport used for interoperability purposes. This transport is supported by Windows Communication Foundation (WCF) to ensure interoperability with other non-WCF Web services stacks. - - The WCF service model uses this class to create factory objects that implement the and interfaces. These factory objects, in turn, create the channels and listeners that transmit SOAP messages using the HTTP protocol. - - You configure the factories that this class creates by setting its properties, such as , , and . - - You can also set properties on the base class, , such as , , and . For a complete list of properties, see . - - - -## Examples - The following code shows how to imperatively use the . - + class is the starting point for creating a custom binding that implements the HTTP transport protocol. HTTP is the primary transport used for interoperability purposes. This transport is supported by Windows Communication Foundation (WCF) to ensure interoperability with other non-WCF Web services stacks. + + The WCF service model uses this class to create factory objects that implement the and interfaces. These factory objects, in turn, create the channels and listeners that transmit SOAP messages using the HTTP protocol. + + You configure the factories that this class creates by setting its properties, such as , , and . + + You can also set properties on the base class, , such as , , and . For a complete list of properties, see . + + + +## Examples + The following code shows how to imperatively use the . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_imperative/cs/service.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_imperative/vb/service.vb" id="Snippet1"::: - - `HttpTransportBindingElement` can also be used in a configuration file as shown in the following configuration. - -```xml - - - - - - - - - -``` - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_imperative/vb/service.vb" id="Snippet1"::: + + `HttpTransportBindingElement` can also be used in a configuration file as shown in the following configuration. + +```xml + + + + + + + + + +``` + ]]> @@ -171,25 +171,25 @@ An object used to initialize this instance. Initializes a new instance of the class using another binding element. - @@ -241,21 +241,21 @@ public class MyBindingElement : HttpTransportBindingElement if cookies are allowed; otherwise, . The default is . - @@ -302,40 +302,40 @@ httpBindingElement.AllowCookies = true; Gets or sets the authentication scheme used to authenticate client requests being processed by an HTTP listener. One of the enumeration values of the enumeration that specifies the protocols used for client authentication. The default is . - proxy = new ChannelFactory(binding, endpoint); - -proxy.Credentials.Windows.ClientCredential = new NetworkCredential("user", "password", "domain"); -proxy.Credentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; -proxy.Open(); - -ICalculator calc = proxy.CreateChannel(); - -int odd=calc.Add(5,4); -``` - + proxy = new ChannelFactory(binding, endpoint); + +proxy.Credentials.Windows.ClientCredential = new NetworkCredential("user", "password", "domain"); +proxy.Credentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation; +proxy.Open(); + +ICalculator calc = proxy.CreateChannel(); + +int odd=calc.Add(5,4); +``` + ]]> The value for the was already set. @@ -382,11 +382,11 @@ int odd=calc.Add(5,4); Creates a channel factory that can be used to create a channel. A channel factory of the specified type. - @@ -431,11 +431,11 @@ int odd=calc.Add(5,4); Creates a channel listener of the specified type. A channel listener of the specified type. - @@ -487,23 +487,23 @@ int odd=calc.Add(5,4); if proxies are ignored for local addresses; otherwise, . The default is . - @@ -627,15 +627,15 @@ httpBinding.BypassProxyOnLocal = true; Creates a new instance that is a copy of the current binding element. A new instance that is a copy of the current binding element. - @@ -853,18 +853,18 @@ HttpBindingElement bindingElement = elementToClone.Clone(); if the request to the service endpoint should contain a Connection HTTP header with the value ; otherwise, . The default is . - @@ -907,23 +907,23 @@ HttpBindingElement bindingElement = elementToClone.Clone(); Gets or sets the maximum size of the buffer to use. For buffered messages this value is the same as . For streamed messages, this value is the maximum size of the SOAP headers, which must be read in buffered mode. The maximum size, in bytes, of the buffer. - is thrown. For a non-streamed message, if the message size is greater than this property, then the message is dropped. - - If not specified, this defaults to 65536. - - - -## Examples - The following example sets this property to use when performing requests on the binding. - -```csharp -HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); -httpBinding.MaxBufferSize = 16384; -``` - + is thrown. For a non-streamed message, if the message size is greater than this property, then the message is dropped. + + If not specified, this defaults to 65536. + + + +## Examples + The following example sets this property to use when performing requests on the binding. + +```csharp +HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); +httpBinding.MaxBufferSize = 16384; +``` + ]]> @@ -961,11 +961,11 @@ httpBinding.MaxBufferSize = 16384; Gets or sets the maximum number of connections the service can accept simultaneously. The maximum number of connections the service can accept simultaneously. - is 0, which means WCF will configure the value for you. You can increase the number for better scalability. In the self-hosted case, this property controls the maximum number of simultaneous BeginGetContext calls WCF will invoke. Each time BeginGetContext is called some memory is pinned within the managed heap for buffering. If too many buffers are pinned, excessive heap fragmentation may result. This property is ignored in the web-hosted case. - + is 0, which means WCF will configure the value for you. You can increase the number for better scalability. In the self-hosted case, this property controls the maximum number of simultaneous BeginGetContext calls WCF will invoke. Each time BeginGetContext is called some memory is pinned within the managed heap for buffering. If too many buffers are pinned, excessive heap fragmentation may result. This property is ignored in the web-hosted case. + ]]> @@ -1080,16 +1080,16 @@ httpBinding.MaxBufferSize = 16384; Gets or sets a URI that contains the address of the proxy to use for HTTP requests. The that contains the address for the proxy. The default value is . - is set to `true` and the endpoint is a local endpoint. - -```csharp -HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); -httpBinding.ProxyAddress = new Uri(http://proxyserver); -``` - + is set to `true` and the endpoint is a local endpoint. + +```csharp +HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); +httpBinding.ProxyAddress = new Uri(http://proxyserver); +``` + ]]> @@ -1133,17 +1133,17 @@ httpBinding.ProxyAddress = new Uri(http://proxyserver); Gets or sets the authentication scheme used to authenticate client requests being processed by an HTTP proxy. The enumeration that specifies the protocols used for client authentication on the proxy. The default is . - property. - -```csharp -HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); -httpBinding.ProxyAddress = new Uri(http://proxyserver); -httpBinding.ProxyAuthenticationScheme = AuthenticationSchemes.Digest; -``` - + property. + +```csharp +HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); +httpBinding.ProxyAddress = new Uri(http://proxyserver); +httpBinding.ProxyAuthenticationScheme = AuthenticationSchemes.Digest; +``` + ]]> @@ -1186,11 +1186,11 @@ httpBinding.ProxyAuthenticationScheme = AuthenticationSchemes.Digest; Gets or sets the authentication realm. The authentication realm. The default value is "". - @@ -1262,23 +1262,23 @@ httpBinding.ProxyAuthenticationScheme = AuthenticationSchemes.Digest; Gets the URI scheme for the transport. A object that represents the URI scheme for the transport. - @@ -1411,17 +1411,17 @@ Console.WriteLine("The scheme of the binding is {0}.",httpBinding.Scheme); The that you can use to insert your custom policy assertion. Exports a custom policy assertion about bindings. - and objects. Use the , , and methods to obtain collections of policy assertions that have already been exported at various scopes. Then use this method to add your own policy assertions to the appropriate collection. - - The property exposes the for the endpoint that is being exported. This allows this method to correctly scope their exported policy assertions. For example, security attributes in code may add behaviors to the that indicate where security policy assertions should be added. - - Once custom policy assertions have been attached to the WSDL information, clients can detect and import the custom binding assertions by implementing an interface. - + and objects. Use the , , and methods to obtain collections of policy assertions that have already been exported at various scopes. Then use this method to add your own policy assertions to the appropriate collection. + + The property exposes the for the endpoint that is being exported. This allows this method to correctly scope their exported policy assertions. For example, security attributes in code may add behaviors to the that indicate where security policy assertions should be added. + + Once custom policy assertions have been attached to the WSDL information, clients can detect and import the custom binding assertions by implementing an interface. + ]]> @@ -1532,22 +1532,22 @@ Console.WriteLine("The scheme of the binding is {0}.",httpBinding.Scheme); Gets or sets the transfer mode. - One of the following member values of : - -- Buffered - -- Streamed - -- StreamedRequest - -- StreamedResponse. + One of the following member values of : + +- Buffered + +- Streamed + +- StreamedRequest + +- StreamedResponse. - = Streamed implies both `StreamedRequest` and `StreamedResponse`. - + = Streamed implies both `StreamedRequest` and `StreamedResponse`. + ]]> @@ -1595,29 +1595,29 @@ Console.WriteLine("The scheme of the binding is {0}.",httpBinding.Scheme); if Unsafe Connection Sharing is enabled; otherwise, . The default is . - of the initial request. - - This property has no effect when NTLM is not the authentication protocol. - + of the initial request. + + This property has no effect when NTLM is not the authentication protocol. + > [!NOTE] -> While setting this property to `true` increases performance because additional NTLM authentication challenges are not sent, there is a security risk in not requiring all requests to provide authentication information. You must determine whether the increase in performance is worth this risk. - - For more information, see . - - - -## Examples - The following example sets the property to enable Unsafe Connection Sharing. - -```csharp -HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); -httpBinding.AuthenticationScheme = AuthenticationSchemes.Ntlm; -httpBinding.UnsafeConnectionNtlmAuthentication = true; -``` - +> While setting this property to `true` increases performance because additional NTLM authentication challenges are not sent, there is a security risk in not requiring all requests to provide authentication information. You must determine whether the increase in performance is worth this risk. + + For more information, see . + + + +## Examples + The following example sets the property to enable Unsafe Connection Sharing. + +```csharp +HttpTransportBindingElement httpBinding = new HttpTransportBindingElement(); +httpBinding.AuthenticationScheme = AuthenticationSchemes.Ntlm; +httpBinding.UnsafeConnectionNtlmAuthentication = true; +``` + ]]> @@ -1693,16 +1693,16 @@ httpBinding.UnsafeConnectionNtlmAuthentication = true; if the machine-wide proxy settings are used; otherwise, . The default is . - diff --git a/xml/System.ServiceModel.Channels/IContextManager.xml b/xml/System.ServiceModel.Channels/IContextManager.xml index c7ba3b6de43..25e64987fb7 100644 --- a/xml/System.ServiceModel.Channels/IContextManager.xml +++ b/xml/System.ServiceModel.Channels/IContextManager.xml @@ -26,24 +26,24 @@ Defines an interface that allows you to get and set the context on the channel. - with the value set, the context cannot be retrieved on the client using because a new channel that establishes a session is created each time is called to enforce semantics on a channel. This means that even though the context is properly propagated back to the client in this case, it cannot be retrieved using . You can still retrieve it using as shown in the following code. - -```csharp -using (new OperationContextScope((IContextChannel)channel)) -{ - channel.MyChannel("Test"); - ContextMessageProperty context; - if (ContextMessageProperty.TryGet(OperationContext.Current.IncomingMessageProperties, out context)) - { - Console.WriteLine(context.Count); - } -} - -``` - + with the value set, the context cannot be retrieved on the client using because a new channel that establishes a session is created each time is called to enforce semantics on a channel. This means that even though the context is properly propagated back to the client in this case, it cannot be retrieved using . You can still retrieve it using as shown in the following code. + +```csharp +using (new OperationContextScope((IContextChannel)channel)) +{ + channel.MyChannel("Test"); + ContextMessageProperty context; + if (ContextMessageProperty.TryGet(OperationContext.Current.IncomingMessageProperties, out context)) + { + Console.WriteLine(context.Count); + } +} + +``` + ]]> @@ -72,31 +72,31 @@ using (new OperationContextScope((IContextChannel)channel)) if the context is enabled; otherwise, . - method on it. The channel can also be pre-initialized with context before being opened by calling the method on the channel property. Once the channel is initialized with context it cannot be reset. - - The following are invariants in this mode: - -- Any call to after the channel is open throws an `InvalidOperationException`. - -- Any attempt to send context through the `ContextMessageProperty` in an outgoing message throws `InvalidOperationException`. - -- If a message is received from the server with context, when the channel is already initialized with a context a `ProtocolException` is thrown. Note that you can receive initial context from a server if the channel is opened without explicitly setting the context. - -- The `ContextMessageProperty` on an incoming message is always `null`. - - When context management is not enabled, the context channel does not manage context. It is the application's responsibility to retrieve, manage and apply context through the `ContextMessageProperty`. Any attempt to call or using through the `IContextManager` channel property results in `InvalidOperationException`. - - All HTTP cookies, except for context HTTP cookies, are handled at the channel level. Context HTTP cookies are managed at the application level. This can have unexpected consequences when channels are shared to talk to different instances targeted by . The following table shows how HTTP cookies are affected when is set to either `true` or `false`. - -|Binding|IContextManager.Enabled Value|Context HTTP Cookie Scope|Other HTTP Cookies Scope| -|-------------|-----------------------------------|-------------------------------|------------------------------| -|BasicHttpBinding|n/a|ChannelFactory|ChannelFactory| -|BasicHttpContextBinding|true|Channel|Channel| -|BasicHttpContextBinding|false|For each message (explicitly managed by application)|Channel| - + method on it. The channel can also be pre-initialized with context before being opened by calling the method on the channel property. Once the channel is initialized with context it cannot be reset. + + The following are invariants in this mode: + +- Any call to after the channel is open throws an `InvalidOperationException`. + +- Any attempt to send context through the `ContextMessageProperty` in an outgoing message throws `InvalidOperationException`. + +- If a message is received from the server with context, when the channel is already initialized with a context a `ProtocolException` is thrown. Note that you can receive initial context from a server if the channel is opened without explicitly setting the context. + +- The `ContextMessageProperty` on an incoming message is always `null`. + + When context management is not enabled, the context channel does not manage context. It is the application's responsibility to retrieve, manage and apply context through the `ContextMessageProperty`. Any attempt to call or using through the `IContextManager` channel property results in `InvalidOperationException`. + + All HTTP cookies, except for context HTTP cookies, are handled at the channel level. Context HTTP cookies are managed at the application level. This can have unexpected consequences when channels are shared to talk to different instances targeted by . The following table shows how HTTP cookies are affected when is set to either `true` or `false`. + +|Binding|IContextManager.Enabled Value|Context HTTP Cookie Scope|Other HTTP Cookies Scope| +|-------------|-----------------------------------|-------------------------------|------------------------------| +|BasicHttpBinding|n/a|ChannelFactory|ChannelFactory| +|BasicHttpContextBinding|true|Channel|Channel| +|BasicHttpContextBinding|false|For each message (explicitly managed by application)|Channel| + ]]> @@ -125,19 +125,19 @@ using (new OperationContextScope((IContextChannel)channel)) Gets the context. The of key/value pairs with the namespace and name of the context. - context; -CalculatorProxy proxy; -IContextManager cm = proxy.InnerChannel.GetProperty(); -if (cm != null) - context = cm.GetContext(); -``` - + context; +CalculatorProxy proxy; +IContextManager cm = proxy.InnerChannel.GetProperty(); +if (cm != null) + context = cm.GetContext(); +``` + ]]> @@ -168,19 +168,19 @@ if (cm != null) The of key/value pairs with the namespace and name of the context that is set. Sets the context. - context; -CalculatorProxy proxy; -IContextManager cm = proxy.InnerChannel.GetProperty(); -if (cm != null) - cm.SetContext(context); -``` - + context; +CalculatorProxy proxy; +IContextManager cm = proxy.InnerChannel.GetProperty(); +if (cm != null) + cm.SetContext(context); +``` + ]]> diff --git a/xml/System.ServiceModel.Channels/IDuplexSession.xml b/xml/System.ServiceModel.Channels/IDuplexSession.xml index 818debf10c2..eff3212955f 100644 --- a/xml/System.ServiceModel.Channels/IDuplexSession.xml +++ b/xml/System.ServiceModel.Channels/IDuplexSession.xml @@ -54,13 +54,13 @@ Defines the interface for the session implemented on each side of a bi-directional communication between messaging endpoints. - interface is the union of the inbound session, defined by the interface, and the outbound session, defined by the interface. Either the inbound session or outbound session can be terminated independently of the other. The outbound session can be terminated synchronously by calling or asynchronously by calling . - - The inbound session can be remotely terminated. The associated with the inbound session starts returning `null` when that session is shutdown. - + interface is the union of the inbound session, defined by the interface, and the outbound session, defined by the interface. Either the inbound session or outbound session can be terminated independently of the other. The outbound session can be terminated synchronously by calling or asynchronously by calling . + + The inbound session can be remotely terminated. The associated with the inbound session starts returning `null` when that session is shutdown. + ]]> @@ -113,11 +113,11 @@ Begins an asynchronous operation to terminate the outbound session. The that references the asynchronous outbound session termination. - @@ -162,11 +162,11 @@ Begins an asynchronous operation to terminate the outbound session with a specified timeout within which the operation must complete. The that references the asynchronous outbound session termination. - @@ -213,28 +213,28 @@ Terminates the outbound session that indicates that no more messages will be sent from this endpoint on the channel associated with the session. - signals to the other side of the session that it should return `null` from any outstanding or subsequent calls made to . is idempotent, so calling it again has no effect. - - Terminating the outbound session does not affect the incoming session and so makes no statement about the ability to receive messages on the session associated with the input channel. - + signals to the other side of the session that it should return `null` from any outstanding or subsequent calls made to . is idempotent, so calling it again has no effect. + + Terminating the outbound session does not affect the incoming session and so makes no statement about the ability to receive messages on the session associated with the input channel. + ]]> - is a session method that can interact with the that owns the session. In particular, if your session lifetime is put together with your channel lifetime (like it is with TCP and reliable session and security): - -- If is called before is called on the channel, should wait for to finish. - -- If the channel is in the or state, should throw an . - -- If the channel is in the state, should throw a . - -- The channel should fault if throws. - -- The implementation of on the channel should call and then verify that returns , which indicates that was called from the other side of the session. + is a session method that can interact with the that owns the session. In particular, if your session lifetime is put together with your channel lifetime (like it is with TCP and reliable session and security): + +- If is called before is called on the channel, should wait for to finish. + +- If the channel is in the or state, should throw an . + +- If the channel is in the state, should throw a . + +- The channel should fault if throws. + +- The implementation of on the channel should call and then verify that returns , which indicates that was called from the other side of the session. @@ -273,28 +273,28 @@ The that specifies the interval of time within which the operation must complete. Terminates the outbound session that indicates that no more messages will be sent from this endpoint on the channel associated with the session within a specified interval of time. - signals to the other side of the session that it should return `null` from any outstanding or subsequent calls made to . is idempotent, so calling it again has no effect. - - Terminating the outbound session does not affect the incoming session and so makes no statement about the ability to receive messages on the session associated with the input channel. - + signals to the other side of the session that it should return `null` from any outstanding or subsequent calls made to . is idempotent, so calling it again has no effect. + + Terminating the outbound session does not affect the incoming session and so makes no statement about the ability to receive messages on the session associated with the input channel. + ]]> - is a session method that can interact with the that owns the session. In particular, if your session lifetime is put together with your channel lifetime (like it is with TCP and reliable session and security): - -- If is called before is called on the channel, should wait for to finish. - -- If the channel is in the or state, should throw an . - -- If the channel is in the state, should throw a . - -- The channel should fault if throws. - -- The implementation of on the channel should call and then verify that returns , indicating that was called from the other side of the session. + is a session method that can interact with the that owns the session. In particular, if your session lifetime is put together with your channel lifetime (like it is with TCP and reliable session and security): + +- If is called before is called on the channel, should wait for to finish. + +- If the channel is in the or state, should throw an . + +- If the channel is in the state, should throw a . + +- The channel should fault if throws. + +- The implementation of on the channel should call and then verify that returns , indicating that was called from the other side of the session. @@ -333,11 +333,11 @@ The returned by a call to one of the methods. Completes an asynchronous operation to terminate the outbound session that indicates that no more messages will be sent from this endpoint on the channel associated with the session. - diff --git a/xml/System.ServiceModel.Channels/ISession.xml b/xml/System.ServiceModel.Channels/ISession.xml index a69a5d390b2..0624b8dd8b1 100644 --- a/xml/System.ServiceModel.Channels/ISession.xml +++ b/xml/System.ServiceModel.Channels/ISession.xml @@ -43,31 +43,31 @@ Defines the interface to establish a shared context among parties that exchange messages by providing an ID for the communication session. - interface is the base interface for all sessions. It contains a property for identifying the session. - - A session is a shared context among all participants in a communication exchange. This shared context is characterized by the following three properties: - -- Session establishment - a process for establishing shared context among all participants. - -- Message correlation - a method for correlating a group of messages to an instance of shared context. - -- The interface is not informed as to the number of participants in a session or the lifetime of a session. - - These session properties are provided by associating an ID with a session. - - is inherited by: - -- - -- - -- - -- of type - + interface is the base interface for all sessions. It contains a property for identifying the session. + + A session is a shared context among all participants in a communication exchange. This shared context is characterized by the following three properties: + +- Session establishment - a process for establishing shared context among all participants. + +- Message correlation - a method for correlating a group of messages to an instance of shared context. + +- The interface is not informed as to the number of participants in a session or the lifetime of a session. + + These session properties are provided by associating an ID with a session. + + is inherited by: + +- + +- + +- + +- of type + ]]> @@ -104,11 +104,11 @@ Gets the ID that uniquely identifies the session. The ID that uniquely identifies the session. - . - + . + ]]> diff --git a/xml/System.ServiceModel.Channels/LocalClientSecuritySettings.xml b/xml/System.ServiceModel.Channels/LocalClientSecuritySettings.xml index 213b454a962..74140aa2036 100644 --- a/xml/System.ServiceModel.Channels/LocalClientSecuritySettings.xml +++ b/xml/System.ServiceModel.Channels/LocalClientSecuritySettings.xml @@ -51,19 +51,19 @@ Specifies local client security settings. - (and classes derived from it) to build the security channel. These settings are local to the client and are not determined from the service's security policy. - - - -## Examples - This example shows how to use the class. - + (and classes derived from it) to build the security channel. These settings are local to the client and are not determined from the service's security policy. + + + +## Examples + This example shows how to use the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalclientsecuritysettings/cs/program.cs" id="Snippet15"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet15"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet15"::: + ]]> How To: Set a Max Clock Skew @@ -105,14 +105,14 @@ Initializes a new instance of the class. - @@ -159,14 +159,14 @@ if cookies are cached; otherwise, . - @@ -212,14 +212,14 @@ Creates a new instance of this class, which is a copy or clone of the current instance. A new instance of . - @@ -261,19 +261,19 @@ Gets or sets the threshold percentage for renewal of secure conversation cookies. The threshold percentage for renewing secure conversation cookies. The default is 60 percent. - The property is to a value less than 0 or greater than 100. @@ -327,14 +327,14 @@ if replay detection is enabled; otherwise, . The default is . - @@ -380,19 +380,19 @@ Gets or sets the identity verifier. An instance of an implementation of the abstract class . - that the channel is targeted for. - - - -## Examples - This example shows how to return an instance of an implementation of the abstract class. - + that the channel is targeted for. + + + +## Examples + This example shows how to return an instance of an implementation of the abstract class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalclientsecuritysettings/cs/program.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet5"::: + ]]> @@ -443,23 +443,23 @@ Gets or sets the maximum allowable time difference between the system clocks of the two parties that are communicating. A that represents the maximum allowable time difference between the system clocks of the two parties that are communicating. The default is 5 minutes. - property. - - For more information, see [How to: Set a Max Clock Skew](/dotnet/framework/wcf/feature-details/how-to-set-a-max-clock-skew). - - - -## Examples - This example shows how to get the value. - + property. + + For more information, see [How to: Set a Max Clock Skew](/dotnet/framework/wcf/feature-details/how-to-set-a-max-clock-skew). + + + +## Examples + This example shows how to get the value. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalclientsecuritysettings/cs/program.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet6"::: + ]]> The property is to a value less than 0. @@ -503,14 +503,14 @@ Gets or sets the maximum caching time for secure conversation cookies. A that represents the maximum caching time for secure conversation cookies. The default is 10675199 days. - value. - + value. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalclientsecuritysettings/cs/program.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet7"::: + ]]> The property is to a value less than 0. @@ -591,19 +591,19 @@ if security sessions attempt to reconnect after transport failures; otherwise, . The default is . - @@ -645,21 +645,21 @@ Gets or sets the number of cached nonces used for replay detection. The number of cached nonces used for replay detection. The default is 900000. - is thrown. Old nonces are removed in a timely manner. - - - -## Examples - This example shows how to get the number of cached nonces to use for replay detection. - + is thrown. Old nonces are removed in a timely manner. + + + +## Examples + This example shows how to get the number of cached nonces to use for replay detection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalclientsecuritysettings/cs/program.cs" id="Snippet9"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet9"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet9"::: + ]]> @@ -710,19 +710,19 @@ Gets or sets the maximum time that a message nonce is valid. A that represents the maximum time that a message nonce is valid. The default is five minutes. - The property is to a value less than 0. @@ -765,33 +765,33 @@ Gets or sets the time span after which the initiator renews the key for the security session. A that represents the time span after which the initiator renews the key for the security session. The default is 10 hours. - and . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. - - Session settings such as this one are not applicable under any of the following conditions: - -- For . - -- For . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. - - - -## Examples - This example shows how to get this property. - + and . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. + + Session settings such as this one are not applicable under any of the following conditions: + +- For . + +- For . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. + + + +## Examples + This example shows how to get this property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalclientsecuritysettings/cs/program.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet11"::: + ]]> The property is to a value less than 0. @@ -834,35 +834,35 @@ Gets or sets the time interval for which the previous session key is valid on incoming messages during a key renewal. A that represents the time interval for which the previous session key is valid on incoming messages after a key renewal. The default is 5 minutes. - and . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. - - Session settings such as this one are not applicable under any of the following conditions: - -- For . - -- For . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. - - - -## Examples - This example shows how to get this property. - + and . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. + + Session settings such as this one are not applicable under any of the following conditions: + +- For . + +- For . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. + + + +## Examples + This example shows how to get this property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalclientsecuritysettings/cs/program.cs" id="Snippet12"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet12"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalclientsecuritysettings/vb/program.vb" id="Snippet12"::: + ]]> The property is to a value less than 0. @@ -914,14 +914,14 @@ Gets or sets the maximum duration that the messages are valid when sent by the client. If a message is received by the service after this duration, it should discard the message. A that represents the maximum duration that the messages are valid when sent by the client. The default is 5 minutes. - The property is to a value less than 0. diff --git a/xml/System.ServiceModel.Channels/LocalServiceSecuritySettings.xml b/xml/System.ServiceModel.Channels/LocalServiceSecuritySettings.xml index 128545d89ab..b871b2e950c 100644 --- a/xml/System.ServiceModel.Channels/LocalServiceSecuritySettings.xml +++ b/xml/System.ServiceModel.Channels/LocalServiceSecuritySettings.xml @@ -17,19 +17,19 @@ Provides local service security properties that can be set. - to build the security channel. These settings are local to the service and are not represented in the service's security policy. - - - -## Examples - This example shows how to use the class to change the setting. - + to build the security channel. These settings are local to the service and are not represented in the service's security policy. + + + +## Examples + This example shows how to use the class to change the setting. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalservicesecuritysettings/cs/program.cs" id="Snippet17"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet17"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet17"::: + ]]> @@ -50,14 +50,14 @@ Initializes a new instance of the class. - @@ -83,14 +83,14 @@ Creates a new instance of this class from the current instance. A new instance of . - @@ -126,14 +126,14 @@ if replay detection is enabled on the service; otherwise, . The default is . - @@ -164,35 +164,35 @@ Gets or sets the duration to wait before the channel is closed due to inactivity. A that represents the duration to wait before the security session with the client is closed due to inactivity. The default is 2 minutes. - and . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. - - Session settings such as this one are not applicable under any of the following conditions: - -- For . - -- For . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. - - - -## Examples - This example shows how get the `InactivityTimeout` value. - + and . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. + + Session settings such as this one are not applicable under any of the following conditions: + +- For . + +- For . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. + + + +## Examples + This example shows how get the `InactivityTimeout` value. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalservicesecuritysettings/cs/program.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet3"::: + ]]> The property is set to a value less than 0. @@ -224,19 +224,19 @@ Gets or sets the lifetime for the that the service issues for the client. A that represents the lifetime for new security cookies. The default is 10 hours. - The property is set to a value less than 0. @@ -268,14 +268,14 @@ Gets or sets the maximum number of s that the service allows to cache at once. The maximum number of secure conversation cookies that can be cached by the service. When this limit is reached the service removes the oldest cached secure conversation cookies to make room for new secure conversation cookies. The default is 1000. - The property is set to a value less than 0. @@ -307,23 +307,23 @@ Gets or sets the maximum allowable time difference between the system clocks of the two parties that are communicating. A that represents the maximum allowable time difference between the system clocks of the two parties that are communicating. The default is 5 minutes. - property. - - - -## Examples - This example shows how to get the `MaxClockSkew` value. - + property. + + + +## Examples + This example shows how to get the `MaxClockSkew` value. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalservicesecuritysettings/cs/program.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet6"::: + ]]> The property is set to a value less than 0. @@ -355,14 +355,14 @@ Gets or sets the maximum number of concurrent security sessions that are established with the server for which it has issued a session token but for which no application messages are sent. The maximum number of concurrent security sessions. The default is 128. - The property is set to a value less than 0. @@ -394,19 +394,19 @@ Gets or sets the maximum number of concurrent security negotiations with clients that the service can participate in. The maximum number of concurrent security negotiations with clients that the service can participate in. The default is 128. - The property is set to a value less than 0. @@ -438,19 +438,19 @@ Gets or sets the maximum duration of the security negotiation phase between client and service. A that represents the maximum duration of the security negotiation phase between client and service. Any negotiation with the service (for example during message level SPNego or SSL authentication) must complete within this time. The default is 1 minute. - The property is set to a value less than 0. @@ -508,19 +508,19 @@ if security sessions attempt to reconnect after transport failures; otherwise . The default is . - @@ -551,21 +551,21 @@ Gets or sets the size of the nonce cache used for replay detection. The size of the nonce cache used for replay detection. The default is 900,000. - is thrown. Old nonces are removed in a timely manner. - - - -## Examples - This example shows how to get the value of this property. - + is thrown. Old nonces are removed in a timely manner. + + + +## Examples + This example shows how to get the value of this property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalservicesecuritysettings/cs/program.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet11"::: + ]]> @@ -596,21 +596,21 @@ Gets or sets the maximum amount of time within which the service can accept a message. A that represents the maximum amount of time within which the service can accept a message. The default is 5 minutes. - duration in the past. Messages that arrive within the `ReplayWindow` have their nonce checked for uniqueness. - - - -## Examples - This example shows how to get the value of this property. - + duration in the past. Messages that arrive within the `ReplayWindow` have their nonce checked for uniqueness. + + + +## Examples + This example shows how to get the value of this property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalservicesecuritysettings/cs/program.cs" id="Snippet12"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet12"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet12"::: + ]]> The property is set to a value less than 0. @@ -642,33 +642,33 @@ Gets or sets the lifetime of a key used in a security session. When this interval expires the key is automatically renewed. The time span after which the service requires that the initiator renew the key used for the security session. If the initiator does not renew the key within this time the service sends back a fault to the initiator. The default is 15 hours. - and . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. - - Session settings such as this one are not applicable under any of the following conditions: - -- For . - -- For . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. - - - -## Examples - This example shows how get the value of this property. - + and . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. + + Session settings such as this one are not applicable under any of the following conditions: + +- For . + +- For . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. + + + +## Examples + This example shows how get the value of this property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalservicesecuritysettings/cs/program.cs" id="Snippet13"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet13"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet13"::: + ]]> The property is set to a value less than 0. @@ -700,35 +700,35 @@ Gets or sets the time interval after key renewal for which the previous session key is valid on incoming messages during a key renewal. The time interval after key renewal for which the previous session key is valid on incoming messages after a key renewal. The default is 5 minutes. - and . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. - - Session settings such as this one are not applicable under any of the following conditions: - -- For . - -- For . - -- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. - - - -## Examples - This example shows how get the `SessionKeyRolloverInterval` value. - + and . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is enabled. + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or = `true`. + + Session settings such as this one are not applicable under any of the following conditions: + +- For . + +- For . + +- If [\ element](https://learn.microsoft.com/previous-versions/ms731375(v=vs.90)) is not enabled, on with = `true` or with none of the properties set to `true`. + + + +## Examples + This example shows how get the `SessionKeyRolloverInterval` value. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uelocalservicesecuritysettings/cs/program.cs" id="Snippet14"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet14"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uelocalservicesecuritysettings/vb/program.vb" id="Snippet14"::: + ]]> The property is set to a value less than 0. @@ -760,14 +760,14 @@ Gets or sets the maximum duration of time that messages are valid when sent by the service. If the client receives the service's message after this duration, it discards the message. The maximum duration of time that messages are valid when sent by the service. The default is 5 minutes. - The property is set to a value less than 0. diff --git a/xml/System.ServiceModel.Channels/MsmqBindingElementBase.xml b/xml/System.ServiceModel.Channels/MsmqBindingElementBase.xml index 9217befb865..c49b8e556f6 100644 --- a/xml/System.ServiceModel.Channels/MsmqBindingElementBase.xml +++ b/xml/System.ServiceModel.Channels/MsmqBindingElementBase.xml @@ -59,17 +59,17 @@ Gets or sets a that identifies a custom dead-letter queue where expired messages or messages that failed to be delivered are sent. The URI of the custom dead-letter queue. - property allows you to specify a custom dead-letter queue rather than using the default system-wide dead-letter queue. - - The URI that is specified by must use the `net.msmq scheme`. - - If is set to or , then must be set to `null`. If is not `null`, then must be set to . - - The property can be set only on operating systems starting with Windows Vista. - + property allows you to specify a custom dead-letter queue rather than using the default system-wide dead-letter queue. + + The URI that is specified by must use the `net.msmq scheme`. + + If is set to or , then must be set to `null`. If is not `null`, then must be set to . + + The property can be set only on operating systems starting with Windows Vista. + ]]> @@ -100,31 +100,31 @@ Gets or sets the setting for this binding. The type of dead-letter queue to use, if any. - The value is not within the range of values defined in . @@ -161,11 +161,11 @@ if the messages processed by this binding are durable; if they are volatile. The default is . - is set to `true`), this property must be set to `true`. - + is set to `true`), this property must be set to `true`. + ]]> @@ -201,11 +201,11 @@ if messages sent with this binding have exactly once assurances; otherwise, . - , when set to `true`, indicates that Message Queuing (MSMQ) ensures that a sent message is delivered to the receiving message queue once and only once, and, if delivery fails, the message is sent to the dead-letter queue, depending on the `DeadLetterQueue` property setting. Setting to `true` requires the queue to be transactional. - + , when set to `true`, indicates that Message Queuing (MSMQ) ensures that a sent message is delivered to the receiving message queue once and only once, and, if delivery fails, the message is sent to the dead-letter queue, depending on the `DeadLetterQueue` property setting. Setting to `true` requires the queue to be transactional. + ]]> @@ -242,11 +242,11 @@ When overridden in a derived class, retrieves a specified type of object for the binding context provided. The object of type . - The context is . @@ -278,11 +278,11 @@ Gets or sets the maximum number of retry cycles to attempt delivery of messages to the receiving application. A value that specifies the number of retry cycles to attempt prior to transferring a message to the poison-message queue. - . `MaxRetryCycles` specifies the number of retry cycles and does not include the initial attempt to send the message. An attempt to deliver a message is made a maximum of (1 + MaxRetryCycles) * (ReceiveRetryCount + 1) times. For example, if ReceiveRetryCount = 0 and MaxRetryCycles is 1, there is a maximum of two attempts to deliver the message. This property is used only on operating systems starting with Windows Vista. - + . `MaxRetryCycles` specifies the number of retry cycles and does not include the initial attempt to send the message. An attempt to deliver a message is made a maximum of (1 + MaxRetryCycles) * (ReceiveRetryCount + 1) times. For example, if ReceiveRetryCount = 0 and MaxRetryCycles is 1, there is a maximum of two attempts to deliver the message. This property is used only on operating systems starting with Windows Vista. + ]]> The value is less than zero. @@ -318,11 +318,11 @@ Gets the that is associated with this binding element. The that is associated with this binding element. - encapsulates the security settings for the MSMQ integration transport. The settings are the same for both the MSMQ integration and queued transports. allows you to set the authentication mode, encryption algorithm, secure hash algorithm, and protection level. - + encapsulates the security settings for the MSMQ integration transport. The settings are the same for both the MSMQ integration and queued transports. allows you to set the authentication mode, encryption algorithm, secure hash algorithm, and protection level. + ]]> @@ -385,17 +385,17 @@ Gets or sets an enumeration value that specifies how poison and other messages that cannot be dispatched are handled. A value that specifies how poison and other messages that cannot be dispatched are handled. - , the channel listener is faulted and a (wrapping a ) is traced and thrown. The message is left in the queue and must be removed by some manual method. The contains a that can be used to identify and manually remove the offending message from the poison-message queue. - - When this property is set to , the message is dropped. - - When this property is set to , a negative acknowledgment is sent to the client and the message is removed from the poison-message queue. This option is available only on Message Queuing 4.0. - - When set to , the message is moved to the final poison sub-queue. This option is available only on Message Queuing 4.0. - + , the channel listener is faulted and a (wrapping a ) is traced and thrown. The message is left in the queue and must be removed by some manual method. The contains a that can be used to identify and manually remove the offending message from the poison-message queue. + + When this property is set to , the message is dropped. + + When this property is set to , a negative acknowledgment is sent to the client and the message is removed from the poison-message queue. This option is available only on Message Queuing 4.0. + + When set to , the message is moved to the final poison sub-queue. This option is available only on Message Queuing 4.0. + ]]> The value is not within the range of values defined in . @@ -427,13 +427,13 @@ Gets or sets the maximum number of times the queue manager should attempt to send a message before transferring it to the retry queue. A value that specifies the maximum number of times the queue manager should attempt to send a message before transferring it to the retry queue. - . If retry cycles reach the MaxRetryCycles value, then the message is dispatched based on the value of the property. - - For more information, see and . - + . If retry cycles reach the MaxRetryCycles value, then the message is dispatched based on the value of the property. + + For more information, see and . + ]]> The value is less than zero. @@ -465,15 +465,15 @@ Gets or sets a value that specifies how long to wait before attempting another retry cycle when attempting to deliver a message that could not be delivered. The that specifies the interval of time to wait before starting the next cycle of delivery attempts to the receiving application. The default value is 30 (minutes). - property). If all attempts fail, the message is placed back in the retry queue. This property specifies how long the message remains in the retry queue before it is transferred to the application queue for another retry cycle. This property can only be used on operating systems starting with Windows Vista. - + property). If all attempts fail, the message is placed back in the retry queue. This property specifies how long the message remains in the retry queue before it is transferred to the application queue for another retry cycle. This property can only be used on operating systems starting with Windows Vista. + ]]> The value is less than zero. - + -or- The value is not infinite and is larger than Int32.MaxValue milliseconds. @@ -507,11 +507,11 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds.A that you can use to insert a custom policy assertion. Exports custom policy assertions about bindings. - . - + . + ]]> @@ -544,11 +544,11 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds.Provides mappings from exported WSDL elements to the contract description. Writes custom Web Services Description Language (WSDL) elements into the generated WSDL for a contract. - . - + . + ]]> @@ -581,11 +581,11 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds.Provides mappings from exported WSDL elements to the endpoint description. Writes custom Web Services Description Language (WSDL) elements into the generated WSDL for an endpoint. - . - + . + ]]> @@ -616,16 +616,16 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds.Gets or sets a value that specifies how long messages are valid. When this time has elapsed the message is placed in a dead-letter queue depending on the setting. A value that specifies how long messages are valid. The default value is 24 hours. - property); otherwise, the message is dropped. - + property); otherwise, the message is dropped. + ]]> The value is less than zero. - + -or- The value is not infinite and is larger than Int32.MaxValue milliseconds. @@ -661,13 +661,13 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds. if the binding requires a transaction for a receive operation; otherwise, . - is set to `true`. - + is set to `true`. + ]]> @@ -703,11 +703,11 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds. if Message Queuing (MSMQ) built-in message tracing should be enabled; otherwise, . - is set to `true`, the queued channel uses the Message Queuing built-in message tracing facility. Through this facility a report message is sent to a specified report queue each time a message enters and leaves a queue manager. - + is set to `true`, the queued channel uses the Message Queuing built-in message tracing facility. Through this facility a report message is sent to a specified report queue each time a message enters and leaves a queue manager. + ]]> @@ -743,11 +743,11 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds. if messages processed by this binding are copied to the source journal queue; otherwise, . The default value is . - @@ -771,14 +771,14 @@ The value is not infinite and is larger than Int32.MaxValue milliseconds.Gets or sets a value that specifies the duration a message will be locked by the receive context feature. The duration a message will be locked by the receive context feature. - [!IMPORTANT] -> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. - +> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. + ]]> The value is less than zero or is larger than Int32.MaxValue. diff --git a/xml/System.ServiceModel.Channels/ReliableSessionBindingElementImporter.xml b/xml/System.ServiceModel.Channels/ReliableSessionBindingElementImporter.xml index 0819b97f364..3add5c8b37f 100644 --- a/xml/System.ServiceModel.Channels/ReliableSessionBindingElementImporter.xml +++ b/xml/System.ServiceModel.Channels/ReliableSessionBindingElementImporter.xml @@ -21,17 +21,17 @@ Maps reliable session binding elements to and from representations of their corresponding policy assertions in metadata. This class cannot be inherited. - and interfaces: - -- Implement the interface to search WSDL information exposed by a particular endpoint for custom policy assertions about endpoint capabilities or requirements. - -- Implement the interface on a object to write statements about endpoint capabilities or requirements into the WSDL information exposed by a particular endpoint. - + and interfaces: + +- Implement the interface to search WSDL information exposed by a particular endpoint for custom policy assertions about endpoint capabilities or requirements. + +- Implement the interface on a object to write statements about endpoint capabilities or requirements into the WSDL information exposed by a particular endpoint. + ]]> @@ -88,11 +88,11 @@ The for the service endpoint that contains the binding policy assertions that must be converted into binding elements. Converts WS-Reliable Message policy assertions into the reliable session binding elements in a binding on the client. - method. - + method. + ]]> The or is . diff --git a/xml/System.ServiceModel.Channels/SupportedAddressingMode.xml b/xml/System.ServiceModel.Channels/SupportedAddressingMode.xml index f2eece8d950..1d2c862efd7 100644 --- a/xml/System.ServiceModel.Channels/SupportedAddressingMode.xml +++ b/xml/System.ServiceModel.Channels/SupportedAddressingMode.xml @@ -27,21 +27,21 @@ Specifies whether a service supports sending responses to anonymous addresses only, to non-anonymous addresses only, or to both. - address for the message destination, the physical ("Via") address, used by the transport, at which a service listens, and the address of the endpoint that provides the address of the client endpoint. - - In the most basic case, when two parties exchange messages between themselves only, it is not necessary to specify these addresses separately. But because exchanges can involve other message destinations, you must be able to specify when addresses must be explicitly provided. Even between just two parties this ability is sometimes required, as with dual HTTP where the server must create its own HTTP request. The following kinds of relationships are defined by the enumeration to capture these messaging patterns: - -- Anonymous addresses are the most basic form of addressing. Anonymous addressing is used when there is a default path for a response. TCP is a bi-directional communication transport and the response to a TCP message can be sent back to the other side of the socket that sent the original message. Similarly, the request-reply model of HTTP sends responses through the HTTP reply channel. Neither of these responses requires specifying where the response messages are going. When a server requires anonymous responses from the client, it uses the Anonymous value of the enumeration. The WCF system-provided , and bindings always use Anonymous addresses. - -- NonAnonymous addresses are used when sending the response requires creating a new channel for communication. The WCF system-provided binding uses a NonAnonymous address. With dual HTTP, the client creates an HTTP request to send a message and then the server must create its own HTTP request to send a response. Because the server is initiating the send, it must have a specific endpoint to establish the connection. You must provide the server the address of an endpoint for its response. Similarly, if a service must respond to a one-way message that it received, it also requires a NonAnonymous address because there is no back channel available for communication. If the server sends a message back, a completely separate operation from that used to send the first message is required. - -- Mixed is a third form of addressing which combines Anonymous and NonAnonymous addresses depending on the message that is being sent. A typical example of mixed-mode addressing is the use of a dedicated machine for processing fault or acknowledgment messages. If the standard exchange sequence for replies is HTTP or TCP, the responses use Anonymous addressing but the faults use non-anonymous addressing. While WCF does not provide Mixed addressing functionality in one of its standard bindings, it is possible to write a channel that allows the service to send responses directly on the back-channel (when the response address is Anonymous) or on a separate channel (when the response address is NonAnonymous). In such a case, the binding element of the channel is used to set to Mixed. - + address for the message destination, the physical ("Via") address, used by the transport, at which a service listens, and the address of the endpoint that provides the address of the client endpoint. + + In the most basic case, when two parties exchange messages between themselves only, it is not necessary to specify these addresses separately. But because exchanges can involve other message destinations, you must be able to specify when addresses must be explicitly provided. Even between just two parties this ability is sometimes required, as with dual HTTP where the server must create its own HTTP request. The following kinds of relationships are defined by the enumeration to capture these messaging patterns: + +- Anonymous addresses are the most basic form of addressing. Anonymous addressing is used when there is a default path for a response. TCP is a bi-directional communication transport and the response to a TCP message can be sent back to the other side of the socket that sent the original message. Similarly, the request-reply model of HTTP sends responses through the HTTP reply channel. Neither of these responses requires specifying where the response messages are going. When a server requires anonymous responses from the client, it uses the Anonymous value of the enumeration. The WCF system-provided , and bindings always use Anonymous addresses. + +- NonAnonymous addresses are used when sending the response requires creating a new channel for communication. The WCF system-provided binding uses a NonAnonymous address. With dual HTTP, the client creates an HTTP request to send a message and then the server must create its own HTTP request to send a response. Because the server is initiating the send, it must have a specific endpoint to establish the connection. You must provide the server the address of an endpoint for its response. Similarly, if a service must respond to a one-way message that it received, it also requires a NonAnonymous address because there is no back channel available for communication. If the server sends a message back, a completely separate operation from that used to send the first message is required. + +- Mixed is a third form of addressing which combines Anonymous and NonAnonymous addresses depending on the message that is being sent. A typical example of mixed-mode addressing is the use of a dedicated machine for processing fault or acknowledgment messages. If the standard exchange sequence for replies is HTTP or TCP, the responses use Anonymous addressing but the faults use non-anonymous addressing. While WCF does not provide Mixed addressing functionality in one of its standard bindings, it is possible to write a channel that allows the service to send responses directly on the back-channel (when the response address is Anonymous) or on a separate channel (when the response address is NonAnonymous). In such a case, the binding element of the channel is used to set to Mixed. + ]]> diff --git a/xml/System.ServiceModel.Channels/TransferSession.xml b/xml/System.ServiceModel.Channels/TransferSession.xml index bc1b86a5964..9fa73f5bda0 100644 --- a/xml/System.ServiceModel.Channels/TransferSession.xml +++ b/xml/System.ServiceModel.Channels/TransferSession.xml @@ -17,19 +17,19 @@ Determines if the contract for the transfer of messages from a client to an application requires a session and whether the delivery of messages must preserve the order in which operations are called by the client. - enumerations are typically used in association with a service contract. When a client sends messages to a remote application or service to call operations, is used to determine if a session is required to interact with the service and whether the messages used to invoke the operations at a service must arrive in the same order in which they were sent. - - Message delivery between client and service requires a session to preserve the order in which operations are called by the client. If there is no session between endpoints, then the delivery order does not reflect the order in which the messages are sent. - -- The value of that an application uses specifies whether the application requires a specific order in the calling sequence. If Ordered, then the contract requires that messages must arrive in the order in which they are sent. - -- If Unordered, then the messages used to invoke public operations can arrive in any order. - - If None, there are no sessions. - + enumerations are typically used in association with a service contract. When a client sends messages to a remote application or service to call operations, is used to determine if a session is required to interact with the service and whether the messages used to invoke the operations at a service must arrive in the same order in which they were sent. + + Message delivery between client and service requires a session to preserve the order in which operations are called by the client. If there is no session between endpoints, then the delivery order does not reflect the order in which the messages are sent. + +- The value of that an application uses specifies whether the application requires a specific order in the calling sequence. If Ordered, then the contract requires that messages must arrive in the order in which they are sent. + +- If Unordered, then the messages used to invoke public operations can arrive in any order. + + If None, there are no sessions. + ]]> diff --git a/xml/System.ServiceModel.Configuration/MessageSecurityOverMsmqElement.xml b/xml/System.ServiceModel.Configuration/MessageSecurityOverMsmqElement.xml index f42d2cb1bc5..4aa41a35a42 100644 --- a/xml/System.ServiceModel.Configuration/MessageSecurityOverMsmqElement.xml +++ b/xml/System.ServiceModel.Configuration/MessageSecurityOverMsmqElement.xml @@ -80,11 +80,11 @@ Specifies the algorithm suite used for security messages at the SOAP level. The setting for messages sent over the binding. - defines a variety of algorithms, such as Canonicalization, Digest, KeyWrap, Signature, Encryption, and KeyDerivation. This property is most relevant when working with a platform that uses a set of algorithms different than the default. You should be aware of the strengths and weaknesses of the relevant algorithms when making modifications to this property. - + defines a variety of algorithms, such as Canonicalization, Digest, KeyWrap, Signature, Encryption, and KeyDerivation. This property is most relevant when working with a platform that uses a set of algorithms different than the default. You should be aware of the strengths and weaknesses of the relevant algorithms when making modifications to this property. + ]]> @@ -115,26 +115,26 @@ Gets or sets the security setting for messages sent over the MSMQ transport. The security setting for messages sent over the MSMQ transport. - class. - + class. + > [!NOTE] - > WCF does not support sending a password digest or deriving keys using password and using such keys for message security. As such, WCF enforces that the exchange is secured when using UserName credentials. This mode requires that the service certificate be specified on the client side using ClientCredential behavior and serviceCertificate. - -- Certificate: This enables the service to require that the client be authenticated using a certificate. The client credential in this case needs to be specified using the class or ClientCredentials behavior. The service credential in this case needs to be specified using the class or ClientCredentials behavior by specifying the serviceCertificate. - -- CardSpace: This allows the service to require that the client be authenticated using a CardSpace. The ServiceCertificate must be provisioned in the ClientCredential behavior. - - The Certificate credential for the `MessageSecurityOverMsmq` is relevant only when the security mode is set to `Both` or `Message`. - + > WCF does not support sending a password digest or deriving keys using password and using such keys for message security. As such, WCF enforces that the exchange is secured when using UserName credentials. This mode requires that the service certificate be specified on the client side using ClientCredential behavior and serviceCertificate. + +- Certificate: This enables the service to require that the client be authenticated using a certificate. The client credential in this case needs to be specified using the class or ClientCredentials behavior. The service credential in this case needs to be specified using the class or ClientCredentials behavior by specifying the serviceCertificate. + +- CardSpace: This allows the service to require that the client be authenticated using a CardSpace. The ServiceCertificate must be provisioned in the ClientCredential behavior. + + The Certificate credential for the `MessageSecurityOverMsmq` is relevant only when the security mode is set to `Both` or `Message`. + ]]> diff --git a/xml/System.ServiceModel.Configuration/MsmqBindingElementBase.xml b/xml/System.ServiceModel.Configuration/MsmqBindingElementBase.xml index cd72d0ccb78..b56a59eb072 100644 --- a/xml/System.ServiceModel.Configuration/MsmqBindingElementBase.xml +++ b/xml/System.ServiceModel.Configuration/MsmqBindingElementBase.xml @@ -17,11 +17,11 @@ Provides the base class with members common to the and classes. - @@ -113,15 +113,15 @@ Gets or sets a that identifies a custom dead-letter queue where expired messages or messages that failed to be delivered are sent. A instance that contains the URI of the custom dead-letter-queue. - must use the net.msmq scheme. - - If is set to or , then must be set to `null`. If is not `null`, then must be set to . - + must use the net.msmq scheme. + + If is set to or , then must be set to `null`. If is not `null`, then must be set to . + ]]> @@ -152,31 +152,31 @@ Gets or sets the setting for this binding. A value that specifies which type of dead-letter queue to use, if any. - @@ -208,11 +208,11 @@ if the messages processed by this binding are durable; if they are volatile. The default is . - is set to `true`), this property must be set to `true`. - + is set to `true`), this property must be set to `true`. + ]]> @@ -244,11 +244,11 @@ if messages sent with this binding have exactly-once assurances; otherwise, . - , when set to `true`, indicates that Message Queuing (also known as MSMQ) ensures that a sent message is delivered to the receiving message queue once and only once. If delivery fails, the message is sent to the dead-letter queue depending on the `DeadLetterQueue` property setting. Setting to `true` requires the queue to be transactional. - + , when set to `true`, indicates that Message Queuing (also known as MSMQ) ensures that a sent message is delivered to the receiving message queue once and only once. If delivery fails, the message is sent to the dead-letter queue depending on the `DeadLetterQueue` property setting. Setting to `true` requires the queue to be transactional. + ]]> @@ -308,11 +308,11 @@ Gets or sets a value that indicates the maximum size, in bytes, allowed for a message. The maximum allowed size for a message that is sent or received with this binding. - , the message is dropped. - + , the message is dropped. + ]]> @@ -347,11 +347,11 @@ Gets or sets the maximum number of retry cycles to attempt delivery of messages to the receiving application. The maximum number of retry cycles to attempt prior to transferring a message to the poison-message queue. - . specifies the number of retry cycles and does not include the initial attempt to send the message. An attempt to deliver a message is made a maximum of (1 + MaxRetryCycles) * (ReceiveRetryCount + 1) times. For example, if ReceiveRetryCount = 0 and MaxRetryCycles is 1, there is a maximum of two attempts to deliver the message. This property is available starting with the Windows Vista operating system. - + . specifies the number of retry cycles and does not include the initial attempt to send the message. An attempt to deliver a message is made a maximum of (1 + MaxRetryCycles) * (ReceiveRetryCount + 1) times. For example, if ReceiveRetryCount = 0 and MaxRetryCycles is 1, there is a maximum of two attempts to deliver the message. This property is available starting with the Windows Vista operating system. + ]]> @@ -429,11 +429,11 @@ if receive context for processing messages in queues is enabled; otherwise, . - @@ -464,17 +464,17 @@ Gets or sets an enumeration value that specifies how poison and messages that cannot be dispatched are handled. A value that specifies how poison and messages that cannot be dispatched are handled. - , the listener is faulted and a (wrapping a ) is traced and thrown. The message is left in the queue and must be removed in a manual way. The contains a that can be used to identify and manually remove the message from the poison-message queue. - - When this property is set to , the offending message is simply dropped. - - When this property is set to , a negative acknowledgement is sent to the client and the message is removed from the poison-message queue. This option is available only on Message Queuing (MSMQ) 4.0. - - When this property is set to , the message is moved to the final poison-message subqueue. This option is available only on Message Queuing (also known as MSMQ) 4.0. - + , the listener is faulted and a (wrapping a ) is traced and thrown. The message is left in the queue and must be removed in a manual way. The contains a that can be used to identify and manually remove the message from the poison-message queue. + + When this property is set to , the offending message is simply dropped. + + When this property is set to , a negative acknowledgement is sent to the client and the message is removed from the poison-message queue. This option is available only on Message Queuing (MSMQ) 4.0. + + When this property is set to , the message is moved to the final poison-message subqueue. This option is available only on Message Queuing (also known as MSMQ) 4.0. + ]]> @@ -509,13 +509,13 @@ Gets or sets the maximum number of immediate retries that the queue manager should attempt if transmission of a message from the application queue to the application fails. The maximum number of times the queue manager should attempt to send a message before transferring it to the retry queue. - . If retry cycles reach the value, then the message is either sent to the poison-message queue, or a negative acknowledgement is sent back to the sender. - - For more information, see and . - + . If retry cycles reach the value, then the message is either sent to the poison-message queue, or a negative acknowledgement is sent back to the sender. + + For more information, see and . + ]]> @@ -558,11 +558,11 @@ Gets or sets a value that specifies how long to wait before attempting another retry cycle when attempting to deliver a message that could not be delivered. The that specifies the interval of time to wait before starting the next cycle of delivery attempts to the receiving application. The default value is 30 (minutes). - property). If all attempts fail, the message is placed back in the retry queue. This property specifies how long the message remains in the retry queue before it is transferred to the application queue for another retry cycle. This property is available starting with the Windows Vista or later operating systems. - + property). If all attempts fail, the message is placed back in the retry queue. This property specifies how long the message remains in the retry queue before it is transferred to the application queue for another retry cycle. This property is available starting with the Windows Vista or later operating systems. + ]]> @@ -605,11 +605,11 @@ Gets or sets a value that specifies how long messages are valid. When this time has elapsed, the message is placed in a dead-letter queue (if available). A value that specifies how long messages are valid. The default value is 24 hours. - property); otherwise, if no dead-letter queue is available, the message is dropped. - + property); otherwise, if no dead-letter queue is available, the message is dropped. + ]]> @@ -641,11 +641,11 @@ if the Message Queuing built-in message tracing facility is used; otherwise, . The default value is . - is set to `true`, the queued channel uses the Message Queuing built-in message tracing facility. Through this facility, a report message is sent to a specified report queue each time a message enters and leaves a queue manager. - + is set to `true`, the queued channel uses the Message Queuing built-in message tracing facility. Through this facility, a report message is sent to a specified report queue each time a message enters and leaves a queue manager. + ]]> @@ -677,11 +677,11 @@ if messages processed by this binding are copied to the source journal queue; otherwise, . The default value is . - @@ -719,13 +719,13 @@ Gets or sets a value that specifies a connection time-out when used with queued channels. A connection time-out when used with queued channels. - [!IMPORTANT] -> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. - +> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. + ]]> diff --git a/xml/System.ServiceModel.Configuration/MsmqElementBase.xml b/xml/System.ServiceModel.Configuration/MsmqElementBase.xml index 98e1e5fe759..a950d133990 100644 --- a/xml/System.ServiceModel.Configuration/MsmqElementBase.xml +++ b/xml/System.ServiceModel.Configuration/MsmqElementBase.xml @@ -119,15 +119,15 @@ Gets or sets a URI that contains the location of the per-application dead-letter queue, where messages that have expired or that have failed transfer or delivery are placed. The that contains the location of the per-application dead-letter queue. The default value is . - must use the Net.msmq scheme. - - If is set to or , then must be set to `null`. If is not `null`, then must be set to . - + must use the Net.msmq scheme. + + If is set to or , then must be set to `null`. If is not `null`, then must be set to . + ]]> @@ -158,39 +158,39 @@ Gets or sets an enumeration value that indicates the type of dead-letter queue to use. A enumeration value that indicates the type of dead-letter queue to use. - is set to `false`. - -- System: The system-wide dead-letter queue would be used to record messages that fail delivery. Message Queuing (also known as MSMQ) has a transactional system dead-letter queue and a nontransactional system dead-letter queue to record messages that failed delivery from transactional and nontransactional queues, respectively. This is the default value when is set to `true`. - -- Custom: The queue specified in the is used to record messages that fail delivery. - - The reasons that a message can fail to reach the receiving application include: - -- A transactional message is sent to a nontransactional queue. - -- A nontransactional message is sent to a transactional queue. - -- An unauthenticated message is sent to a queue that accepts only authenticated messages. - -- An unencrypted message is sent to a queue that accepts only encrypted messages. - -- The message expires before the message is delivered to a receiver. - -- The message storage quota of the target computer or the storage quota of the destination queue is exceeded, or there is no available storage space on the target computer when the message arrives. - -- The sender does not have the access rights needed to place the message in the destination queue. - -- The digital signature attached to the message is not valid. - -- An encrypted message cannot be decrypted by the destination queue manager. - -- The destination queue is purged or deleted before the message is retrieved. - + is set to `false`. + +- System: The system-wide dead-letter queue would be used to record messages that fail delivery. Message Queuing (also known as MSMQ) has a transactional system dead-letter queue and a nontransactional system dead-letter queue to record messages that failed delivery from transactional and nontransactional queues, respectively. This is the default value when is set to `true`. + +- Custom: The queue specified in the is used to record messages that fail delivery. + + The reasons that a message can fail to reach the receiving application include: + +- A transactional message is sent to a nontransactional queue. + +- A nontransactional message is sent to a transactional queue. + +- An unauthenticated message is sent to a queue that accepts only authenticated messages. + +- An unencrypted message is sent to a queue that accepts only encrypted messages. + +- The message expires before the message is delivered to a receiver. + +- The message storage quota of the target computer or the storage quota of the destination queue is exceeded, or there is no available storage space on the target computer when the message arrives. + +- The sender does not have the access rights needed to place the message in the destination queue. + +- The digital signature attached to the message is not valid. + +- An encrypted message cannot be decrypted by the destination queue manager. + +- The destination queue is purged or deleted before the message is retrieved. + ]]> @@ -222,13 +222,13 @@ if the messages processed by this binding are durable; if they are volatile. The default is . - is set to `true`, the messages must be durable. - + is set to `true`, the messages must be durable. + ]]> @@ -260,19 +260,19 @@ if messages processed by this binding will be received exactly once; otherwise, . The default is . - set to `true` must be sent only to a transactional queue. - - , when set to `true`, indicates that Message Queuing (also known as MSMQ) will ensure that a sent message is delivered to the receiving message queue once and only once, and if delivery fails, the message is sent to the dead-letter queue. - - For messages that require to be `false`, the property defaults to `null`. - - For messages that require to be `true`, the property defaults to a transactional system-wide dead-letter queue in Message Queuing. - + set to `true` must be sent only to a transactional queue. + + , when set to `true`, indicates that Message Queuing (also known as MSMQ) will ensure that a sent message is delivered to the receiving message queue once and only once, and if delivery fails, the message is sent to the dead-letter queue. + + For messages that require to be `false`, the property defaults to `null`. + + For messages that require to be `true`, the property defaults to a transactional system-wide dead-letter queue in Message Queuing. + ]]> @@ -332,11 +332,11 @@ Gets or sets the maximum number of retry cycles to attempt delivery of messages to the receiving application. An integer that indicates the maximum number of retry cycles to attempt delivery of messages to the application. The default value is 2. - property. If the application fails to consume the message after the attempts at delivery have been exhausted, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the property. The property specifies the number of retry cycles that the application uses to attempt to deliver the message. - + property. If the application fails to consume the message after the attempts at delivery have been exhausted, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the property. The property specifies the number of retry cycles that the application uses to attempt to deliver the message. + ]]> @@ -417,11 +417,11 @@ if receive context for processing messages in queues is enabled; otherwise, . - @@ -452,17 +452,17 @@ Gets or sets an enumeration value that specifies how poison and nondispatchable messages are handled. A value that specifies how poison and nondispatchable messages are handled. - , the channel listener is faulted and a (wrapping a ) is traced and thrown. The offending message is left in the queue and needs to be removed by some manual method. The contains a that can be used to identify and manually remove the offending message from the poison-message queue. - - When this property is set to , the offending message is simply dropped. - - When this property is set to , a negative acknowledgment is sent to the client and the offending message is removed from the poison-message queue. This option is available only on Message Queuing (also known as MSMQ) 4.0. - - When set to , the offending message is moved to the final poison subqueue. This option is available only on Message Queuing 4.0. - + , the channel listener is faulted and a (wrapping a ) is traced and thrown. The offending message is left in the queue and needs to be removed by some manual method. The contains a that can be used to identify and manually remove the offending message from the poison-message queue. + + When this property is set to , the offending message is simply dropped. + + When this property is set to , a negative acknowledgment is sent to the client and the offending message is removed from the poison-message queue. This option is available only on Message Queuing (also known as MSMQ) 4.0. + + When set to , the offending message is moved to the final poison subqueue. This option is available only on Message Queuing 4.0. + ]]> @@ -497,13 +497,13 @@ Gets or sets the maximum number of times that the queue manager should attempt to send a message before transferring it to the retry queue. A 32-bit signed integer that specifies the maximum number of times that the queue manager should attempt to send a message before transferring it to the retry queue. - . If retry cycles reach the value, then either the message is sent to the poison-message queue, or a negative acknowledgment is sent back to the sender. - - For more information, see and . - + . If retry cycles reach the value, then either the message is sent to the poison-message queue, or a negative acknowledgment is sent back to the sender. + + For more information, see and . + ]]> @@ -546,11 +546,11 @@ Gets or sets a value that indicates the time delay between retry cycles when attempting to deliver a message that could not be delivered immediately. The that specifies the interval of time to wait before starting the next cycle of delivery attempts to the receiving application. The default value is "00:10:00". - property. If the application fails to consume the message after the specified number of immediate retries, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the property. The number of retry cycles is specified by the property. - + property. If the application fails to consume the message after the specified number of immediate retries, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the property. The number of retry cycles is specified by the property. + ]]> @@ -593,11 +593,11 @@ Gets or sets the interval of time that indicates how long the messages processed by this binding can be in the queue before they expire. The that indicates how long the messages can be in the queue before they expire. The default value is one day (01:00:00:00). - property is set to ensure that time-sensitive messages do not become stale before they are processed by the receiving applications. A message in a queue that is not consumed by the receiving application within the time interval specified is said to be expired. Expired messages are sent to a special queue called the dead-letter queue. The location of the dead-letter queue is set with the property or to the appropriate default, based on assurances. - + property is set to ensure that time-sensitive messages do not become stale before they are processed by the receiving applications. A message in a queue that is not consumed by the receiving application within the time interval specified is said to be expired. Expired messages are sent to a special queue called the dead-letter queue. The location of the dead-letter queue is set with the property or to the appropriate default, based on assurances. + ]]> @@ -629,11 +629,11 @@ if messages processed by this binding should be traced; otherwise, . The default is . - @@ -665,11 +665,11 @@ if copies of messages processed by this binding should be stored in the source journal queue; otherwise, . The default is . - @@ -707,13 +707,13 @@ Gets or sets a value that specifies a connection time-out when used with queued channels. A connection time-out when used with queued channels. - [!IMPORTANT] -> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. - +> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. + ]]> diff --git a/xml/System.ServiceModel.Configuration/ServiceDebugElement.xml b/xml/System.ServiceModel.Configuration/ServiceDebugElement.xml index 06e2a82f691..22b51b3837b 100644 --- a/xml/System.ServiceModel.Configuration/ServiceDebugElement.xml +++ b/xml/System.ServiceModel.Configuration/ServiceDebugElement.xml @@ -17,35 +17,35 @@ Represents a configuration element that specifies debugging and help information features for a Windows Communication Foundation (WCF) service. This class cannot be inherited. - property to `true` programmatically, you can enable the flow of managed exception information to the client for debugging purposes, as well as the publication of HTML information files for users browsing the service in Web browsers. - + property to `true` programmatically, you can enable the flow of managed exception information to the client for debugging purposes, as well as the publication of HTML information files for users browsing the service in Web browsers. + > [!CAUTION] -> Returning managed exception information to services can be a security risk. This is because exception details expose information about the internal client implementation that could be used by unauthorized services. - - The and properties instruct the service to publish HTML help files when the service is viewed using an HTML browser. - - The and properties control the location of the HTML help page that is viewed. - - To enable or disable one of the features using a configuration file, you must: - -1. Add a `behaviorConfiguration` attribute to the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element for your WCF service. (Endpoint behaviors are configured on `` elements; service behaviors on [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) elements.) - -2. Add to or create a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section and add a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element to that with the name that matches the `behaviorConfiguration` attribute value from step 1. (Endpoint behaviors are configured using an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) element; service behaviors are configured using a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) element. - -3. Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element to the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element from step 2 and enable or disable the various properties appropriate to your scenario. - - For a specific example, see the Example section. - - - -## Examples - The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes (in addition to enabling metadata support). - - [!code-xml[ServiceDebugBehaviorConfig#1](~/snippets/csharp/VS_Snippets_CFX/servicedebugbehaviorconfig/cs/hostapplication.exe.config#1)] - +> Returning managed exception information to services can be a security risk. This is because exception details expose information about the internal client implementation that could be used by unauthorized services. + + The and properties instruct the service to publish HTML help files when the service is viewed using an HTML browser. + + The and properties control the location of the HTML help page that is viewed. + + To enable or disable one of the features using a configuration file, you must: + +1. Add a `behaviorConfiguration` attribute to the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element for your WCF service. (Endpoint behaviors are configured on `` elements; service behaviors on [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) elements.) + +2. Add to or create a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section and add a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element to that with the name that matches the `behaviorConfiguration` attribute value from step 1. (Endpoint behaviors are configured using an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) element; service behaviors are configured using a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) element. + +3. Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element to the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element from step 2 and enable or disable the various properties appropriate to your scenario. + + For a specific example, see the Example section. + + + +## Examples + The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes (in addition to enabling metadata support). + + [!code-xml[ServiceDebugBehaviorConfig#1](~/snippets/csharp/VS_Snippets_CFX/servicedebugbehaviorconfig/cs/hostapplication.exe.config#1)] + ]]> <serviceDebug> @@ -175,11 +175,11 @@ Gets or sets a string value that specifies the binding to be used when HTTP is utilized to access the service help page. The binding to be used when HTTP is utilized to access the service help page. - @@ -243,19 +243,19 @@ if WCF publishes an HTML help page; otherwise, . The default is . - property, you must set this property to `true`. In addition, one of the following conditions must also be met: - -- The property is an absolute address that supports the HTTP protocol scheme. - -- There is a base address for the service that supports the HTTP protocol scheme. - - Although an exception is thrown if an absolute address that does not support the HTTP protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. - + property, you must set this property to `true`. In addition, one of the following conditions must also be met: + +- The property is an absolute address that supports the HTTP protocol scheme. + +- There is a base address for the service that supports the HTTP protocol scheme. + + Although an exception is thrown if an absolute address that does not support the HTTP protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. + ]]> @@ -286,19 +286,19 @@ Gets or sets the location at which the HTML help file is published. The relative or absolute HTTP-based URL of the custom HTML help file the user sees when the endpoint is viewed using an HTML browser. - property is `true`. - + property is `true`. + ]]> @@ -333,11 +333,11 @@ Gets or sets a string value that specifies the binding to be used when HTTPS is utilized to access the service help page. The binding to be used when HTTPS is utilized to access the service help page. - @@ -401,19 +401,19 @@ if an HTML help file is returned to clients making an HTTPS/GET request, for example, from an HTML browser; otherwise, . The default is . - property, you must set this property to `true`. In addition, one of the following conditions must also be met: - -- The property is an absolute address that supports the HTTPS protocol scheme. - -- There is a base address for the service that supports the HTTPS protocol scheme. - -- Although an exception is thrown if an absolute address that does not support the HTTPS protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. - + property, you must set this property to `true`. In addition, one of the following conditions must also be met: + +- The property is an absolute address that supports the HTTPS protocol scheme. + +- There is a base address for the service that supports the HTTPS protocol scheme. + +- Although an exception is thrown if an absolute address that does not support the HTTPS protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. + ]]> @@ -444,19 +444,19 @@ Gets or sets the location at which an HTML help file is published for retrieval using HTTPS. The relative or absolute HTTPS-based URL of the custom HTML help file the user sees when the endpoint is viewed using an HTML browser. - property is `true`. - + property is `true`. + ]]> @@ -488,14 +488,14 @@ if Windows Communication Foundation (WCF) returns managed exception information in the SOAP faults for client-side debugging purposes; otherwise, . The default is . - property to `true` programmatically, you can enable the flow of managed exception information to the client for debugging purposes, as well as the publication of HTML information files for users browsing the service in Web browsers. - + property to `true` programmatically, you can enable the flow of managed exception information to the client for debugging purposes, as well as the publication of HTML information files for users browsing the service in Web browsers. + > [!CAUTION] -> Returning managed exception information to services can be a security risk. This is because exception details expose information about the internal client implementation that could be used by unauthorized services. - +> Returning managed exception information to services can be a security risk. This is because exception details expose information about the internal client implementation that could be used by unauthorized services. + ]]> diff --git a/xml/System.ServiceModel.Configuration/WebScriptEndpointElement.xml b/xml/System.ServiceModel.Configuration/WebScriptEndpointElement.xml index 11ae23b304a..ad86abf35c8 100644 --- a/xml/System.ServiceModel.Configuration/WebScriptEndpointElement.xml +++ b/xml/System.ServiceModel.Configuration/WebScriptEndpointElement.xml @@ -16,11 +16,11 @@ Represents a custom configuration element that defines a in a configuration file. - @@ -92,13 +92,13 @@ - An object whose properties define an endpoint's characteristics, including - -- the signature of the operations in terms of messages exchanged - -- the data types of these messages, the location of the operations - -- the specific protocols and serialization formats that are used to support successful communication with the service. + An object whose properties define an endpoint's characteristics, including + +- the signature of the operations in terms of messages exchanged + +- the data types of these messages, the location of the operations + +- the specific protocols and serialization formats that are used to support successful communication with the service. Initiates a new with the specified . A web script endpoint. To be added. @@ -178,11 +178,11 @@ Specifies how the host name should be used in URI comparisons when dispatching an incoming message to a . An enumerated description of a comparison mode. - @@ -498,11 +498,11 @@ Gets or sets the manner in which WCF messages are transported. An object that contains a string that designates a WCF message transfer mode. - diff --git a/xml/System.ServiceModel.Description/CallbackDebugBehavior.xml b/xml/System.ServiceModel.Description/CallbackDebugBehavior.xml index 2d8ec2d6bb1..dc86b88ff23 100644 --- a/xml/System.ServiceModel.Description/CallbackDebugBehavior.xml +++ b/xml/System.ServiceModel.Description/CallbackDebugBehavior.xml @@ -33,31 +33,31 @@ Enables service debugging for a Windows Communication Foundation (WCF) callback object. - property to `true` from an application configuration file or programmatically to enable the flow of managed exception information in a client callback object back to the service for debugging purposes. - + property to `true` from an application configuration file or programmatically to enable the flow of managed exception information in a client callback object back to the service for debugging purposes. + > [!CAUTION] -> Returning managed exception information to services can be a security risk because exception details expose information about the internal client implementation that could be used by unauthorized services. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. - - Because of the security issues involved, it is strongly recommended that: - -- You use an application configuration file to set the value of the property to `true`. - -- You only do so only in controlled debugging scenarios. - - For more information about the security issues related to managed exception information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). - - You can also set the values of this attribute by using the [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element in a client application configuration file. - - - -## Examples - The following code example shows a client configuration file that instructs WCF to return managed exception information from a client callback object in SOAP messages. - - [!code-xml[SCA.CallbackContract#4](~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/client.exe.config#4)] - +> Returning managed exception information to services can be a security risk because exception details expose information about the internal client implementation that could be used by unauthorized services. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. + + Because of the security issues involved, it is strongly recommended that: + +- You use an application configuration file to set the value of the property to `true`. + +- You only do so only in controlled debugging scenarios. + + For more information about the security issues related to managed exception information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). + + You can also set the values of this attribute by using the [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element in a client application configuration file. + + + +## Examples + The following code example shows a client configuration file that instructs WCF to return managed exception information from a client callback object in SOAP messages. + + [!code-xml[SCA.CallbackContract#4](~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/client.exe.config#4)] + ]]> @@ -92,11 +92,11 @@ Controls whether a WCF callback object includes managed exception information in the detail of the SOAP faults sent back to the service. Initializes a new instance of the class. - object in which the value of the property is the value of `includeExceptionDetailInFaults`. - + object in which the value of the property is the value of `includeExceptionDetailInFaults`. + ]]> @@ -136,39 +136,39 @@ if WCF returns managed client callback exception information in the SOAP faults for service debugging purposes in duplex communication; otherwise, . The default is . - property to `true` from an application configuration file or programmatically to enable the flow of managed exception information in a client callback object back to the service for debugging purposes. - + property to `true` from an application configuration file or programmatically to enable the flow of managed exception information in a client callback object back to the service for debugging purposes. + > [!CAUTION] -> Returning managed exception information to services can be a security risk because exception details expose information about the internal client implementation that could be used by unauthorized services. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. - - Because of the security issues involved, it is strongly recommended that: - -- You use an application configuration file to set the value of the property to `true`. - -- You only do so only in controlled debugging scenarios. - - For more information about the security issues related to managed exception information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). - -### To enable or disable a feature of CallbackDebugBehavior using a configuration file - -1. Add a `behaviorConfiguration` attribute to the client [\](https://msdn.microsoft.com/library/13aa23b7-2f08-4add-8dbf-a99f8127c017) element for your WCF client application. The behavior is an endpoint behavior. Endpoint behaviors are configured on `` elements; service behaviors are configured on [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) elements. - -2. Add to or create an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) section and add a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element to that with the name that matches the `behaviorConfiguration` attribute value from step 1. Endpoint behaviors are added for use in a client [\](https://msdn.microsoft.com/library/13aa23b7-2f08-4add-8dbf-a99f8127c017) element using an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) element. - -3. Add a [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element to the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element from step 2 and enable or disable the various properties appropriate to your scenario. - - For a specific example, see the Example section. You can also set the values of this attribute by using the [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element in a client application configuration file. - - - -## Examples - The following code example shows a client configuration file that instructs WCF to return managed exception information from a client callback object in SOAP messages. - - [!code-xml[SCA.CallbackContract#4](~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/client.exe.config#4)] - +> Returning managed exception information to services can be a security risk because exception details expose information about the internal client implementation that could be used by unauthorized services. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. + + Because of the security issues involved, it is strongly recommended that: + +- You use an application configuration file to set the value of the property to `true`. + +- You only do so only in controlled debugging scenarios. + + For more information about the security issues related to managed exception information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). + +### To enable or disable a feature of CallbackDebugBehavior using a configuration file + +1. Add a `behaviorConfiguration` attribute to the client [\](https://msdn.microsoft.com/library/13aa23b7-2f08-4add-8dbf-a99f8127c017) element for your WCF client application. The behavior is an endpoint behavior. Endpoint behaviors are configured on `` elements; service behaviors are configured on [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) elements. + +2. Add to or create an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) section and add a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element to that with the name that matches the `behaviorConfiguration` attribute value from step 1. Endpoint behaviors are added for use in a client [\](https://msdn.microsoft.com/library/13aa23b7-2f08-4add-8dbf-a99f8127c017) element using an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) element. + +3. Add a [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element to the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element from step 2 and enable or disable the various properties appropriate to your scenario. + + For a specific example, see the Example section. You can also set the values of this attribute by using the [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element in a client application configuration file. + + + +## Examples + The following code example shows a client configuration file that instructs WCF to return managed exception information from a client callback object in SOAP messages. + + [!code-xml[SCA.CallbackContract#4](~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/client.exe.config#4)] + ]]> @@ -239,11 +239,11 @@ The client runtime to be customized. Implements the to support the behavior. - property to the property. - + property to the property. + ]]> @@ -280,11 +280,11 @@ The endpoint dispatcher to be modified or extended. Implements the to support the behavior. - ; this behavior can only be used in a client application. - + ; this behavior can only be used in a client application. + ]]> diff --git a/xml/System.ServiceModel.Description/ContractDescription.xml b/xml/System.ServiceModel.Description/ContractDescription.xml index 7092c89df33..ce7a55cd1f5 100644 --- a/xml/System.ServiceModel.Description/ContractDescription.xml +++ b/xml/System.ServiceModel.Description/ContractDescription.xml @@ -60,9 +60,9 @@ A *duplex* contract defines the following logical sets of operations: -- A set that the service exposes for the client to call. +- A set that the service exposes for the client to call. -- A set that the client exposes for the service to call. +- A set that the client exposes for the service to call. The programming model for defining a duplex contract is to split each set in a separate interface and apply attributes to each interface. In this case, contains a reference to each of the interfaces that groups them into one duplex contract. diff --git a/xml/System.ServiceModel.Description/DurableServiceAttribute.xml b/xml/System.ServiceModel.Description/DurableServiceAttribute.xml index d79d33b93f5..b8caeb7a890 100644 --- a/xml/System.ServiceModel.Description/DurableServiceAttribute.xml +++ b/xml/System.ServiceModel.Description/DurableServiceAttribute.xml @@ -31,25 +31,25 @@ Specifies the internal execution behavior of a durable service contract implementation. - or . - -- The value must not be set to Multiple. - -- The value must be PerSession. - -- There must be one sessionful endpoint configured for the service. - -- If the contract disallows sessions, then must be set to `true` for all operations. - -- If the contract permits or allows sessions then all operations for which is set to `true` must be request/response operations, that is cannot be set to `true`. - -- If is set to `true`, then all operations on the service must either be marked with set to `true` or marked with . Additionally, must be set to Single. - + or . + +- The value must not be set to Multiple. + +- The value must be PerSession. + +- There must be one sessionful endpoint configured for the service. + +- If the contract disallows sessions, then must be set to `true` for all operations. + +- If the contract permits or allows sessions then all operations for which is set to `true` must be request/response operations, that is cannot be set to `true`. + +- If is set to `true`, then all operations on the service must either be marked with set to `true` or marked with . Additionally, must be set to Single. + ]]> @@ -157,13 +157,13 @@ if the service instance state is persisted using the same transaction; otherwise, . - is set to `true`, then all operations on the service must either be marked with set to `true` or marked with . Additionally, must be set to Single. - - Setting to `true` makes the service state transactional with the operation transaction. This means that if the operation's transaction rolls back, the service state also rolls back. - + is set to `true`, then all operations on the service must either be marked with set to `true` or marked with . Additionally, must be set to Single. + + Setting to `true` makes the service state transactional with the operation transaction. This means that if the operation's transaction rolls back, the service state also rolls back. + ]]> @@ -188,11 +188,11 @@ Gets or sets the enumeration value associated with the durable service. An enumeration value. - is instantiated, it sets this property value to . This means that whenever an unknown exception is encountered by the durable service, the service instance is terminated and any state information is deleted from the persistence store. - + is instantiated, it sets this property value to . This means that whenever an unknown exception is encountered by the durable service, the service instance is terminated and any state information is deleted from the persistence store. + ]]> diff --git a/xml/System.ServiceModel.Description/IContractBehavior.xml b/xml/System.ServiceModel.Description/IContractBehavior.xml index 4ee87c3411b..dacf000e73a 100644 --- a/xml/System.ServiceModel.Description/IContractBehavior.xml +++ b/xml/System.ServiceModel.Description/IContractBehavior.xml @@ -43,67 +43,67 @@ Implements methods that can be used to extend run-time behavior for a contract in either a service or client application. - interface to modify, examine, or extend some aspect of contract-wide execution at the application level. Unlike and objects, objects cannot be added to the runtime using an application configuration file; they can only be added programmatically or using an attribute. - - For more information about choosing between service, endpoint, and contract behaviors, see [Configuring and Extending the Runtime with Behaviors](/dotnet/framework/wcf/extending/configuring-and-extending-the-runtime-with-behaviors). - -- Use the method to provide binding elements with custom data to support the behavior. - -- Use the method to modify, examine, or insert extensions to a contract in a client application. - -- Use the method to modify, examine, or insert extensions to a contract in a service application. - -- Use the method to ensure that a contract can support a particular feature. - - objects can make use of any of these methods, but often only one is important; in such cases, the unused methods can return without any value. - + interface to modify, examine, or extend some aspect of contract-wide execution at the application level. Unlike and objects, objects cannot be added to the runtime using an application configuration file; they can only be added programmatically or using an attribute. + + For more information about choosing between service, endpoint, and contract behaviors, see [Configuring and Extending the Runtime with Behaviors](/dotnet/framework/wcf/extending/configuring-and-extending-the-runtime-with-behaviors). + +- Use the method to provide binding elements with custom data to support the behavior. + +- Use the method to modify, examine, or insert extensions to a contract in a client application. + +- Use the method to modify, examine, or insert extensions to a contract in a service application. + +- Use the method to ensure that a contract can support a particular feature. + + objects can make use of any of these methods, but often only one is important; in such cases, the unused methods can return without any value. + > [!NOTE] -> All of the methods pass and as parameters. These parameters are for examination; if you modify the objects the execution behavior is undefined. - - types can be used on either the service or the client, or both. To perform a customization task on the service, the object must be added to the property prior to the construction of the service runtime, which occurs when the method is called on the object. There are two ways to do this. - - The first method is to programmatically add the custom contract behavior to the property prior to the point when the method is called on the object. When applied this way, the behavior is applied for all messages flowing through that contract on any endpoint. - +> All of the methods pass and as parameters. These parameters are for examination; if you modify the objects the execution behavior is undefined. + + types can be used on either the service or the client, or both. To perform a customization task on the service, the object must be added to the property prior to the construction of the service runtime, which occurs when the method is called on the object. There are two ways to do this. + + The first method is to programmatically add the custom contract behavior to the property prior to the point when the method is called on the object. When applied this way, the behavior is applied for all messages flowing through that contract on any endpoint. + > [!NOTE] -> The behavior is applied to all contracts of the same type. For example, if you programmatically add the same contract type to more than one endpoint, the behavior modifies all endpoints that refer to the same contract object. - - The second method is to create a custom attribute that implements and apply that to: - -- A contract interface. In this case, the behavior is applied to all contracts of that type in any endpoint. - -- A service class. In this case, the behavior is applied to all endpoints regardless of contract. - -- A callback class. In this case, the behavior is applied to the duplex client's endpoint. - - The behavior of the second approach varies slightly if the custom attribute also implements . In this case, the behavior is as follows: - -- A contract interface. In this case, the behavior is applied to all contracts of that type in any endpoint and Windows Communication Foundation (WCF) ignores the value of the property. - -- A service class. In this case, the behavior is applied only to endpoints the contract of which is the value of the property. - -- A callback class. In this case, the behavior is applied to the duplex client's endpoint and WCF ignores the value of the property. - - To perform the customization task on the client for which it is intended, the object must be added to the property prior to the construction of the client runtime, which occurs when is called. There are two ways to do this: - -- Programmatically add the custom contract behavior to the property prior to the point when the is called. - -- Create a custom attribute that also implements . - - For more information on programmatically adding types to either the client or service application, see [Configuring and Extending the Runtime with Behaviors](/dotnet/framework/wcf/extending/configuring-and-extending-the-runtime-with-behaviors). - - - -## Examples - The following code example assumes a custom implementation called `ObjectProviderBehavior` that provides a "singleton" behavior; it always returns the same service instance and does not recycle it. - - To insert the instance provider customization, the example shows how to implement a custom attribute (`SingletonBehaviorAttribute`) that implements to insert the custom service instance provider. It also implements , which binds its use to the `ISampleService` contract. - +> The behavior is applied to all contracts of the same type. For example, if you programmatically add the same contract type to more than one endpoint, the behavior modifies all endpoints that refer to the same contract object. + + The second method is to create a custom attribute that implements and apply that to: + +- A contract interface. In this case, the behavior is applied to all contracts of that type in any endpoint. + +- A service class. In this case, the behavior is applied to all endpoints regardless of contract. + +- A callback class. In this case, the behavior is applied to the duplex client's endpoint. + + The behavior of the second approach varies slightly if the custom attribute also implements . In this case, the behavior is as follows: + +- A contract interface. In this case, the behavior is applied to all contracts of that type in any endpoint and Windows Communication Foundation (WCF) ignores the value of the property. + +- A service class. In this case, the behavior is applied only to endpoints the contract of which is the value of the property. + +- A callback class. In this case, the behavior is applied to the duplex client's endpoint and WCF ignores the value of the property. + + To perform the customization task on the client for which it is intended, the object must be added to the property prior to the construction of the client runtime, which occurs when is called. There are two ways to do this: + +- Programmatically add the custom contract behavior to the property prior to the point when the is called. + +- Create a custom attribute that also implements . + + For more information on programmatically adding types to either the client or service application, see [Configuring and Extending the Runtime with Behaviors](/dotnet/framework/wcf/extending/configuring-and-extending-the-runtime-with-behaviors). + + + +## Examples + The following code example assumes a custom implementation called `ObjectProviderBehavior` that provides a "singleton" behavior; it always returns the same service instance and does not recycle it. + + To insert the instance provider customization, the example shows how to implement a custom attribute (`SingletonBehaviorAttribute`) that implements to insert the custom service instance provider. It also implements , which binds its use to the `ISampleService` contract. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/icontractbehavior/cs/objectproviderbehavior.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/icontractbehavior/vb/objectproviderbehavior.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/icontractbehavior/vb/objectproviderbehavior.vb" id="Snippet2"::: + ]]> @@ -147,13 +147,13 @@ The objects that binding elements require to support the behavior. Configures any binding elements to support the contract behavior. - method to provide binding elements with the extra objects they require to support the contract behavior. - - This method is called once for each endpoint that uses the specified service contract. - + method to provide binding elements with the extra objects they require to support the contract behavior. + + This method is called once for each endpoint that uses the specified service contract. + ]]> @@ -197,29 +197,29 @@ The client runtime. Implements a modification or extension of the client across a contract. - method to view, modify, or add custom extensions to the client runtime across all messages or for one specific operation. For details about what customizations you can do with a client run-time object, see and . - - The method can throw a exception if the behavior is only intended for use in a service application. - - This method is called once for each endpoint that uses the specified service contract. - - Note that there can be two operations with the same name in the description (one in each direction), so if you must iterate through operations where the contract is a duplex contract, you must correlate the message direction between the endpoint and that returned by the property. - - Because other behaviors may have already added or removed some operations from the runtime, there is no guarantee that there are the same number of operations in the description as there are objects in the property. - - - -## Examples - The following code example assumes a custom implementation called `ObjectProviderBehavior` that provides a "singleton" behavior; it always returns the same service instance and does not recycle it. - - To insert the instance provider customization, the example shows how to implement a custom attribute (`SingletonBehaviorAttribute`) that implements to insert the custom service instance provider. It also implements , which binds its use to the `ISampleService` contract. - + method to view, modify, or add custom extensions to the client runtime across all messages or for one specific operation. For details about what customizations you can do with a client run-time object, see and . + + The method can throw a exception if the behavior is only intended for use in a service application. + + This method is called once for each endpoint that uses the specified service contract. + + Note that there can be two operations with the same name in the description (one in each direction), so if you must iterate through operations where the contract is a duplex contract, you must correlate the message direction between the endpoint and that returned by the property. + + Because other behaviors may have already added or removed some operations from the runtime, there is no guarantee that there are the same number of operations in the description as there are objects in the property. + + + +## Examples + The following code example assumes a custom implementation called `ObjectProviderBehavior` that provides a "singleton" behavior; it always returns the same service instance and does not recycle it. + + To insert the instance provider customization, the example shows how to implement a custom attribute (`SingletonBehaviorAttribute`) that implements to insert the custom service instance provider. It also implements , which binds its use to the `ISampleService` contract. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/icontractbehavior/cs/objectproviderbehavior.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/icontractbehavior/vb/objectproviderbehavior.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/icontractbehavior/vb/objectproviderbehavior.vb" id="Snippet2"::: + ]]> @@ -263,29 +263,29 @@ The dispatch runtime that controls service execution. Implements a modification or extension of the client across a contract. - to view, modify, or add custom extensions to the service runtime across all messages in a specific contract or for one specific operation in that contract. For details about what customizations you can perform in a service application, see and . - - The method can throw a exception if the behavior is only intended for use in a client application. - - This method is called once for each endpoint that uses the specified service contract. - - Note that there can be two operations with the same name in the description (one in each direction), so if you must iterate through operations where the contract is a duplex contract, you must correlate the message direction between the endpoint and that returned by the property. - - In addition, because other behaviors may have already added or removed some operations from the runtime, there is no guarantee that there are the same number of operations in description as there are objects in the property. - - - -## Examples - The following code example assumes a custom implementation called `ObjectProviderBehavior` that provides a "singleton" behavior; it always returns the same service instance and does not recycle it. - - To insert the instance provider customization, the example shows how to implement a custom attribute (`SingletonBehaviorAttribute`) that implements to insert the custom service instance provider. It also implements , which binds its use to the `ISampleService` contract. - + to view, modify, or add custom extensions to the service runtime across all messages in a specific contract or for one specific operation in that contract. For details about what customizations you can perform in a service application, see and . + + The method can throw a exception if the behavior is only intended for use in a client application. + + This method is called once for each endpoint that uses the specified service contract. + + Note that there can be two operations with the same name in the description (one in each direction), so if you must iterate through operations where the contract is a duplex contract, you must correlate the message direction between the endpoint and that returned by the property. + + In addition, because other behaviors may have already added or removed some operations from the runtime, there is no guarantee that there are the same number of operations in description as there are objects in the property. + + + +## Examples + The following code example assumes a custom implementation called `ObjectProviderBehavior` that provides a "singleton" behavior; it always returns the same service instance and does not recycle it. + + To insert the instance provider customization, the example shows how to implement a custom attribute (`SingletonBehaviorAttribute`) that implements to insert the custom service instance provider. It also implements , which binds its use to the `ISampleService` contract. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/icontractbehavior/cs/objectproviderbehavior.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/icontractbehavior/vb/objectproviderbehavior.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/icontractbehavior/vb/objectproviderbehavior.vb" id="Snippet2"::: + ]]> @@ -327,13 +327,13 @@ The endpoint to validate. Implement to confirm that the contract and endpoint can support the contract behavior. - method to confirm that the contract description is sufficient to support the custom contract behavior. Implementations can inspect the description and either throw or return no value. - - This method is called once for each endpoint that uses the specified service contract. - + method to confirm that the contract description is sufficient to support the custom contract behavior. Implementations can inspect the description and either throw or return no value. + + This method is called once for each endpoint that uses the specified service contract. + ]]> diff --git a/xml/System.ServiceModel.Description/IEndpointBehavior.xml b/xml/System.ServiceModel.Description/IEndpointBehavior.xml index af8aefda664..b72b1abb096 100644 --- a/xml/System.ServiceModel.Description/IEndpointBehavior.xml +++ b/xml/System.ServiceModel.Description/IEndpointBehavior.xml @@ -43,59 +43,59 @@ Implements methods that can be used to extend run-time behavior for an endpoint in either a service or client application. - interface to modify, examine, or extend some aspect of endpoint-wide execution at the application level for either client or service applications. - -- Use the method to pass custom data at runtime to enable bindings to support custom behavior. - -- Use the method to modify, examine, or insert extensions to an endpoint in a client application. - -- Use the method to modify, examine, or insert extensions to endpoint-wide execution in a service application. - -- Use the method to confirm that a meets specific requirements. This can be used to ensure that an endpoint has a certain configuration setting enabled, supports a particular feature and other requirements. - - objects can make use of any of these methods, but often only one is important; in such cases, the unused methods can return, performing no action. - + interface to modify, examine, or extend some aspect of endpoint-wide execution at the application level for either client or service applications. + +- Use the method to pass custom data at runtime to enable bindings to support custom behavior. + +- Use the method to modify, examine, or insert extensions to an endpoint in a client application. + +- Use the method to modify, examine, or insert extensions to endpoint-wide execution in a service application. + +- Use the method to confirm that a meets specific requirements. This can be used to ensure that an endpoint has a certain configuration setting enabled, supports a particular feature and other requirements. + + objects can make use of any of these methods, but often only one is important; in such cases, the unused methods can return, performing no action. + > [!NOTE] -> All of the methods pass a object as a parameter. This parameter is for examination only; if you modify the object the execution behavior is undefined. - - objects are typically used to access the various properties of the , , , and objects in a service application and the and in a client application. In addition, you can access the properties of duplex clients and services using the and properties, respectively. - - For a description of the various properties and customizations available, see [Extending ServiceHost and the Service Model Layer](/dotnet/framework/wcf/extending/extending-servicehost-and-the-service-model-layer). - - Once a customization has been decided upon (and the customization interface implemented if necessary) and the has been decided is the appropriate scope of customization, the customization must be inserted into the Windows Communication Foundation (WCF) runtime by implementing and adding the endpoint behavior to the runtime. - - There are two ways to add the behavior to the runtime: - -- Programmatically add the custom endpoint behavior to the property prior to the opening of the service host (in a service application) or the channel factory (in a client application). - -- Configure the behavior using an application configuration file. For details, see [<behaviorExtensions>](/dotnet/framework/configure-apps/file-schema/wcf/behaviorextensions). - - To perform the service customization task for which it is intended, the object must be added to the property prior to the construction of the service runtime, which occurs when method is called on . To perform a client customization task, the object must be added to the property before calling the method or the method on . - - - -## Examples - The following code example shows the implementation of an endpoint behavior that adds an object in a service application. In this case, the `EndpointBehaviorMessageInspector` class implements to inspect the inbound and outbound message, the interface to insert the inspector class into the inspection system for all endpoints to which the behavior applies, and the to enable the message inspector behavior using an application configuration file. - - The first step is to implement the message inspector. - - [!code-csharp[IEndpointBehavior#2](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#2)] - - The next code example shows the use of the method to add the message inspector to the property. - - [!code-csharp[IEndpointBehavior#4](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#4)] - - The following code example shows the implementation of in order to enable use of the message inspector behavior from a configuration file. - - [!code-csharp[IEndpointBehavior#3](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#3)] - - Finally, the following configuration file shows how the preceding example can be used from configuration. - - [!code-xml[IEndpointBehavior#5](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/hostapplication.exe.config#5)] - +> All of the methods pass a object as a parameter. This parameter is for examination only; if you modify the object the execution behavior is undefined. + + objects are typically used to access the various properties of the , , , and objects in a service application and the and in a client application. In addition, you can access the properties of duplex clients and services using the and properties, respectively. + + For a description of the various properties and customizations available, see [Extending ServiceHost and the Service Model Layer](/dotnet/framework/wcf/extending/extending-servicehost-and-the-service-model-layer). + + Once a customization has been decided upon (and the customization interface implemented if necessary) and the has been decided is the appropriate scope of customization, the customization must be inserted into the Windows Communication Foundation (WCF) runtime by implementing and adding the endpoint behavior to the runtime. + + There are two ways to add the behavior to the runtime: + +- Programmatically add the custom endpoint behavior to the property prior to the opening of the service host (in a service application) or the channel factory (in a client application). + +- Configure the behavior using an application configuration file. For details, see [<behaviorExtensions>](/dotnet/framework/configure-apps/file-schema/wcf/behaviorextensions). + + To perform the service customization task for which it is intended, the object must be added to the property prior to the construction of the service runtime, which occurs when method is called on . To perform a client customization task, the object must be added to the property before calling the method or the method on . + + + +## Examples + The following code example shows the implementation of an endpoint behavior that adds an object in a service application. In this case, the `EndpointBehaviorMessageInspector` class implements to inspect the inbound and outbound message, the interface to insert the inspector class into the inspection system for all endpoints to which the behavior applies, and the to enable the message inspector behavior using an application configuration file. + + The first step is to implement the message inspector. + + [!code-csharp[IEndpointBehavior#2](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#2)] + + The next code example shows the use of the method to add the message inspector to the property. + + [!code-csharp[IEndpointBehavior#4](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#4)] + + The following code example shows the implementation of in order to enable use of the message inspector behavior from a configuration file. + + [!code-csharp[IEndpointBehavior#3](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#3)] + + Finally, the following configuration file shows how the preceding example can be used from configuration. + + [!code-xml[IEndpointBehavior#5](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/hostapplication.exe.config#5)] + ]]> @@ -137,11 +137,11 @@ The objects that binding elements require to support the behavior. Implement to pass data at runtime to bindings to support custom behavior. - method to provide binding elements with the extra objects they require to support the endpoint behavior. When binding parameters are added here the binding can locate these objects when the channel listener or channel factory is created. Typically, you implement the method to pass information about the endpoint to a custom binding element so that it can build a supporting channel correctly. Return no value if no modifications are required. - + method to provide binding elements with the extra objects they require to support the endpoint behavior. When binding parameters are added here the binding can locate these objects when the channel listener or channel factory is created. Typically, you implement the method to pass information about the endpoint to a custom binding element so that it can build a supporting channel correctly. Return no value if no modifications are required. + ]]> @@ -183,15 +183,15 @@ The client runtime to be customized. Implements a modification or extension of the client across an endpoint. - method to view, modify, or add custom extension to the client runtime across all messages used with an endpoint or for specific operations. For details about what customizations you can do with a client run-time object, see and . - - It is recommended that the method throw a if the behavior is only intended for use in a service application. - - Because other behaviors may have already added or removed some operations from the runtime there is no guarantee that there are the same number of operations in the description as there are objects in the property. - + method to view, modify, or add custom extension to the client runtime across all messages used with an endpoint or for specific operations. For details about what customizations you can do with a client run-time object, see and . + + It is recommended that the method throw a if the behavior is only intended for use in a service application. + + Because other behaviors may have already added or removed some operations from the runtime there is no guarantee that there are the same number of operations in the description as there are objects in the property. + ]]> @@ -233,38 +233,38 @@ The endpoint dispatcher to be modified or extended. Implements a modification or extension of the service across an endpoint. - method to view, modify, or extend the service runtime across all messages or for specific operations in an endpoint. For details about what customizations you can do in a service application, see and . - - It is recommended that the method throw a exception if the behavior is only intended for use in a client application. - - Note that there can be two operations with the same name in the description when using a callback contract (one operation in each direction). If you are iterating through operations, you must correlate the message direction between the endpoint and what is returned by the property. - - In addition, because other behaviors may have already added or removed some operations from the runtime, there is no guarantee that there are the same number of operations in description as there are objects in the property. - - - -## Examples - The following code example shows the implementation of an endpoint behavior that adds an object in a service application. In this case, the `EndpointBehaviorMessageInspector` class implements to inspect the inbound and outbound message, the interface to insert the inspector class into the inspection system for all endpoints to which the behavior applies, and the to enable the message inspector behavior using an application configuration file. - - The first step is to implement the message inspector. - - [!code-csharp[IEndpointBehavior#2](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#2)] - - The next code example shows the use of the method to add the message inspector to the property. - - [!code-csharp[IEndpointBehavior#4](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#4)] - - The following code example shows the implementation of in order to enable use of the message inspector behavior from a configuration file. - - [!code-csharp[IEndpointBehavior#3](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#3)] - - Finally, the following configuration file shows how the preceding example can be used from configuration. - - [!code-xml[IEndpointBehavior#5](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/hostapplication.exe.config#5)] - + method to view, modify, or extend the service runtime across all messages or for specific operations in an endpoint. For details about what customizations you can do in a service application, see and . + + It is recommended that the method throw a exception if the behavior is only intended for use in a client application. + + Note that there can be two operations with the same name in the description when using a callback contract (one operation in each direction). If you are iterating through operations, you must correlate the message direction between the endpoint and what is returned by the property. + + In addition, because other behaviors may have already added or removed some operations from the runtime, there is no guarantee that there are the same number of operations in description as there are objects in the property. + + + +## Examples + The following code example shows the implementation of an endpoint behavior that adds an object in a service application. In this case, the `EndpointBehaviorMessageInspector` class implements to inspect the inbound and outbound message, the interface to insert the inspector class into the inspection system for all endpoints to which the behavior applies, and the to enable the message inspector behavior using an application configuration file. + + The first step is to implement the message inspector. + + [!code-csharp[IEndpointBehavior#2](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#2)] + + The next code example shows the use of the method to add the message inspector to the property. + + [!code-csharp[IEndpointBehavior#4](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#4)] + + The following code example shows the implementation of in order to enable use of the message inspector behavior from a configuration file. + + [!code-csharp[IEndpointBehavior#3](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs#3)] + + Finally, the following configuration file shows how the preceding example can be used from configuration. + + [!code-xml[IEndpointBehavior#5](~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/hostapplication.exe.config#5)] + ]]> @@ -304,13 +304,13 @@ The endpoint to validate. Implement to confirm that the endpoint meets some intended criteria. - method to examine the structure to confirm any set of criteria. It is not necessary to perform any customizations in or to make use of this method. If the endpoint passes validation, return; otherwise, throw an exception. - - For example, the method can be use to ensure that all endpoints use an approved corporate binding. - + method to examine the structure to confirm any set of criteria. It is not necessary to perform any customizations in or to make use of this method. If the endpoint passes validation, return; otherwise, throw an exception. + + For example, the method can be use to ensure that all endpoints use an approved corporate binding. + ]]> diff --git a/xml/System.ServiceModel.Description/IOperationBehavior.xml b/xml/System.ServiceModel.Description/IOperationBehavior.xml index 06ca250fe74..9128ce8f78d 100644 --- a/xml/System.ServiceModel.Description/IOperationBehavior.xml +++ b/xml/System.ServiceModel.Description/IOperationBehavior.xml @@ -43,53 +43,53 @@ Implements methods that can be used to extend run-time behavior for an operation in either a service or client application. - interface to modify, examine, or extend some aspect of operation-wide execution at the application level for either client or service applications. - -- Use the method to pass custom data at runtime to enable bindings to support custom behavior. - -- Use the method to modify, examine, or insert extensions to a client dispatcher in a client application. - -- Use the method to modify, examine, or insert extensions to operation-wide execution in a service application. - -- Use the method to confirm that a meets specific requirements. This can be used to ensure that an operation has a certain configuration setting enabled, supports a particular feature and other requirements. - - objects can make use of any of these methods, but often only one is important; in such cases, the unused methods can return, performing no action. - + interface to modify, examine, or extend some aspect of operation-wide execution at the application level for either client or service applications. + +- Use the method to pass custom data at runtime to enable bindings to support custom behavior. + +- Use the method to modify, examine, or insert extensions to a client dispatcher in a client application. + +- Use the method to modify, examine, or insert extensions to operation-wide execution in a service application. + +- Use the method to confirm that a meets specific requirements. This can be used to ensure that an operation has a certain configuration setting enabled, supports a particular feature and other requirements. + + objects can make use of any of these methods, but often only one is important; in such cases, the unused methods can return, performing no action. + > [!NOTE] -> All of the methods pass an object as a parameter. This parameter is for examination only; if you modify the object the execution behavior is undefined. - - objects are typically used to access the various properties of the object in a service application and the object in a client application. - - Typically, the developer first reviews the extensibility points to determine which customization option suits the application scenario and then implements the customization at the appropriate scope. For example, objects can insert customizations for all messages in an entire service and objects can insert customizations for all messages across a specific contract, and so on. For a description of the various properties and customizations available, see [Extending ServiceHost and the Service Model Layer](/dotnet/framework/wcf/extending/extending-servicehost-and-the-service-model-layer). - - Once a customization has been decided upon (and the customization interface implemented if necessary) and the is the appropriate scope of customization, the customization must be inserted into the Windows Communication Foundation (WCF) runtime by implementing and adding the operation behavior to the runtime. - - There are two ways to add the to the runtime: - -- Programmatically add the custom operation behavior to the property prior to the opening of the service host (in a service application) or the channel factory (in a client application). - -- Add the behavior using a custom attribute. - - To perform the service customization task for which it is intended, the object must be added to the property prior to the construction of the service runtime, which occurs when method is called on . To perform a client customization task, the object must be added to the property before calling the method or the method on . - - Although the operation behavior is designed for easy access to the runtime at the scope of an individual operation, you can access the runtime at a larger scope by accessing the parent runtime object. - - - -## Examples - The following code example shows an implementation of that writes to the console when the inspector is invoked on an operation. This customization can only be attached to the or and is therefore usually inserted by an operation behavior. - +> All of the methods pass an object as a parameter. This parameter is for examination only; if you modify the object the execution behavior is undefined. + + objects are typically used to access the various properties of the object in a service application and the object in a client application. + + Typically, the developer first reviews the extensibility points to determine which customization option suits the application scenario and then implements the customization at the appropriate scope. For example, objects can insert customizations for all messages in an entire service and objects can insert customizations for all messages across a specific contract, and so on. For a description of the various properties and customizations available, see [Extending ServiceHost and the Service Model Layer](/dotnet/framework/wcf/extending/extending-servicehost-and-the-service-model-layer). + + Once a customization has been decided upon (and the customization interface implemented if necessary) and the is the appropriate scope of customization, the customization must be inserted into the Windows Communication Foundation (WCF) runtime by implementing and adding the operation behavior to the runtime. + + There are two ways to add the to the runtime: + +- Programmatically add the custom operation behavior to the property prior to the opening of the service host (in a service application) or the channel factory (in a client application). + +- Add the behavior using a custom attribute. + + To perform the service customization task for which it is intended, the object must be added to the property prior to the construction of the service runtime, which occurs when method is called on . To perform a client customization task, the object must be added to the property before calling the method or the method on . + + Although the operation behavior is designed for easy access to the runtime at the scope of an individual operation, you can access the runtime at a larger scope by accessing the parent runtime object. + + + +## Examples + The following code example shows an implementation of that writes to the console when the inspector is invoked on an operation. This customization can only be attached to the or and is therefore usually inserted by an operation behavior. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: - - The following code example shows how the operation behavior attaches the parameter inspector to the runtime. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: + + The following code example shows how the operation behavior attaches the parameter inspector to the runtime. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet6"::: + ]]> @@ -131,11 +131,11 @@ The collection of objects that binding elements require to support the behavior. Implement to pass data at runtime to bindings to support custom behavior. - method to provide binding elements with the extra objects they require to support the operation behavior. When binding parameters are added here, the binding can locate and process these objects when the channel listener or channel factory is created. Typically, you implement the method to pass information about the operation to a custom binding element so that it can build a supporting channel correctly. Return no value if no modifications are required. - + method to provide binding elements with the extra objects they require to support the operation behavior. When binding parameters are added here, the binding can locate and process these objects when the channel listener or channel factory is created. Typically, you implement the method to pass information about the operation to a custom binding element so that it can build a supporting channel correctly. Return no value if no modifications are required. + ]]> @@ -177,26 +177,26 @@ The run-time object that exposes customization properties for the operation described by . Implements a modification or extension of the client across an operation. - method to view, modify, or add a custom extension to the client runtime across all messages used with a specific operation. For details about what customizations you can do with a client run-time object, see and . - - It is recommended that the method throw a if the behavior is only intended for use in a service application. - - - -## Examples - The following code example shows an implementation of that writes to the console when the inspector is invoked on an operation. This customization can only be attached to the or and is therefore usually inserted by an operation behavior. - + method to view, modify, or add a custom extension to the client runtime across all messages used with a specific operation. For details about what customizations you can do with a client run-time object, see and . + + It is recommended that the method throw a if the behavior is only intended for use in a service application. + + + +## Examples + The following code example shows an implementation of that writes to the console when the inspector is invoked on an operation. This customization can only be attached to the or and is therefore usually inserted by an operation behavior. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: - - The following code example shows how the operation behavior attaches the parameter inspector to the runtime. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: + + The following code example shows how the operation behavior attaches the parameter inspector to the runtime. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet6"::: + ]]> @@ -238,26 +238,26 @@ The run-time object that exposes customization properties for the operation described by . Implements a modification or extension of the service across an operation. - method to view, modify, or extend the service runtime across all messages or for a specific operation. For details about what customizations you can do in a service application, see and . - - It is recommended that the method throw a exception if the behavior is only intended for use in a client application. - - - -## Examples - The following code example shows an implementation of that writes to the console when the inspector is invoked on an operation. This customization can only be attached to the or and is therefore usually inserted by an operation behavior. - + method to view, modify, or extend the service runtime across all messages or for a specific operation. For details about what customizations you can do in a service application, see and . + + It is recommended that the method throw a exception if the behavior is only intended for use in a client application. + + + +## Examples + The following code example shows an implementation of that writes to the console when the inspector is invoked on an operation. This customization can only be attached to the or and is therefore usually inserted by an operation behavior. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: - - The following code example shows how the operation behavior attaches the parameter inspector to the runtime. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: + + The following code example shows how the operation behavior attaches the parameter inspector to the runtime. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet6"::: + ]]> @@ -297,13 +297,13 @@ The operation being examined. Use for examination only. If the operation description is modified, the results are undefined. Implement to confirm that the operation meets some intended criteria. - method to examine the structure to confirm any set of criteria. It is not necessary to perform any customizations in or to make use of this method. If the operation passes validation, return; otherwise, throw an exception. - - For example, the method can be use to ensure that an operation is authorized. - + method to examine the structure to confirm any set of criteria. It is not necessary to perform any customizations in or to make use of this method. If the operation passes validation, return; otherwise, throw an exception. + + For example, the method can be use to ensure that an operation is authorized. + ]]> diff --git a/xml/System.ServiceModel.Description/IServiceBehavior.xml b/xml/System.ServiceModel.Description/IServiceBehavior.xml index 2d3f4ef7fde..4de230e2112 100644 --- a/xml/System.ServiceModel.Description/IServiceBehavior.xml +++ b/xml/System.ServiceModel.Description/IServiceBehavior.xml @@ -14,46 +14,46 @@ Provides a mechanism to modify or insert custom extensions across an entire service, including the . - to modify, examine, or extend some aspect of service-wide execution at the application level: - -- Use the method to change run-time property values or insert custom extension objects such as error handlers, message or parameter interceptors, security extensions, and other custom extension objects. - -- Use the method to examine the description before Windows Communication Foundation (WCF) constructs the executing service to confirm that it can execute properly. - -- Use the method to pass to a binding element the custom information for the service so that it can support the service correctly. - - objects can make use of any of these methods, but often only one is important; in such cases the unused methods can return without a value. - + to modify, examine, or extend some aspect of service-wide execution at the application level: + +- Use the method to change run-time property values or insert custom extension objects such as error handlers, message or parameter interceptors, security extensions, and other custom extension objects. + +- Use the method to examine the description before Windows Communication Foundation (WCF) constructs the executing service to confirm that it can execute properly. + +- Use the method to pass to a binding element the custom information for the service so that it can support the service correctly. + + objects can make use of any of these methods, but often only one is important; in such cases the unused methods can return without a value. + > [!NOTE] -> All of the methods pass and objects as a parameters. The parameter is for examination only; if you modify these objects the execution behavior is undefined. - - To perform the customization task for which it is intended, the object must be added to the property prior to the construction of the service runtime. There are three ways to do this: - -- Programmatically add the custom service behavior to the property prior to the point where the method is called on the object. - -- Create a custom attribute that implements and use it to mark service classes that are to be modified. When a object is constructed, WCF uses reflection to discover the attributes on the service type. If any attributes implement , they are added to the behaviors collection on . - -- Extend the class to support the specification of the behavior in an application or machine configuration file. See the Example section for more information. - - Examples of service behaviors in WCF include the attribute, the , the and the behavior. - - - -## Examples - The following code example shows the use of a service behavior specified in a configuration file to insert a custom error handler in a service application. In this example, the error handler catches all exceptions and converts them into a custom `GreetingFault` SOAP fault that is then returned to the client. - - The following implementation adds no binding parameter objects, adds the custom object to each property, and validates that each operation of the service to which the service behavior is applied and has a of type `GreetingFault`. - +> All of the methods pass and objects as a parameters. The parameter is for examination only; if you modify these objects the execution behavior is undefined. + + To perform the customization task for which it is intended, the object must be added to the property prior to the construction of the service runtime. There are three ways to do this: + +- Programmatically add the custom service behavior to the property prior to the point where the method is called on the object. + +- Create a custom attribute that implements and use it to mark service classes that are to be modified. When a object is constructed, WCF uses reflection to discover the attributes on the service type. If any attributes implement , they are added to the behaviors collection on . + +- Extend the class to support the specification of the behavior in an application or machine configuration file. See the Example section for more information. + + Examples of service behaviors in WCF include the attribute, the , the and the behavior. + + + +## Examples + The following code example shows the use of a service behavior specified in a configuration file to insert a custom error handler in a service application. In this example, the error handler catches all exceptions and converts them into a custom `GreetingFault` SOAP fault that is then returned to the client. + + The following implementation adds no binding parameter objects, adds the custom object to each property, and validates that each operation of the service to which the service behavior is applied and has a of type `GreetingFault`. + [!code-csharp[IErrorHandler#7](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/ierrorhandler.cs#7)] - [!code-vb[IErrorHandler#7](~/snippets/visualbasic/VS_Snippets_CFX/ierrorhandler/vb/ierrorhandler.vb#7)] - - In this example, the behavior class also implements , which enables the service behavior to be inserted by using it in an application configuration file, as the following code example demonstrates. - - [!code-xml[IErrorHandler#4](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/hostapplication.exe.config#4)] - + [!code-vb[IErrorHandler#7](~/snippets/visualbasic/VS_Snippets_CFX/ierrorhandler/vb/ierrorhandler.vb#7)] + + In this example, the behavior class also implements , which enables the service behavior to be inserted by using it in an application configuration file, as the following code example demonstrates. + + [!code-xml[IErrorHandler#4](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/hostapplication.exe.config#4)] + ]]> @@ -87,16 +87,16 @@ Custom objects to which binding elements have access. Provides the ability to pass custom data to binding elements to support the contract implementation. - method to add custom data objects to the `parameters` collection that binding elements can use to acquire extra information to enable them to support the contract. - - This method is called once for each listen URI. For example, if a service has four endpoints, and two of them have the same listen URI, then this method gets called three times. The reason is that the `bindingParameters` target each channel stack and there is one channel stack for each listen URI. Because each call receives those endpoints at that listen URI, two calls each get a single , and one call gets a collection of two objects. - + method to add custom data objects to the `parameters` collection that binding elements can use to acquire extra information to enable them to support the contract. + + This method is called once for each listen URI. For example, if a service has four endpoints, and two of them have the same listen URI, then this method gets called three times. The reason is that the `bindingParameters` target each channel stack and there is one channel stack for each listen URI. Because each call receives those endpoints at that listen URI, two calls each get a single , and one call gets a collection of two objects. + > [!NOTE] -> All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined. - +> All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined. + ]]> @@ -126,28 +126,28 @@ The host that is currently being built. Provides the ability to change run-time property values or insert custom extension objects such as error handlers, message or parameter interceptors, security extensions, and other custom extension objects. - method to inspect or modify the object that is being constructed in order to support some custom execution scenario. - + method to inspect or modify the object that is being constructed in order to support some custom execution scenario. + > [!NOTE] -> All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined. - - - -## Examples - The following code example shows the use of a service behavior specified in a configuration file to insert a custom error handler in a service application. In this example, the error handler catches all exceptions and converts them into a custom `GreetingFault` SOAP fault that is then returned to the client. - - The following implementation adds no binding parameter objects, adds the custom object to each property, and validates that each operation of the service to which the service behavior is applied and has a of type `GreetingFault`. - +> All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined. + + + +## Examples + The following code example shows the use of a service behavior specified in a configuration file to insert a custom error handler in a service application. In this example, the error handler catches all exceptions and converts them into a custom `GreetingFault` SOAP fault that is then returned to the client. + + The following implementation adds no binding parameter objects, adds the custom object to each property, and validates that each operation of the service to which the service behavior is applied and has a of type `GreetingFault`. + [!code-csharp[IErrorHandler#7](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/ierrorhandler.cs#7)] - [!code-vb[IErrorHandler#7](~/snippets/visualbasic/VS_Snippets_CFX/ierrorhandler/vb/ierrorhandler.vb#7)] - - In this example, the behavior class also implements , which enables the service behavior to be inserted by using it in an application configuration file, as the following code example demonstrates. - - [!code-xml[IErrorHandler#4](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/hostapplication.exe.config#4)] - + [!code-vb[IErrorHandler#7](~/snippets/visualbasic/VS_Snippets_CFX/ierrorhandler/vb/ierrorhandler.vb#7)] + + In this example, the behavior class also implements , which enables the service behavior to be inserted by using it in an application configuration file, as the following code example demonstrates. + + [!code-xml[IErrorHandler#4](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/hostapplication.exe.config#4)] + ]]> @@ -177,28 +177,28 @@ The service host that is currently being constructed. Provides the ability to inspect the service host and the service description to confirm that the service can run successfully. - method to confirm whether the current service can execute properly according to your scenario. - + method to confirm whether the current service can execute properly according to your scenario. + > [!NOTE] -> All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined. - - - -## Examples - The following code example shows the use of a service behavior specified in a configuration file to insert a custom error handler in a service application. In this example, the error handler catches all exceptions and converts them into a custom `GreetingFault` SOAP fault that is then returned to the client. - - The following implementation adds no binding parameter objects, adds the custom object to each property, and validates that each operation of the service to which the service behavior is applied and has a of type `GreetingFault`. - +> All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined. + + + +## Examples + The following code example shows the use of a service behavior specified in a configuration file to insert a custom error handler in a service application. In this example, the error handler catches all exceptions and converts them into a custom `GreetingFault` SOAP fault that is then returned to the client. + + The following implementation adds no binding parameter objects, adds the custom object to each property, and validates that each operation of the service to which the service behavior is applied and has a of type `GreetingFault`. + [!code-csharp[IErrorHandler#7](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/ierrorhandler.cs#7)] - [!code-vb[IErrorHandler#7](~/snippets/visualbasic/VS_Snippets_CFX/ierrorhandler/vb/ierrorhandler.vb#7)] - - In this example, the behavior class also implements , which enables the service behavior to be inserted by using it in an application configuration file, as the following code example demonstrates. - - [!code-xml[IErrorHandler#4](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/hostapplication.exe.config#4)] - + [!code-vb[IErrorHandler#7](~/snippets/visualbasic/VS_Snippets_CFX/ierrorhandler/vb/ierrorhandler.vb#7)] + + In this example, the behavior class also implements , which enables the service behavior to be inserted by using it in an application configuration file, as the following code example demonstrates. + + [!code-xml[IErrorHandler#4](~/snippets/csharp/VS_Snippets_CFX/ierrorhandler/cs/hostapplication.exe.config#4)] + ]]> diff --git a/xml/System.ServiceModel.Description/ListenUriMode.xml b/xml/System.ServiceModel.Description/ListenUriMode.xml index b606d54c5d3..2257a8b59d2 100644 --- a/xml/System.ServiceModel.Description/ListenUriMode.xml +++ b/xml/System.ServiceModel.Description/ListenUriMode.xml @@ -27,21 +27,21 @@ Indicates whether the transport must ensure that the URI provided for the service to listen on is unique or can be used exactly as provided. - property and the value of the for that endpoint is set using the property. The default value for is . The default value for is Explicit. - - The value of these properties may also be set using the property and the property. - - When the value of the is set to Unique the transport is responsible for creating a unique URI. Different transports used by Windows Communication Foundation (WCF) generate this unique URI differently - -- For TCP in exclusive mode ( is `false`) this means binding to a uniquely available port number. - -- For TCP in port sharing mode ( is `true`) and for all of the other existing WCF transports, this means appending a unique path (a GUID) to the end of the . - - When the value of the is set to Explicit mode, the transport uses the exactly as it is provided, without modifying it to make it unique. - + property and the value of the for that endpoint is set using the property. The default value for is . The default value for is Explicit. + + The value of these properties may also be set using the property and the property. + + When the value of the is set to Unique the transport is responsible for creating a unique URI. Different transports used by Windows Communication Foundation (WCF) generate this unique URI differently + +- For TCP in exclusive mode ( is `false`) this means binding to a uniquely available port number. + +- For TCP in port sharing mode ( is `true`) and for all of the other existing WCF transports, this means appending a unique path (a GUID) to the end of the . + + When the value of the is set to Explicit mode, the transport uses the exactly as it is provided, without modifying it to make it unique. + ]]> diff --git a/xml/System.ServiceModel.Description/MetadataExchangeClient.xml b/xml/System.ServiceModel.Description/MetadataExchangeClient.xml index af230a1a0b9..5b798fba247 100644 --- a/xml/System.ServiceModel.Description/MetadataExchangeClient.xml +++ b/xml/System.ServiceModel.Description/MetadataExchangeClient.xml @@ -17,42 +17,42 @@ Downloads service metadata. - to download metadata. Typically, a is configured for a metadata request and then passed to the or method for the to use to download metadata. - - However, you can use the directly to retrieve metadata as a that contains objects. - - Whether used directly or passed to a , has the following members to control the metadata download process: - -- Use the constructors to customize the binding to use when making the metadata request. - -- Use the property to specify the credentials used to make an HTTP/GET request. - -- Use the property to specify the credentials used to make a WS-Transfer metadata request. - -- Use the property to limit the number of metadata references the resolves. - -- Use the property to limit the time spent retrieving metadata. - -- Use the property to specify whether to locate and retrieve other metadata documents referred to by the metadata downloaded from the original metadata endpoint. - -- Use the methods to begin the downloading process. - - In addition, you can create a derived class that can override the following two protected methods: - -- Override the method to modify the channel that makes a metadata request using WS-Transfer. - -- Override the method to modify the that makes a metadata request using HTTP/GET. - - - -## Examples - The following code example shows the use of to specify a download binding, resolve any contained references to metadata, and download the metadata. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: - + to download metadata. Typically, a is configured for a metadata request and then passed to the or method for the to use to download metadata. + + However, you can use the directly to retrieve metadata as a that contains objects. + + Whether used directly or passed to a , has the following members to control the metadata download process: + +- Use the constructors to customize the binding to use when making the metadata request. + +- Use the property to specify the credentials used to make an HTTP/GET request. + +- Use the property to specify the credentials used to make a WS-Transfer metadata request. + +- Use the property to limit the number of metadata references the resolves. + +- Use the property to limit the time spent retrieving metadata. + +- Use the property to specify whether to locate and retrieve other metadata documents referred to by the metadata downloaded from the original metadata endpoint. + +- Use the methods to begin the downloading process. + + In addition, you can create a derived class that can override the following two protected methods: + +- Override the method to modify the channel that makes a metadata request using WS-Transfer. + +- Override the method to modify the that makes a metadata request using HTTP/GET. + + + +## Examples + The following code example shows the use of to specify a download binding, resolve any contained references to metadata, and download the metadata. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: + ]]> @@ -65,18 +65,18 @@ Initializes a new instance of the class. - ()| -|https| ()| -|net.tcp| with a | -|net.pipe| with a | - + ()| +|https| ()| +|net.tcp| with a | +|net.pipe| with a | + ]]> @@ -119,18 +119,18 @@ The binding to use when retrieving metadata using WS-Transfer. Initializes a new instance of the class using the specified binding. - to specify a download binding, resolve any contained references to metadata, and download the metadata. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: - + to specify a download binding, resolve any contained references to metadata, and download the metadata. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: + ]]> @@ -155,11 +155,11 @@ The metadata address. Initializes a new instance of the class. - @@ -184,11 +184,11 @@ The name of the endpoint configuration information to use when downloading metadata. Initializes a new instance of the class. - @@ -215,18 +215,18 @@ The mode to use when downloading the metadata. Initializes a new instance of the class. - . - - - -## Examples - The following code example shows the use of to specify a download binding, resolve any contained references to metadata, and download the metadata. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: - + . + + + +## Examples + The following code example shows the use of to specify a download binding, resolve any contained references to metadata, and download the metadata. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: + ]]> @@ -239,11 +239,11 @@ Begins an asynchronous method call that returns a . - methods. - + methods. + ]]> @@ -274,11 +274,11 @@ Begins an asynchronous method call that returns a . The metadata. - method. - + method. + ]]> @@ -311,11 +311,11 @@ Begins an asynchronous method call that returns a using the specified address, callback, and asynchronous state. The metadata obtained from the specified . - method. - + method. + ]]> @@ -350,11 +350,11 @@ Begins an asynchronous method call that returns a using the specified address, callback, asynchronous state, and download mechanism. The metadata obtained from the specified . - method. - + method. + ]]> @@ -383,11 +383,11 @@ Ends an asynchronous method call that returns a . The that contains the downloaded metadata. - methods to return the downloaded metadata. - + methods to return the downloaded metadata. + ]]> @@ -420,11 +420,11 @@ When overridden in a derived class, returns the channel factory that is used to make the WS-Transfer metadata request. A of type that makes the WS-Transfer metadata request. - . - + . + ]]> @@ -459,13 +459,13 @@ Returns a . The that contains the downloaded metadata. - to specify a download binding, resolve any contained references to metadata, and download the metadata. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: - + to specify a download binding, resolve any contained references to metadata, and download the metadata. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/metadataresolver/cs/client.cs" id="Snippet3"::: + ]]> @@ -549,11 +549,11 @@ Returns a from the specified address using the specified download mode. The metadata that is downloaded. - @@ -696,15 +696,15 @@ When overridden in a derived class, returns the used to make HTTP/GET metadata requests. The internal used to make HTTP GET metadata requests. - method is called: - -- When there is an attempt to resolve a . - -- When is used. - + method is called: + +- When there is an attempt to resolve a . + +- When is used. + ]]> @@ -739,11 +739,11 @@ Gets or sets the credentials used to make an HTTP/GET request. The object used to establish the request credentials. - property to customize the security credentials that the uses when requesting metadata using HTTP/GET. - + property to customize the security credentials that the uses when requesting metadata using HTTP/GET. + ]]> @@ -774,11 +774,11 @@ Gets or sets the maximum number of references to metadata that the downloads. The number of metadata references the resolves. The default is 10. - property to limit the resources accessed by metadata that contains a large number of references. This limit applies to any reference in the metadata that results in a subsequent request, including metadata references, metadata locations, WSDL imports, and XML Schema imports and includes. - + property to limit the resources accessed by metadata that contains a large number of references. This limit applies to any reference in the metadata that results in a subsequent request, including metadata references, metadata locations, WSDL imports, and XML Schema imports and includes. + ]]> @@ -809,11 +809,11 @@ Gets or sets the period of time within which the metadata must be downloaded before an exception is thrown. The period within which the metadata must be downloaded; the default is 1 minute. - property to limit the amount of time the takes before ending the operation. - + property to limit the amount of time the takes before ending the operation. + ]]> @@ -849,11 +849,11 @@ if references to metadata are resolved; otherwise, . The default is . - property to `false` to prevent the resolution of references to metadata. In this case, references are returned as or objects inside the . - + property to `false` to prevent the resolution of references to metadata. In this case, references are returned as or objects inside the . + ]]> @@ -878,11 +878,11 @@ Gets or sets the client security credentials used to make a WS-Transfer metadata request. The client security credentials used to make a WS-Transfer metadata request. - property to specify the security credentials the uses when making a WS-Transfer metadata request. - + property to specify the security credentials the uses when making a WS-Transfer metadata request. + ]]> diff --git a/xml/System.ServiceModel.Description/PolicyConversionContext.xml b/xml/System.ServiceModel.Description/PolicyConversionContext.xml index d0b248819a6..7b9961311d0 100644 --- a/xml/System.ServiceModel.Description/PolicyConversionContext.xml +++ b/xml/System.ServiceModel.Description/PolicyConversionContext.xml @@ -17,38 +17,38 @@ Defines a class used to retrieve binding assertions in metadata and to attach implementing binding elements at the appropriate scope. - is passed to and objects to export and import, respectively, custom policy assertions to and from metadata. On export, a collection of policy assertions are retrieved in order to add custom assertions. On import, the assertions are retrieved in order to import specific ones and configure binding elements appropriately. - -- The method returns all policy assertions that are for the binding. - -- The method returns all policy assertions for a specific fault message. - -- The method returns all policy assertions for a specific message. - -- The method returns all policy assertions for a specific operation. - -- The property gets the binding elements for the binding being described or configured. - -- The property gets the contract description for which the binding is being described or configured. - - - -## Examples - The following code example shows an implementation of the method that writes all policy assertions to the console. The code comments describe how to locate a specific custom policy assertion, create and insert an implementing binding element, and remove the assertion from the collection. - - [!code-csharp[S_UEPolicyConversionContext#0](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#0)] - - The following code example shows how to register implementations using the `` configuration section. - - [!code-xml[S_UEPolicyConversionContext#100](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/common/app.config#100)] - - The following code example demonstrates how a custom binding element can implement to attach a custom policy assertion to the binding assertions. - - [!code-csharp[S_UEPolicyConversionContext#1](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#1)] - + is passed to and objects to export and import, respectively, custom policy assertions to and from metadata. On export, a collection of policy assertions are retrieved in order to add custom assertions. On import, the assertions are retrieved in order to import specific ones and configure binding elements appropriately. + +- The method returns all policy assertions that are for the binding. + +- The method returns all policy assertions for a specific fault message. + +- The method returns all policy assertions for a specific message. + +- The method returns all policy assertions for a specific operation. + +- The property gets the binding elements for the binding being described or configured. + +- The property gets the contract description for which the binding is being described or configured. + + + +## Examples + The following code example shows an implementation of the method that writes all policy assertions to the console. The code comments describe how to locate a specific custom policy assertion, create and insert an implementing binding element, and remove the assertion from the collection. + + [!code-csharp[S_UEPolicyConversionContext#0](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#0)] + + The following code example shows how to register implementations using the `` configuration section. + + [!code-xml[S_UEPolicyConversionContext#100](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/common/app.config#100)] + + The following code example demonstrates how a custom binding element can implement to attach a custom policy assertion to the binding assertions. + + [!code-csharp[S_UEPolicyConversionContext#1](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#1)] + ]]> @@ -146,26 +146,26 @@ Gets a collection of policy assertions from metadata. An of type that contains binding policy assertions. - is not a copy. You can add and remove assertions as necessary. - - - -## Examples - The following code example shows an implementation of the method that writes all policy assertions to the console. The code comments describe how to locate a specific custom policy assertion, create and insert an implementing binding element, and remove the assertion from the collection. - - [!code-csharp[S_UEPolicyConversionContext#0](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#0)] - - The following code example shows how to register implementations using the `` configuration section. - - [!code-xml[S_UEPolicyConversionContext#100](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/common/app.config#100)] - - The following code example demonstrates how a custom binding element can implement to attach a custom policy assertion to the binding assertions. - - [!code-csharp[S_UEPolicyConversionContext#1](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#1)] - + is not a copy. You can add and remove assertions as necessary. + + + +## Examples + The following code example shows an implementation of the method that writes all policy assertions to the console. The code comments describe how to locate a specific custom policy assertion, create and insert an implementing binding element, and remove the assertion from the collection. + + [!code-csharp[S_UEPolicyConversionContext#0](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#0)] + + The following code example shows how to register implementations using the `` configuration section. + + [!code-xml[S_UEPolicyConversionContext#100](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/common/app.config#100)] + + The following code example demonstrates how a custom binding element can implement to attach a custom policy assertion to the binding assertions. + + [!code-csharp[S_UEPolicyConversionContext#1](~/snippets/csharp/VS_Snippets_CFX/s_uepolicyconversioncontext/cs/program.cs#1)] + ]]> @@ -194,11 +194,11 @@ Returns a collection of policy assertions for the specified SOAP fault. A collection of policy assertions for the specified SOAP fault. - is not a copy. You can add and remove assertions as necessary. - + is not a copy. You can add and remove assertions as necessary. + ]]> @@ -227,11 +227,11 @@ Gets a collection of policy assertions for a message. A collection of policy assertions for the specified message. - is not a copy. You can add and remove assertions as needed. - + is not a copy. You can add and remove assertions as needed. + ]]> @@ -260,11 +260,11 @@ Returns a collection of policy assertions for the specified operation. The policy assertions for the operation. - is not a copy. You can add and remove assertions as necessary. - + is not a copy. You can add and remove assertions as necessary. + ]]> diff --git a/xml/System.ServiceModel.Description/ServiceCredentials.xml b/xml/System.ServiceModel.Description/ServiceCredentials.xml index 3c667e017dd..208df658ca2 100644 --- a/xml/System.ServiceModel.Description/ServiceCredentials.xml +++ b/xml/System.ServiceModel.Description/ServiceCredentials.xml @@ -21,19 +21,19 @@ Configures a service credential. Use this class to specify the credential for the service such as an X.509 certificate. Also, use this class to specify the authentication model for various client credentials such as user name and password validation. - method, by methods of the , and is returned by the property. - - - -## Examples - The following code shows how to override this class to implement custom service credentials. - + method, by methods of the , and is returned by the property. + + + +## Examples + The following code shows how to override this class to implement custom service credentials. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/c_customcredentials/cs/source.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_customcredentials/vb/service/service.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_customcredentials/vb/service/service.vb" id="Snippet4"::: + ]]> @@ -113,19 +113,19 @@ Gets the current client certificate authentication and provisioning settings for this service. An instance. - property. In the mutual certificate duplex scenario, you can specify an X.509 certificate to use in a response or callback using the property. - - - -## Examples - The following code shows how to access this property and use it to set additional properties. - + property. In the mutual certificate duplex scenario, you can specify an X.509 certificate to use in a response or callback using the property. + + + +## Examples + The following code shows how to access this property and use it to set additional properties. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/c_customcertificatevalidator/cs/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_customcertificatevalidator/vb/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_customcertificatevalidator/vb/source.vb" id="Snippet1"::: + ]]> @@ -151,14 +151,14 @@ Creates a copy of the current instance. A instance. - @@ -184,11 +184,11 @@ Copies the essential members of the current instance. A instance. - method calls the constructor. - + method calls the constructor. + ]]> @@ -284,14 +284,14 @@ Gets the current issued token (for example, SAML) authentication settings for this service. An instance. - @@ -350,19 +350,19 @@ Gets the current settings to be used by a secure conversation. A instance. - @@ -393,28 +393,28 @@ Gets the current certificate associated with this service. An instance. - object returned by this property. - - You can also set this value using the [<certificate>](/dotnet/framework/configure-apps/file-schema/wcf/certificate-for-identity) element in a client application configuration file. - - - -## Examples - This code shows how to specify the certificate that a service uses. - - A class is created, followed by a single complex code statement that does the following: - -- property is used to access an instance of . - -- The instance then invokes . - -- The property returns a object, on which the method is then called. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ueservicecredentials/cs/program.cs" id="Snippet4"::: - + object returned by this property. + + You can also set this value using the [<certificate>](/dotnet/framework/configure-apps/file-schema/wcf/certificate-for-identity) element in a client application configuration file. + + + +## Examples + This code shows how to specify the certificate that a service uses. + + A class is created, followed by a single complex code statement that does the following: + +- property is used to access an instance of . + +- The instance then invokes . + +- The property returns a object, on which the method is then called. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ueservicecredentials/cs/program.cs" id="Snippet4"::: + ]]> @@ -451,11 +451,11 @@ A collection of parameters. Adds this instance to a binding parameter collection. This is an infrastructure method and not intended to be called directly. - @@ -490,11 +490,11 @@ The service host base. Apply the dispatch behavior. This is an infrastructure method and not intended to be called directly. - @@ -527,11 +527,11 @@ The service host base. Validates a service description. This is an infrastructure method and not intended to be called directly. - @@ -584,19 +584,19 @@ Gets the current user name/password authentication settings for this service. A instance. - class on this instance, such as and . - - - -## Examples - The following code shows how to use this property to get the instance of the credential used by the service. - + class on this instance, such as and . + + + +## Examples + The following code shows how to use this property to get the instance of the credential used by the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/usernamepasswordservicecredential/cs/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/usernamepasswordservicecredential/vb/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/usernamepasswordservicecredential/vb/source.vb" id="Snippet1"::: + ]]> @@ -627,19 +627,19 @@ Gets the current Windows authentication settings for this service. A instance. - property. Also, use this class to specify whether to include a group information to which users belong in the by setting the property. - - - -## Examples - The following code shows how to use this property to get the instance of the credential used by the service. - + property. Also, use this class to specify whether to include a group information to which users belong in the by setting the property. + + + +## Examples + The following code shows how to use this property to get the instance of the credential used by the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uewindowsservicecredential/cs/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uewindowsservicecredential/vb/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uewindowsservicecredential/vb/source.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.ServiceModel.Description/ServiceDebugBehavior.xml b/xml/System.ServiceModel.Description/ServiceDebugBehavior.xml index 05e73a3748c..f26561d2287 100644 --- a/xml/System.ServiceModel.Description/ServiceDebugBehavior.xml +++ b/xml/System.ServiceModel.Description/ServiceDebugBehavior.xml @@ -21,51 +21,51 @@ Enables debugging and help information features for a Windows Communication Foundation (WCF) service. - properties from a configuration file or programmatically to enable the flow of managed exception information to the client for debugging purposes as well as the publication of HTML information files for users browsing the service in Web browsers. - - Set the property to `true` to instruct WCF to return managed exception information in SOAP faults to clients for debugging purposes. - + properties from a configuration file or programmatically to enable the flow of managed exception information to the client for debugging purposes as well as the publication of HTML information files for users browsing the service in Web browsers. + + Set the property to `true` to instruct WCF to return managed exception information in SOAP faults to clients for debugging purposes. + > [!CAUTION] -> Returning managed exception information to clients can be a security risk because exception details expose information about the internal service implementation that could be used by unauthorized clients. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. - - Because of the security issues involved, it is strongly recommended that: - -- You use an application configuration file to set the value of the property to `true`. - -- You only do so only in controlled debugging scenarios. - - For more information about the security issues related to managed exception information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). - - The and properties instruct the service to publish HTML help files when the service is viewed using an HTML browser. - - The and properties control the location of the HTML help page that is viewed. - - To enable or disable one of the features using a configuration file: - -1. Add a `behaviorConfiguration` attribute to the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element for your WCF service. Endpoint behaviors are configured on [\](https://msdn.microsoft.com/library/13aa23b7-2f08-4add-8dbf-a99f8127c017) elements; service behaviors on [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) elements. - -2. Add to or create a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section and add a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element to that with the name that matches the `behaviorConfiguration` attribute value from step 1. Endpoint behaviors are configured using an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) element; service behaviors are configured using a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) element. - -3. Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element to the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element from step 2 and enable or disable the various properties appropriate to your scenario. - - For a specific example, see the Example section. - - - -## Examples - The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes, in addition to enabling metadata support. This configuration file shows the following basic steps to adding support for the features: - -- Because the type is an implementation, the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element that represents the service type has a behavior configuration identifier of `behaviorConfiguration="metadataAndDebug"`. - -- Because the type is an implementation a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element is added to a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section. Set the `name` attribute of the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element the value of which is the identifier of the `behaviorConfiguration` attribute of the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element. In this case, the value is `metadataAndDebug`. - -- Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element with the various attributes set to the desired configuration. In this case, the `httpHelpPageEnabled` and `includeExceptionDetailInFaults` attribute values are set to `true`. - - [!code-xml[ServiceDebugBehaviorConfig#1](~/snippets/csharp/VS_Snippets_CFX/servicedebugbehaviorconfig/cs/hostapplication.exe.config#1)] - +> Returning managed exception information to clients can be a security risk because exception details expose information about the internal service implementation that could be used by unauthorized clients. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. + + Because of the security issues involved, it is strongly recommended that: + +- You use an application configuration file to set the value of the property to `true`. + +- You only do so only in controlled debugging scenarios. + + For more information about the security issues related to managed exception information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). + + The and properties instruct the service to publish HTML help files when the service is viewed using an HTML browser. + + The and properties control the location of the HTML help page that is viewed. + + To enable or disable one of the features using a configuration file: + +1. Add a `behaviorConfiguration` attribute to the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element for your WCF service. Endpoint behaviors are configured on [\](https://msdn.microsoft.com/library/13aa23b7-2f08-4add-8dbf-a99f8127c017) elements; service behaviors on [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) elements. + +2. Add to or create a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section and add a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element to that with the name that matches the `behaviorConfiguration` attribute value from step 1. Endpoint behaviors are configured using an [<endpointBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/endpointbehaviors) element; service behaviors are configured using a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) element. + +3. Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element to the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element from step 2 and enable or disable the various properties appropriate to your scenario. + + For a specific example, see the Example section. + + + +## Examples + The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes, in addition to enabling metadata support. This configuration file shows the following basic steps to adding support for the features: + +- Because the type is an implementation, the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element that represents the service type has a behavior configuration identifier of `behaviorConfiguration="metadataAndDebug"`. + +- Because the type is an implementation a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element is added to a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section. Set the `name` attribute of the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element the value of which is the identifier of the `behaviorConfiguration` attribute of the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element. In this case, the value is `metadataAndDebug`. + +- Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element with the various attributes set to the desired configuration. In this case, the `httpHelpPageEnabled` and `includeExceptionDetailInFaults` attribute values are set to `true`. + + [!code-xml[ServiceDebugBehaviorConfig#1](~/snippets/csharp/VS_Snippets_CFX/servicedebugbehaviorconfig/cs/hostapplication.exe.config#1)] + ]]> @@ -86,21 +86,21 @@ Initializes a new instance of the class. - object with the following defaults: - -- The property is `false`. - -- The property is `true`. - -- The property is `true`. - -- The property is the base address of the service that supports HTTP requests. - -- The is the base address of the service that supports HTTPS requests. - + object with the following defaults: + +- The property is `false`. + +- The property is `true`. + +- The property is `true`. + +- The property is the base address of the service that supports HTTP requests. + +- The is the base address of the service that supports HTTPS requests. + ]]> @@ -168,32 +168,32 @@ if WCF publishes an HTML help page; otherwise, . The default is . - property to `false` to disable the publication of an HTML help page visible to HTML browsers. - - To ensure the HTML help page is published at the location controlled by the property, you must set this property to `true` and then one of the following conditions must also be true: - -- The property is an absolute address that supports the HTTP protocol scheme. - -- There is a base address for the service that supports the HTTP protocol scheme. - - Although an exception is thrown if an absolute address that does not support the HTTP protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. - - - -## Examples - The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes. This configuration file shows the following basic steps to adding support for the features: - -- Because the type is a implementation, the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element that represents the service type has a behavior configuration identifier of `behaviorConfiguration="metadataAndDebug"`. - -- Again, because the type is an implementation a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element is added to a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section. The `name` attribute of the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element the value of which is the identifier of the `behaviorConfiguration` attribute of the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element. In this case, the value is `metadataAndDebug`. - -- Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element with the various attributes set to the desired configuration. In this case, the `httpHelpPageEnabled` and `includeExceptionDetailInFaults` attribute values are set to `true`. - + property to `false` to disable the publication of an HTML help page visible to HTML browsers. + + To ensure the HTML help page is published at the location controlled by the property, you must set this property to `true` and then one of the following conditions must also be true: + +- The property is an absolute address that supports the HTTP protocol scheme. + +- There is a base address for the service that supports the HTTP protocol scheme. + + Although an exception is thrown if an absolute address that does not support the HTTP protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. + + + +## Examples + The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes. This configuration file shows the following basic steps to adding support for the features: + +- Because the type is a implementation, the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element that represents the service type has a behavior configuration identifier of `behaviorConfiguration="metadataAndDebug"`. + +- Again, because the type is an implementation a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element is added to a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section. The `name` attribute of the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element the value of which is the identifier of the `behaviorConfiguration` attribute of the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element. In this case, the value is `metadataAndDebug`. + +- Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element with the various attributes set to the desired configuration. In this case, the `httpHelpPageEnabled` and `includeExceptionDetailInFaults` attribute values are set to `true`. + [!code-xml[ServiceDebugBehaviorConfig#1](~/snippets/csharp/VS_Snippets_CFX/servicedebugbehaviorconfig/cs/hostapplication.exe.config#1)] - + ]]> @@ -232,19 +232,19 @@ Gets or sets the location at which the HTML help file is published. The relative or absolute HTTP-based URL of the custom HTML help file that the user sees when the endpoint is viewed using an HTML browser. - property to enable the use of a custom HTML help file that is returned from an HTTP/Get request such as that of an HTML browser. The location of the HTML help file is resolved as follows: - -- If the value of this property is a relative address, then the location of the HTML help file is the value of the service base address that supports HTTP requests plus this property value. - -- If the value of this property is an absolute address and supports HTTP requests, then the location of the HTML help file is the value of this property. - -- If the value of this property is absolute but does not support HTTP requests, an exception is thrown. - - This property is applied only in the case that the property is `true`. - + property to enable the use of a custom HTML help file that is returned from an HTTP/Get request such as that of an HTML browser. The location of the HTML help file is resolved as follows: + +- If the value of this property is a relative address, then the location of the HTML help file is the value of the service base address that supports HTTP requests plus this property value. + +- If the value of this property is an absolute address and supports HTTP requests, then the location of the HTML help file is the value of this property. + +- If the value of this property is absolute but does not support HTTP requests, an exception is thrown. + + This property is applied only in the case that the property is `true`. + ]]> @@ -312,19 +312,19 @@ if an HTML help file is returned to clients making an HTTPS/GET request such as that of an HTML browser; otherwise, . The default is . - property to `false` to disable the publication of an HTML help page visible to HTML browsers. - - To ensure the HTML help page is published at the location controlled by the property, you must set this property to `true` and then one of the following conditions must also be true: - -- The property is an absolute address that supports the HTTPS protocol scheme. - -- There is a base address for the service that supports the HTTPS protocol scheme. - - Although an exception is thrown if an absolute address that does not support the HTTPS protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. - + property to `false` to disable the publication of an HTML help page visible to HTML browsers. + + To ensure the HTML help page is published at the location controlled by the property, you must set this property to `true` and then one of the following conditions must also be true: + +- The property is an absolute address that supports the HTTPS protocol scheme. + +- There is a base address for the service that supports the HTTPS protocol scheme. + + Although an exception is thrown if an absolute address that does not support the HTTPS protocol scheme is assigned to the property, any other scenario in which neither of the preceding criteria is met results in no exception and no HTML help page. + ]]> @@ -363,21 +363,21 @@ Gets or sets the location at which an HTML file is published for retrieval using HTTPS. The relative or absolute HTTPS-based URL of the custom HTML help file that the user sees when the endpoint is viewed using an HTML browser. - property to enable the use of a custom HTML help file that is returned from an HTTPS/Get request such as that of an HTML browser. - - The location of the HTML help file is resolved as follows: - -- If the value of this property is a relative address, then the location of the HTML help file is the value of the service base address that supports HTTPS requests plus this property value. - -- If the value of this property is an absolute address and supports HTTPS requests, then the location of the HTML help file is the value of this property. - -- If the value of this property is absolute but does not support HTTPS requests, an exception is thrown. - - This property is applied only in the case that the property is `true`. - + property to enable the use of a custom HTML help file that is returned from an HTTPS/Get request such as that of an HTML browser. + + The location of the HTML help file is resolved as follows: + +- If the value of this property is a relative address, then the location of the HTML help file is the value of the service base address that supports HTTPS requests plus this property value. + +- If the value of this property is an absolute address and supports HTTPS requests, then the location of the HTML help file is the value of this property. + +- If the value of this property is absolute but does not support HTTPS requests, an exception is thrown. + + This property is applied only in the case that the property is `true`. + ]]> @@ -417,35 +417,35 @@ if Windows Communication Foundation (WCF) returns managed exception information in the SOAP faults for client debugging purposes; otherwise, . The default is . - property to `true` to instruct WCF to return managed exception information to the client in SOAP faults to ease debugging. - + property to `true` to instruct WCF to return managed exception information to the client in SOAP faults to ease debugging. + > [!CAUTION] -> Returning managed exception information to clients can be a security risk because exception details expose information about the internal service implementation that could be used by unauthorized clients. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. - - Because of the security issues involved, it is strongly recommended that: - -- You use an application configuration file to set the value of the property to `true`. - -- You only do so only in controlled debugging scenarios. - - For more information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). - - - -## Examples - The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes. This configuration file shows the following basic steps to adding support for the features: - -- Because the type is an implementation, the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element that represents the service type has a behavior configuration identifier of `behaviorConfiguration="metadataAndDebug"`. - -- Again, because the type is an implementation a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element is added to a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section. Set the `name` attribute of the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element the value of which is the identifier of the `behaviorConfiguration` attribute of the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element. In this case, the value is `metadataAndDebug`. - -- Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element with the various attributes set to the desired configuration. In this case, the `httpHelpPageEnabled` and `includeExceptionDetailInFaults` attribute values are set to `true`. - - [!code-xml[ServiceDebugBehaviorConfig#1](~/snippets/csharp/VS_Snippets_CFX/servicedebugbehaviorconfig/cs/hostapplication.exe.config#1)] - +> Returning managed exception information to clients can be a security risk because exception details expose information about the internal service implementation that could be used by unauthorized clients. In addition, although the properties can also be set programmatically, it can be easy to forget to disable when deploying. + + Because of the security issues involved, it is strongly recommended that: + +- You use an application configuration file to set the value of the property to `true`. + +- You only do so only in controlled debugging scenarios. + + For more information, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). + + + +## Examples + The following code example shows how to use a configuration file to enable the HTML help page feature and return exception information inside a SOAP fault back to the client for debugging purposes. This configuration file shows the following basic steps to adding support for the features: + +- Because the type is an implementation, the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element that represents the service type has a behavior configuration identifier of `behaviorConfiguration="metadataAndDebug"`. + +- Again, because the type is an implementation a [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element is added to a [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) section. Set the `name` attribute of the [<behavior>](/dotnet/framework/configure-apps/file-schema/wcf/behavior-of-endpointbehaviors) element the value of which is the identifier of the `behaviorConfiguration` attribute of the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element. In this case, the value is `metadataAndDebug`. + +- Add a [<serviceDebug>](/dotnet/framework/configure-apps/file-schema/wcf/servicedebug) element with the various attributes set to the desired configuration. In this case, the `httpHelpPageEnabled` and `includeExceptionDetailInFaults` attribute values are set to `true`. + + [!code-xml[ServiceDebugBehaviorConfig#1](~/snippets/csharp/VS_Snippets_CFX/servicedebugbehaviorconfig/cs/hostapplication.exe.config#1)] + ]]> @@ -482,11 +482,11 @@ The binding parameters that support modifying the bindings. Implements the method to support the behavior. - method. - + method. + ]]> diff --git a/xml/System.ServiceModel.Description/ServiceMetadataBehavior.xml b/xml/System.ServiceModel.Description/ServiceMetadataBehavior.xml index e089df33eb4..aabc9fc17c7 100644 --- a/xml/System.ServiceModel.Description/ServiceMetadataBehavior.xml +++ b/xml/System.ServiceModel.Description/ServiceMetadataBehavior.xml @@ -21,38 +21,38 @@ Controls the publication of service metadata and associated information. - object to the collection (or the [<serviceMetadata>](/dotnet/framework/configure-apps/file-schema/wcf/servicemetadata) element in an application configuration file) to enable or disable the publication of service metadata. However, adding the behavior to a service is not sufficient to enable metadata publication: - -- To enable WS-Transfer GET metadata retrieval, you must also add an endpoint to your service in which the contract is `IMetadataExchange`. For an example, see [How to: Publish Metadata for a Service Using Code](/dotnet/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-code). The `IMetadataExchange` endpoint can be configured as can any other endpoint. - -- To enable HTTP GET metadata retrieval, set the property to `true`. For more information about the address of HTTP GET metadata, see . - - The address of the `IMetadataExchange` endpoint follows the normal rules regarding the combination of base addresses and endpoint addresses. For more information, see [Publishing Metadata](/dotnet/framework/wcf/feature-details/publishing-metadata). - - To enable the publication of metadata using a configuration file, add the [<serviceMetadata>](/dotnet/framework/configure-apps/file-schema/wcf/servicemetadata) element to the [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) element and associate the element with the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element for which you want to publish metadata. For an example, see [How to: Publish Metadata for a Service Using a Configuration File](/dotnet/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-a-configuration-file). The class has the following members: - -- The property specifies whether metadata is returned for HTTP/GET requests. - -- The property (in conjunction with the base addresses) specifies the HTTP/GET address. - -- The property specifies whether metadata is returned for an HTTPS/GET request. - -- The property (in conjunction with the base addresses) specifies the HTTPS/GET address. - -- The property returns the underlying exporter. - - Typically the is used from an application configuration file. See the Example section for a code example. - - - -## Examples - The following code example demonstrates the use of in a configuration file to enable metadata support for HTTP GET and WS-Transfer GET requests. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicemetadatabehavior/cs/hostapplication.cs" id="Snippet1"::: - + object to the collection (or the [<serviceMetadata>](/dotnet/framework/configure-apps/file-schema/wcf/servicemetadata) element in an application configuration file) to enable or disable the publication of service metadata. However, adding the behavior to a service is not sufficient to enable metadata publication: + +- To enable WS-Transfer GET metadata retrieval, you must also add an endpoint to your service in which the contract is `IMetadataExchange`. For an example, see [How to: Publish Metadata for a Service Using Code](/dotnet/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-code). The `IMetadataExchange` endpoint can be configured as can any other endpoint. + +- To enable HTTP GET metadata retrieval, set the property to `true`. For more information about the address of HTTP GET metadata, see . + + The address of the `IMetadataExchange` endpoint follows the normal rules regarding the combination of base addresses and endpoint addresses. For more information, see [Publishing Metadata](/dotnet/framework/wcf/feature-details/publishing-metadata). + + To enable the publication of metadata using a configuration file, add the [<serviceMetadata>](/dotnet/framework/configure-apps/file-schema/wcf/servicemetadata) element to the [<serviceBehaviors>](/dotnet/framework/configure-apps/file-schema/wcf/servicebehaviors) element and associate the element with the [<service>](/dotnet/framework/configure-apps/file-schema/wcf/service) element for which you want to publish metadata. For an example, see [How to: Publish Metadata for a Service Using a Configuration File](/dotnet/framework/wcf/feature-details/how-to-publish-metadata-for-a-service-using-a-configuration-file). The class has the following members: + +- The property specifies whether metadata is returned for HTTP/GET requests. + +- The property (in conjunction with the base addresses) specifies the HTTP/GET address. + +- The property specifies whether metadata is returned for an HTTPS/GET request. + +- The property (in conjunction with the base addresses) specifies the HTTPS/GET address. + +- The property returns the underlying exporter. + + Typically the is used from an application configuration file. See the Example section for a code example. + + + +## Examples + The following code example demonstrates the use of in a configuration file to enable metadata support for HTTP GET and WS-Transfer GET requests. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicemetadatabehavior/cs/hostapplication.cs" id="Snippet1"::: + ]]> @@ -79,15 +79,15 @@ Initializes a new instance of the class. - with the following values: - -- The property is `false`. - -- The property is `false`. - + with the following values: + +- The property is `false`. + +- The property is `false`. + ]]> @@ -122,11 +122,11 @@ Gets or sets a value that is the location of service metadata. The location of the service metadata. - property can be relative or absolute. If relative, the address is resolved by the client relative to the or , depending on how the client retrieved the metadata. - + property can be relative or absolute. If relative, the address is resolved by the client relative to the or , depending on how the client retrieved the metadata. + ]]> The value is absolute and the schema is neither http nor https. @@ -158,13 +158,13 @@ Gets or sets a binding used to configure metadata retrieval when the transport is HTTP. A that can be used to retrieve metadata over the HTTP protocol. - was supported. For metadata retrieval using HTTPS GET, only the was supported. The HttpGetBinding and HttpsGetBinding properties enable the usage of bindings for metadata retrieval using HTTP GET (or HTTPS GET) and the bindings used to access service web pages to be configurable, either programmatically or through configuration files. - - For more information about retrieving help pages, use the and properties. - + was supported. For metadata retrieval using HTTPS GET, only the was supported. The HttpGetBinding and HttpsGetBinding properties enable the usage of bindings for metadata retrieval using HTTP GET (or HTTPS GET) and the bindings used to access service web pages to be configurable, either programmatically or through configuration files. + + For more information about retrieving help pages, use the and properties. + ]]> @@ -200,24 +200,24 @@ if the WSDL is published; otherwise, . The default is . - is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. - - If the value of is absolute the address at which the metadata is published is the value of value plus a `?wsdl` querystring. - - For example, if the service address is `http://localhost:8080/CalculatorService` and the is an empty string, the HTTP/GET metadata address is `http://localhost:8080/CalculatorService?wsdl`. - - If you do not enable this property and do not change or set it to a relative address, an exception is thrown at runtime when the service host is opened without a base address for HTTP. - - - -## Examples - The following code example demonstrates the use of in a configuration file to enable metadata support for HTTP/GET and WS-Transfer/GET requests. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicemetadatabehavior/cs/hostapplication.cs" id="Snippet1"::: - + is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. + + If the value of is absolute the address at which the metadata is published is the value of value plus a `?wsdl` querystring. + + For example, if the service address is `http://localhost:8080/CalculatorService` and the is an empty string, the HTTP/GET metadata address is `http://localhost:8080/CalculatorService?wsdl`. + + If you do not enable this property and do not change or set it to a relative address, an exception is thrown at runtime when the service host is opened without a base address for HTTP. + + + +## Examples + The following code example demonstrates the use of in a configuration file to enable metadata support for HTTP/GET and WS-Transfer/GET requests. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicemetadatabehavior/cs/hostapplication.cs" id="Snippet1"::: + ]]> @@ -252,22 +252,22 @@ Gets or sets the location of metadata publication for HTTP/GET requests. The absolute or relative location of the metadata. - is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. - - If the value of is absolute the address at which the metadata is published is this value plus a `?wsdl` querystring. - - For example, if the service address is `http://localhost:8080/CalculatorService` and the is an empty string, the HTTP/GET metadata address is `http://localhost:8080/CalculatorService?wsdl`. - - - -## Examples - The following code example demonstrates the use of in a configuration file to enable metadata support for HTTP/GET and WS-Transfer/GET requests. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicemetadatabehavior/cs/hostapplication.cs" id="Snippet1"::: - + is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. + + If the value of is absolute the address at which the metadata is published is this value plus a `?wsdl` querystring. + + For example, if the service address is `http://localhost:8080/CalculatorService` and the is an empty string, the HTTP/GET metadata address is `http://localhost:8080/CalculatorService?wsdl`. + + + +## Examples + The following code example demonstrates the use of in a configuration file to enable metadata support for HTTP/GET and WS-Transfer/GET requests. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicemetadatabehavior/cs/hostapplication.cs" id="Snippet1"::: + ]]> @@ -298,13 +298,13 @@ Gets or sets a binding used to configure metadata retrieval when the transport is HTTPS. A that can be used to retrieve metadata over the HTTPS protocol. - was supported. For metadata retrieval using HTTPS GET, only the was supported. The HttpGetBinding and HttpsGetBinding properties enable the usage of bindings for metadata retrieval using HTTP GET (or HTTPS GET) and the bindings used to access service web pages to be configurable, either programmatically or through configuration files. - - For more information about retrieving help pages, use the and properties. - + was supported. For metadata retrieval using HTTPS GET, only the was supported. The HttpGetBinding and HttpsGetBinding properties enable the usage of bindings for metadata retrieval using HTTP GET (or HTTPS GET) and the bindings used to access service web pages to be configurable, either programmatically or through configuration files. + + For more information about retrieving help pages, use the and properties. + ]]> @@ -340,15 +340,15 @@ if the WSDL is published; otherwise, . The default is . - is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. - - If the value of is absolute the address at which the metadata is published is the value of value plus a `?wsdl` querystring. - - For example, if the service address is `https://localhost:8080/CalculatorService` and the is an empty string, the HTTPS/GET metadata address is `https://localhost:8080/CalculatorService?wsdl`. - + is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. + + If the value of is absolute the address at which the metadata is published is the value of value plus a `?wsdl` querystring. + + For example, if the service address is `https://localhost:8080/CalculatorService` and the is an empty string, the HTTPS/GET metadata address is `https://localhost:8080/CalculatorService?wsdl`. + ]]> @@ -383,15 +383,15 @@ Gets or sets the location of metadata publication for HTTPS/GET requests. The address of HTTPS metadata. - is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. - - If the value of is absolute the address at which the metadata is published is the value of value plus a `?wsdl` querystring. - - For example, if the service address is `https://localhost:8080/CalculatorService` and the is an empty string, the HTTPS/GET metadata address is `https://localhost:8080/CalculatorService?wsdl`. - + is relative, the address at which the metadata is published is the base address and the service address plus a `?wsdl` querystring. + + If the value of is absolute the address at which the metadata is published is the value of value plus a `?wsdl` querystring. + + For example, if the service address is `https://localhost:8080/CalculatorService` and the is an empty string, the HTTPS/GET metadata address is `https://localhost:8080/CalculatorService?wsdl`. + ]]> @@ -422,11 +422,11 @@ Gets or sets the internal object used to publish the service metadata. The internal object. - object to modify the publication of the service metadata. - + object to modify the publication of the service metadata. + ]]> diff --git a/xml/System.ServiceModel.Description/WebHttpBehavior.xml b/xml/System.ServiceModel.Description/WebHttpBehavior.xml index 0329ab28c52..5e1166190c2 100644 --- a/xml/System.ServiceModel.Description/WebHttpBehavior.xml +++ b/xml/System.ServiceModel.Description/WebHttpBehavior.xml @@ -22,11 +22,11 @@ Enables the Web programming model for a Windows Communication Foundation (WCF) service. - behavior, when used in conjunction with the binding, enables WCF to expose and access Web style services. automatically adds this behavior to endpoints that use the . - + behavior, when used in conjunction with the binding, enables WCF to expose and access Web style services. automatically adds this behavior to endpoints that use the . + ]]> @@ -161,11 +161,11 @@ The client to which the custom behavior is applied. Implements the method to support modification or extension of the client across an endpoint. - and are called for each operation to determine the to install. - + and are called for each operation to determine the to install. + ]]> @@ -198,11 +198,11 @@ The endpoint dispatcher to which the behavior is applied. Implements the method to support modification or extension of the client across an endpoint. - and are called for each operation to determine the to install. - + and are called for each operation to determine the to install. + ]]> @@ -227,11 +227,11 @@ if automatic format selection is enabled; otherwise . - @@ -256,11 +256,11 @@ Gets or sets the default message body style. One of the values defined in the enumeration. - or does not explicitly set the property, the value of this property is used as the body style for the operation. The default value is . - + or does not explicitly set the property, the value of this property is used as the body style for the operation. The default value is . + ]]> @@ -285,11 +285,11 @@ Gets or sets the default outgoing request format. One of the values defined in the enumeration. - or does not explicitly set the `OutgoingRequestFormat` property, the value of this property is used as the request format for the operation. The default value is . - + or does not explicitly set the `OutgoingRequestFormat` property, the value of this property is used as the request format for the operation. The default value is . + ]]> @@ -314,11 +314,11 @@ Gets or sets the default outgoing response format. One of the values defined in the enumeration. - or does not explicitly set the `OutgoingResponseFormat` property, the value of this property is used as the response format for the operation. The default value is . - + or does not explicitly set the `OutgoingResponseFormat` property, the value of this property is used as the response format for the operation. The default value is . + ]]> @@ -368,11 +368,11 @@ Creates a new object. An instance of that contains the operation selector for the specified endpoint. - maps calls to WCF service operations based on the Uniform Resource Identifier (URI) suffix and the HTTP method used. This is an extensibility point that derived behaviors can use to supply their own implementation of that maps the incoming HTTP request to a service operation. - + maps calls to WCF service operations based on the Uniform Resource Identifier (URI) suffix and the HTTP method used. This is an extensibility point that derived behaviors can use to supply their own implementation of that maps the incoming HTTP request to a service operation. + ]]> @@ -401,11 +401,11 @@ Gets the query string converter. A instance. - that can convert the service operation parameter types to and from the HTTP request URL's query string. - + that can convert the service operation parameter types to and from the HTTP request URL's query string. + ]]> @@ -436,11 +436,11 @@ Gets the reply formatter on the client for the specified endpoint and service operation. An reference to the reply formatter on the client for the specified operation and endpoint. - that is called to deserialize the response message into the out parameters/return value of the service operation. - + that is called to deserialize the response message into the out parameters/return value of the service operation. + ]]> @@ -471,11 +471,11 @@ Gets the reply formatter on the service for the specified endpoint and service operation. An reference to the reply formatter on the service for the specified operation and endpoint. - that is called to convert the return value/out parameters of the service operation to a response message. - + that is called to convert the return value/out parameters of the service operation to a response message. + ]]> @@ -506,11 +506,11 @@ Gets the request formatter on the client for the specified service operation and endpoint. An reference to the request formatter on the client for the specified operation and endpoint. - that is called to convert the input parameters of the service operation call to a request message. Parameters specified in the of the service operation must be serialized to the `To` URI of the request message and other parameters must be serialized to the body of the request message. - + that is called to convert the input parameters of the service operation call to a request message. Parameters specified in the of the service operation must be serialized to the `To` URI of the request message and other parameters must be serialized to the body of the request message. + ]]> @@ -541,11 +541,11 @@ Gets the request formatter on the service for the given service operation and service endpoint. An reference to the request formatter on the service for the specified operation and endpoint. - that is called to deserialize the input parameters of the service operation from the request message. Parameters specified in the of the service operation must be deserialized from the `To` URI of the request message and other parameters must be deserialized from the body of the request message. - + that is called to deserialize the input parameters of the service operation from the request message. Parameters specified in the of the service operation must be deserialized from the `To` URI of the request message and other parameters must be deserialized from the body of the request message. + ]]> @@ -570,36 +570,36 @@ if the WCFHelp page is enabled; otherwise . - - - - - - - - - -``` - - To programmatically enable the HelpEnabled property: - -``` - -WebHttpBehavior helpBehavior = new WebHttpBehavior(); -helpBehavior.HelpEnabled = true; -host.Description.Endpoints[0].Behaviors.Add(helpBehavior); - -``` - + + + + + + + + + +``` + + To programmatically enable the HelpEnabled property: + +``` + +WebHttpBehavior helpBehavior = new WebHttpBehavior(); +helpBehavior.HelpEnabled = true; +host.Description.Endpoints[0].Behaviors.Add(helpBehavior); + +``` + ]]> @@ -651,23 +651,23 @@ host.Description.Endpoints[0].Behaviors.Add(helpBehavior); The service endpoint. Confirms that the endpoint meets the requirements for the Web programming model. - of the binding is set to . - -- The binding contains an where is set to `true`. - -- The parameters specified in the must be part of the operation. - -- Operations that specify have, at most, one input parameter and can have no out parameters. - + of the binding is set to . + +- The binding contains an where is set to `true`. + +- The parameters specified in the must be part of the operation. + +- Operations that specify have, at most, one input parameter and can have no out parameters. + ]]> diff --git a/xml/System.ServiceModel.Description/WebScriptEnablingBehavior.xml b/xml/System.ServiceModel.Description/WebScriptEnablingBehavior.xml index 89a9ef99d5e..c38a0d82da5 100644 --- a/xml/System.ServiceModel.Description/WebScriptEnablingBehavior.xml +++ b/xml/System.ServiceModel.Description/WebScriptEnablingBehavior.xml @@ -17,23 +17,23 @@ Provides support for the behavior that enables Windows Communication Foundation (WCF) endpoints to receive HTTP requests from a browser-based ASP.NET AJAX client. This class cannot be inherited. - behavior enables WCF and ASP.NET AJAX integration, except for the support required for JavaScript Object Notation (JSON) encoding. Various types of encoding, including JSON, are enabled by the or by an appropriately configured . The behavior implements the and inherits from , which enables the more general Web programming model for WCF services exposing non-SOAP endpoints. - - Specifically, the : - -- Enables the HTTP programming model, including dispatch to operations based on a URL suffix, support for HTTP verb selection (POST or GET) and HTTP cache duration control. For more information about the HTTP programming model, see [WCF Web HTTP Programming Model Overview](/dotnet/framework/wcf/feature-details/wcf-web-http-programming-model-overview). Note that the default HTTP verb is POST when using this behavior. - -- Enables the correct formatter for each operation's request and response messages - for example, support for URL parameters. - -- Enables the JavaScript Proxy endpoint. - - To call a WCF service from an ASP.NET AJAX client, the service must be configured with the binding and the must be added to the endpoint behavior collection. This can be done either in configuration by adding the or without using configuration by activating the AJAX endpoint with the instead of the default factory in the [@ServiceHost](/dotnet/framework/configure-apps/file-schema/wcf-directive/servicehost) directive in the .svc file. - - For more information about different ways to enable a WCF service to respond to ASP.NET AJAX clients, see [Creating WCF Services for ASP.NET AJAX](/dotnet/framework/wcf/feature-details/creating-wcf-services-for-aspnet-ajax). - + behavior enables WCF and ASP.NET AJAX integration, except for the support required for JavaScript Object Notation (JSON) encoding. Various types of encoding, including JSON, are enabled by the or by an appropriately configured . The behavior implements the and inherits from , which enables the more general Web programming model for WCF services exposing non-SOAP endpoints. + + Specifically, the : + +- Enables the HTTP programming model, including dispatch to operations based on a URL suffix, support for HTTP verb selection (POST or GET) and HTTP cache duration control. For more information about the HTTP programming model, see [WCF Web HTTP Programming Model Overview](/dotnet/framework/wcf/feature-details/wcf-web-http-programming-model-overview). Note that the default HTTP verb is POST when using this behavior. + +- Enables the correct formatter for each operation's request and response messages - for example, support for URL parameters. + +- Enables the JavaScript Proxy endpoint. + + To call a WCF service from an ASP.NET AJAX client, the service must be configured with the binding and the must be added to the endpoint behavior collection. This can be done either in configuration by adding the or without using configuration by activating the AJAX endpoint with the instead of the default factory in the [@ServiceHost](/dotnet/framework/configure-apps/file-schema/wcf-directive/servicehost) directive in the .svc file. + + For more information about different ways to enable a WCF service to respond to ASP.NET AJAX clients, see [Creating WCF Services for ASP.NET AJAX](/dotnet/framework/wcf/feature-details/creating-wcf-services-for-aspnet-ajax). + ]]> @@ -54,13 +54,13 @@ Initializes a new instance of the class. - to the value. - - Sets the and the to the value. - + to the value. + + Sets the and the to the value. + ]]> @@ -144,11 +144,11 @@ The to which the custom behavior is applied. Applies the behavior to the client across an endpoint. - method to view, modify, or add custom extension to the client runtime across all messages used with an endpoint or for specific operations. - + method to view, modify, or add custom extension to the client runtime across all messages used with an endpoint or for specific operations. + ]]> @@ -178,11 +178,11 @@ The to which the custom behavior is applied. Applies the behavior to the service endpoint. - @@ -207,11 +207,11 @@ if automatic format selection is enabled; otherwise . - @@ -236,11 +236,11 @@ Gets or sets the default message body style. The value. This default value is the only valid value. - value is the only supported and setting any other value results in a being thrown. - + value is the only supported and setting any other value results in a being thrown. + ]]> The body style set is not supported. @@ -359,11 +359,11 @@ if the WCF REST Help page is enabled; otherwise . - @@ -391,11 +391,11 @@ The that exposes the contract. Confirms that the endpoint meets the requirements that allow it to function as an ASP.NET AJAX endpoint. - , uses either the HTTP GET or POST verb, that the of the binding is set to , and that the binding contains a where is set to `true`. This method also checks that there are no SOAP headers or wrapper names on the methods, or other unsupported aspects of the operations. - + , uses either the HTTP GET or POST verb, that the of the binding is set to , and that the binding contains a where is set to `true`. This method also checks that there are no SOAP headers or wrapper names on the methods, or other unsupported aspects of the operations. + ]]> The endpoint does not meet one of the requirements for being an ASP.NET AJAX endpoint. diff --git a/xml/System.ServiceModel.Description/WsdlEndpointConversionContext.xml b/xml/System.ServiceModel.Description/WsdlEndpointConversionContext.xml index a4aa9bf3a44..4be21aed7af 100644 --- a/xml/System.ServiceModel.Description/WsdlEndpointConversionContext.xml +++ b/xml/System.ServiceModel.Description/WsdlEndpointConversionContext.xml @@ -17,35 +17,35 @@ Passed to custom WSDL exporters and importers to enable customization of the metadata export and import processes for a WSDL endpoint. - class represents the context in which the custom WSDL for an endpoint is either exported using or imported using . - -The following properties enable you to retrieve the WSDL document object model for the current WSDL: - -- The property gets the for the endpoint contract. - -- The property gets the for the current endpoint. - -- The property gets the binding for the current endpoint. - -- The property gets the port for the current endpoint. - -The following methods enable you to add or remove custom WSDL elements to the appropriate scopes in the exported or imported WSDL: - -- The method returns the fault binding for the specified fault. - -- The method returns the fault for the specified fault binding. - -- The method returns the message binding for the specified message. - -- The method returns the message for the specified message binding. - -- The method returns the operation binding for the specified operation. - -- The method returns the operation for the specified operation binding. - + class represents the context in which the custom WSDL for an endpoint is either exported using or imported using . + +The following properties enable you to retrieve the WSDL document object model for the current WSDL: + +- The property gets the for the endpoint contract. + +- The property gets the for the current endpoint. + +- The property gets the binding for the current endpoint. + +- The property gets the port for the current endpoint. + +The following methods enable you to add or remove custom WSDL elements to the appropriate scopes in the exported or imported WSDL: + +- The method returns the fault binding for the specified fault. + +- The method returns the fault for the specified fault binding. + +- The method returns the message binding for the specified message. + +- The method returns the message for the specified message binding. + +- The method returns the operation binding for the specified operation. + +- The method returns the operation for the specified operation binding. + ]]> @@ -76,11 +76,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Gets the being exported or imported. The being exported or imported. - to obtain the conversion context of the contract for the endpoint. - + to obtain the conversion context of the contract for the endpoint. + ]]> @@ -111,11 +111,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Gets the being exported or imported. The being exported or imported. - property to obtain the service endpoint description on export or import. - + property to obtain the service endpoint description on export or import. + ]]> @@ -144,11 +144,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Gets the WSDL binding associated with the fault. The WSDL associated with the fault. - method. - + method. + ]]> @@ -177,11 +177,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Gets the description for the fault associated with the WSDL fault binding. The for the fault associated with the WSDL binding. - method. - + method. + ]]> @@ -210,11 +210,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Gets the WSDL binding for the message specified by the description. The for the message specified by the description. - method. - + method. + ]]> @@ -243,11 +243,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Gets the message description for the message specified by the WSDL binding. The for the message specified by the binding. - method. - + method. + ]]> @@ -276,11 +276,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Gets the WSDL binding for the operation specified by the description. The for the operation specified by the description. - method. - + method. + ]]> @@ -309,11 +309,11 @@ The following methods enable you to add or remove custom WSDL elements to the ap Returns the operation description of the operation associated with the WSDL binding. The of the operation associated with the binding. - method. - + method. + ]]> diff --git a/xml/System.ServiceModel.Dispatcher/ClientOperation.xml b/xml/System.ServiceModel.Dispatcher/ClientOperation.xml index 3676e72b685..c9c601db517 100644 --- a/xml/System.ServiceModel.Dispatcher/ClientOperation.xml +++ b/xml/System.ServiceModel.Dispatcher/ClientOperation.xml @@ -51,51 +51,51 @@ Used to modify or extend the execution behavior of a specific contract operation in a client object or client channel object. This class cannot be inherited. - class is the location for client run-time modifications and insertion point for custom extensions that are scoped to only one service operation. (To modify client run-time behavior for all messages in a contract, use the class. ) - - Install modifications using a custom client behavior object, either of type (to find a particular operation to modify) or of type (which can then be applied by creating a custom attribute). - - Use the property to locate the object that represents a particular service operation. - - For more information about clients and the client architecture, see [Accessing Services Using a WCF Client](/dotnet/framework/wcf/feature-details/accessing-services-using-a-client) and [WCF Client Architecture](/dotnet/framework/wcf/feature-details/client-architecture). For more information about customizing the client runtime, see [Extending Clients](/dotnet/framework/wcf/extending/extending-clients). For more information about using behaviors, see [Configuring and Extending the Runtime with Behaviors](/dotnet/framework/wcf/extending/configuring-and-extending-the-runtime-with-behaviors). - - The following properties enable you to insert custom objects or modify the client execution behavior: - -- Use the property to insert a custom implementation for an operation or modify the current formatter. - -- Use the property to insert a custom implementation or to modify the current one. - -- Use the property to control who serializes an outbound message. - -- Use the property to control who deserializes an inbound message. - -- Use the property to access the WS-Addressing action of the request message and the property to access the response message action. - -- Use the and to specify which client methods are associated with an asynchronous operation. - -- Use the property to get a collection of specified types that can appear in SOAP faults as the detail type. - -- Use the and properties to control whether a session is initiated or is torn down, respectively, when the operation is called. - -- Use the property to control whether the client waits for a response before completing the invocation. - -- Use the property to obtain the containing object. - -- Use the property to get the name of the operation. - -- Use the property to control which method is mapped to the operation. - - - -## Examples - The following code example shows an inserting a custom parameter inspector into each in the property. - + class is the location for client run-time modifications and insertion point for custom extensions that are scoped to only one service operation. (To modify client run-time behavior for all messages in a contract, use the class. ) + + Install modifications using a custom client behavior object, either of type (to find a particular operation to modify) or of type (which can then be applied by creating a custom attribute). + + Use the property to locate the object that represents a particular service operation. + + For more information about clients and the client architecture, see [Accessing Services Using a WCF Client](/dotnet/framework/wcf/feature-details/accessing-services-using-a-client) and [WCF Client Architecture](/dotnet/framework/wcf/feature-details/client-architecture). For more information about customizing the client runtime, see [Extending Clients](/dotnet/framework/wcf/extending/extending-clients). For more information about using behaviors, see [Configuring and Extending the Runtime with Behaviors](/dotnet/framework/wcf/extending/configuring-and-extending-the-runtime-with-behaviors). + + The following properties enable you to insert custom objects or modify the client execution behavior: + +- Use the property to insert a custom implementation for an operation or modify the current formatter. + +- Use the property to insert a custom implementation or to modify the current one. + +- Use the property to control who serializes an outbound message. + +- Use the property to control who deserializes an inbound message. + +- Use the property to access the WS-Addressing action of the request message and the property to access the response message action. + +- Use the and to specify which client methods are associated with an asynchronous operation. + +- Use the property to get a collection of specified types that can appear in SOAP faults as the detail type. + +- Use the and properties to control whether a session is initiated or is torn down, respectively, when the operation is called. + +- Use the property to control whether the client waits for a response before completing the invocation. + +- Use the property to obtain the containing object. + +- Use the property to get the name of the operation. + +- Use the property to control which method is mapped to the operation. + + + +## Examples + The following code example shows an inserting a custom parameter inspector into each in the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet2"::: + ]]> @@ -232,11 +232,11 @@ Gets the action of the operation. The action of the operation. - . - + . + ]]> @@ -309,11 +309,11 @@ Gets a collection of parameter inspector objects used to view or modify parameters prior to or subsequent to a client call. A collection of parameter inspector objects used to view or modify parameters prior to or subsequent to a client call. - @@ -357,13 +357,13 @@ if the return type is not a ; otherwise, . - property to control whether the formatter deserializes the return value from an inbound message or whether the inbound message is returned directly as the return value. - -- **Note** If `false`, the return type must be of type and there can be no out parameters or an is thrown at run-time. If the message is `null`, a is thrown at run-time. - + property to control whether the formatter deserializes the return value from an inbound message or whether the inbound message is returned directly as the return value. + +- **Note** If `false`, the return type must be of type and there can be no out parameters or an is thrown at run-time. If the message is `null`, a is thrown at run-time. + ]]> @@ -440,11 +440,11 @@ Gets a collection of objects that represent the specified SOAP faults for this operation. A collection of SOAP faults specified for this operation. - property to get a collection of all contractually specified SOAP faults. - + property to get a collection of all contractually specified SOAP faults. + ]]> @@ -487,13 +487,13 @@ Gets or sets the formatter that serializes objects into messages and deserializes messages into objects. An implementation. - property to insert a custom implementation for an operation or modify the current formatter. The use of the formatter can be controlled by the and properties. - - The interface defines the and methods, which are used to convert a set of object parameters to a message and from a message to a set of return values, respectively. - + property to insert a custom implementation for an operation or modify the current formatter. The use of the formatter can be controlled by the and properties. + + The interface defines the and methods, which are used to convert a set of object parameters to a message and from a message to a set of return values, respectively. + ]]> @@ -533,11 +533,11 @@ if a message to this operation can initiate a session; otherwise, . - . - + . + ]]> @@ -581,11 +581,11 @@ if the indigo2 client should not expect a reply; otherwise, . The default value is . - . For issues related to one-way operations, see [One-Way Services](/dotnet/framework/wcf/feature-details/one-way-services). - + . For issues related to one-way operations, see [One-Way Services](/dotnet/framework/wcf/feature-details/one-way-services). + ]]> @@ -625,11 +625,11 @@ if the associated session is closed after the operation is invoked; otherwise, . - . - + . + ]]> @@ -672,11 +672,11 @@ Gets the name of the operation. The name of the operation. - . - + . + ]]> @@ -719,19 +719,19 @@ Gets or sets a collection of objects that can inspect and modify inbound and outbound objects for a particular client method. A collection of implementations. - property to insert a custom implementation or to modify the current one. Parameter inspectors are invoked in the order in which they are added to the collection for requests and in the reverse order for replies. - - - -## Examples - The following code example shows an inserting a custom parameter inspector into each in the property. - + property to insert a custom implementation or to modify the current one. Parameter inspectors are invoked in the order in which they are added to the collection for requests and in the reverse order for replies. + + + +## Examples + The following code example shows an inserting a custom parameter inspector into each in the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet2"::: + ]]> @@ -814,11 +814,11 @@ Gets the action of the reply message for this operation. The action of the reply. - . - + . + ]]> @@ -862,14 +862,14 @@ if the property serializes the return values into a reply message; otherwise, . The default is . - property to indicate whether the formatter serializes operation parameters into a reply message or to determine if the first parameter is sent as the outbound message. - + property to indicate whether the formatter serializes operation parameters into a reply message or to determine if the first parameter is sent as the outbound message. + > [!NOTE] -> If set to `false`, the operation must have exactly one parameter of type or an exception is thrown. - +> If set to `false`, the operation must have exactly one parameter of type or an exception is thrown. + ]]> diff --git a/xml/System.ServiceModel.Dispatcher/ClientRuntime.xml b/xml/System.ServiceModel.Dispatcher/ClientRuntime.xml index e78bbe96f5b..a226f86cbff 100644 --- a/xml/System.ServiceModel.Dispatcher/ClientRuntime.xml +++ b/xml/System.ServiceModel.Dispatcher/ClientRuntime.xml @@ -51,61 +51,61 @@ Represents the insertion point for classes that extend the functionality of Windows Communication Foundation (WCF) client objects for all messages handled by a client application. - or of , are used by Windows Communication Foundation (WCF) client applications to convert method calls into outbound messages and convert incoming messages to objects and pass them to the results of client methods. - - The class is an extensibility point to which you can add extension objects that intercept messages and extend client behavior across all operations. Interception objects can process all messages in a particular contract, process only messages for particular operations, perform custom channel initialization, and implement other custom client application behavior. For an overview of client architecture, see [WCF Client Architecture](/dotnet/framework/wcf/feature-details/client-architecture). For more information about client programming, see [Accessing Services Using a WCF Client](/dotnet/framework/wcf/feature-details/accessing-services-using-a-client). For details about customizations and how to perform them, see [Extending Clients](/dotnet/framework/wcf/extending/extending-clients). - -- The property returns the dispatch run-time object for service-initiated callback operations. - -- The property accepts a custom operation selector object to control the routing of client messages. - -- The property enables the addition of a channel initializer that can inspect or modify the client channel. - -- The property can be used to display a visual prompt to enable a user to select credentials prior to opening the channel. - -- The property gets a collection of objects to which you can add custom message interceptors that provide functionality specific to the messages of that operation. - -- The property enables an application to turn off some automatic addressing headers to directly control addressing. - -- The property enables the client to limit the size of fault messages that the client accepts. - -- The property gets a collection of objects to which you can add custom message interceptors for all messages traveling through a client. - -- The property returns the operation to which unexpected messages are passed. - -- The property informs the system whether it should confirm that SOAP headers marked as `MustUnderstand` have, in fact, been understood. - -- The property sets the value of the destination of the message at the transport level to support intermediaries and other scenarios. - - In addition, there are a number of other properties that retrieve the client contract information: - -- - -- - -- - - If the client is a duplex client, the following properties also retrieve the client callback type and runtime: - -- - -- - - - -## Examples - In the following code example an inserts a into the client runtime by adding it to the property. - + or of , are used by Windows Communication Foundation (WCF) client applications to convert method calls into outbound messages and convert incoming messages to objects and pass them to the results of client methods. + + The class is an extensibility point to which you can add extension objects that intercept messages and extend client behavior across all operations. Interception objects can process all messages in a particular contract, process only messages for particular operations, perform custom channel initialization, and implement other custom client application behavior. For an overview of client architecture, see [WCF Client Architecture](/dotnet/framework/wcf/feature-details/client-architecture). For more information about client programming, see [Accessing Services Using a WCF Client](/dotnet/framework/wcf/feature-details/accessing-services-using-a-client). For details about customizations and how to perform them, see [Extending Clients](/dotnet/framework/wcf/extending/extending-clients). + +- The property returns the dispatch run-time object for service-initiated callback operations. + +- The property accepts a custom operation selector object to control the routing of client messages. + +- The property enables the addition of a channel initializer that can inspect or modify the client channel. + +- The property can be used to display a visual prompt to enable a user to select credentials prior to opening the channel. + +- The property gets a collection of objects to which you can add custom message interceptors that provide functionality specific to the messages of that operation. + +- The property enables an application to turn off some automatic addressing headers to directly control addressing. + +- The property enables the client to limit the size of fault messages that the client accepts. + +- The property gets a collection of objects to which you can add custom message interceptors for all messages traveling through a client. + +- The property returns the operation to which unexpected messages are passed. + +- The property informs the system whether it should confirm that SOAP headers marked as `MustUnderstand` have, in fact, been understood. + +- The property sets the value of the destination of the message at the transport level to support intermediaries and other scenarios. + + In addition, there are a number of other properties that retrieve the client contract information: + +- + +- + +- + + If the client is a duplex client, the following properties also retrieve the client callback type and runtime: + +- + +- + + + +## Examples + In the following code example an inserts a into the client runtime by adding it to the property. + [!code-csharp[Interceptors#2](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs#2)] - [!code-vb[Interceptors#2](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#2)] - - The following code example shows a configuration file that loads the endpoint behavior into the client endpoint. - - [!code-xml[Interceptors#3](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/client.exe.config#3)] - + [!code-vb[Interceptors#2](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#2)] + + The following code example shows a configuration file that loads the endpoint behavior into the client endpoint. + + [!code-xml[Interceptors#3](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/client.exe.config#3)] + ]]> @@ -211,11 +211,11 @@ Gets a collection of channel initializer objects used to customize the channel associated with a client. A collection of implementations. - property to add a custom object that can inspect the channel that is associated with a client on creation, register for events on the channel, and associate state with the channel by using . - + property to add a custom object that can inspect the channel that is associated with a client on creation, register for events on the channel, and associate state with the channel by using . + ]]> @@ -251,11 +251,11 @@ Gets a collection of message inspector objects used to view or modify messages of a particular service operation. A collection of message inspector objects used to view or modify messages of a particular service operation. - @@ -291,11 +291,11 @@ Gets a collection of client operation objects used to attach extension objects that inspect or modify messages and behavior of a particular service operation. A collection of client operation objects used to attach extension objects that inspect or modify messages and behavior of a particular service operation. - @@ -455,19 +455,19 @@ Gets a collection of an interactive channel initializer. A synchronized collection of type . - @@ -505,14 +505,14 @@ if the client does not add any addressing headers; otherwise, . The default is . - property to `true` if you want to prevent the client from adding Message ID and Reply-To addressing headers to request/response messages so that your application can control these headers. - + property to `true` if you want to prevent the client from adding Message ID and Reply-To addressing headers to request/response messages so that your application can control these headers. + > [!NOTE] -> If is `true`, the client does not support request-reply operations over a duplex channel. - +> If is `true`, the client does not support request-reply operations over a duplex channel. + ]]> @@ -555,11 +555,11 @@ Gets or sets the maximum fault size. An integer representing the maximum fault size. - property to limit the size of fault messages accepted by the client runtime. - + property to limit the size of fault messages accepted by the client runtime. + ]]> @@ -602,23 +602,23 @@ Gets a collection of message inspector implementations for a client. A collection of implementations. - property to attach custom implementations to inspect or modify all messages that flow through the client. - - - -## Examples - In the following code example an inserts a into the client runtime by adding it to the property. - + property to attach custom implementations to inspect or modify all messages that flow through the client. + + + +## Examples + In the following code example an inserts a into the client runtime by adding it to the property. + [!code-csharp[Interceptors#2](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs#2)] - [!code-vb[Interceptors#2](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#2)] - - The following code example shows a configuration file that loads the endpoint behavior into the client endpoint. - - [!code-xml[Interceptors#3](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/client.exe.config#3)] - + [!code-vb[Interceptors#2](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#2)] + + The following code example shows a configuration file that loads the endpoint behavior into the client endpoint. + + [!code-xml[Interceptors#3](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/client.exe.config#3)] + ]]> @@ -697,19 +697,19 @@ Gets a collection of client operations for a client. A synchronized collection of objects. - property to get a collection of all client operations for this client that you can use to attach extension objects that inspect or modify messages and behavior scoped to a particular operation. For details, see . - - - -## Examples - In the following code example an inserts a into the client runtime by adding it to each in the property. - + property to get a collection of all client operations for this client that you can use to attach extension objects that inspect or modify messages and behavior scoped to a particular operation. For details, see . + + + +## Examples + In the following code example an inserts a into the client runtime by adding it to each in the property. + [!code-csharp[Interceptors#2](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs#2)] - [!code-vb[Interceptors#2](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#2)] - + [!code-vb[Interceptors#2](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#2)] + ]]> @@ -752,11 +752,11 @@ Gets or sets an implementation that can be used to select a . An object that selects a . - property to modify the selection of an operation when a client invokes a particular method. The default algorithm is to use the name of the of the operation method as a key to find the in the collection. If no matching object is found, the invocation is dispatched to the object returned from the property. - + property to modify the selection of an operation when a client invokes a particular method. The default algorithm is to use the name of the of the operation method as a key to find the in the collection. If no matching object is found, the invocation is dispatched to the object returned from the property. + ]]> @@ -830,11 +830,11 @@ if the system is to perform SOAP header processing; otherwise , which indicates that the application performs this processing. The default value is . - property to turn off the enforced validation of arriving message headers. In normal execution, message headers are compared against the property to confirm that arriving headers are explicitly handled by the service. Set this to `false` to disable this checking. When set to `false`, the application must check for headers marked with MustUnderstand="true" and return a fault if one or more of them were not understood. This is useful when the application is supposed to accept any returned SOAP messages (for example, when using typed or untyped messages) and perform custom header processing. - + property to turn off the enforced validation of arriving message headers. In normal execution, message headers are compared against the property to confirm that arriving headers are explicitly handled by the service. Set this to `false` to disable this checking. When set to `false`, the application must check for headers marked with MustUnderstand="true" and return a fault if one or more of them were not understood. This is useful when the application is supposed to accept any returned SOAP messages (for example, when using typed or untyped messages) and perform custom header processing. + ]]> @@ -877,13 +877,13 @@ Gets or sets the transport address that is used to send messages through the client. A that is the destination address for the transport. The default value is the value of the client. - property to specify a transport address for messages when the immediate destination of messages is not the client's . This enables you to specify SOAP intermediaries and handle scenarios in which the value of the property of the client is a logical name. - - It is this value that the sets from a configuration file. - + property to specify a transport address for messages when the immediate destination of messages is not the client's . This enables you to specify SOAP intermediaries and handle scenarios in which the value of the property of the client is a logical name. + + It is this value that the sets from a configuration file. + ]]> diff --git a/xml/System.ServiceModel.Dispatcher/DispatchOperation.xml b/xml/System.ServiceModel.Dispatcher/DispatchOperation.xml index 365f267ae49..da601b40c13 100644 --- a/xml/System.ServiceModel.Dispatcher/DispatchOperation.xml +++ b/xml/System.ServiceModel.Dispatcher/DispatchOperation.xml @@ -54,23 +54,23 @@ Use the property to locate the object that represents a particular service operation. -- The , , , , , and properties obtain the respective values for the operation. +- The , , , , , and properties obtain the respective values for the operation. -- The and properties specify transaction behavior. +- The and properties specify transaction behavior. -- The and properties control the lifetime of the user-defined service object relative to the . +- The and properties control the lifetime of the user-defined service object relative to the . -- The , , and the properties enable explicit control over the conversion from messages to objects and vice versa. +- The , , and the properties enable explicit control over the conversion from messages to objects and vice versa. -- The property specifies the operation impersonation level. +- The property specifies the operation impersonation level. -- The property inserts custom call context extensions for the operation. For more information, see . +- The property inserts custom call context extensions for the operation. For more information, see . -- The property controls whether parameter objects are disposed when the service operation is completed. +- The property controls whether parameter objects are disposed when the service operation is completed. -- The property to insert a custom invoker object. +- The property to insert a custom invoker object. -- The property enables you to insert a custom parameter inspector that you can use to inspect or modify parameters and return values. +- The property enables you to insert a custom parameter inspector that you can use to inspect or modify parameters and return values. ]]> diff --git a/xml/System.ServiceModel.Dispatcher/EndpointDispatcher.xml b/xml/System.ServiceModel.Dispatcher/EndpointDispatcher.xml index 5c36f77cd4b..e8579b2c94c 100644 --- a/xml/System.ServiceModel.Dispatcher/EndpointDispatcher.xml +++ b/xml/System.ServiceModel.Dispatcher/EndpointDispatcher.xml @@ -45,40 +45,40 @@ Represents the run-time object that exposes properties that enable the insertion of run-time extensions or modifications for messages in service applications. - and the classes expose the runtime customization points for endpoints in a service. The can be used to control which messages it can process and some endpoint-related information. The has a large number of properties used to insert custom extensions into the endpoint-wide runtime. - - The object is responsible for processing messages from a when the destination address of a message matches the property and the message action matches the property. If two objects can accept a message, the property value determines the higher priority endpoint. - - Use the object to configure or extend the process of receiving messages from the associated , converting from message objects to objects used as parameters, and invoking an endpoint operation as well as the reverse process. - - Typically, the for an endpoint is obtained by implementing the interface, but you can access the from the other behavior interfaces. - - You can use the following properties: - -- The property allows you to get or set a object that the uses to identify whether the endpoint can process a particular message. - -- The property gets the associated object, which sends and receives messages to and from the and which can be used to inspect or modify other channel-related values and behaviors. - -- The gets the object that is used to identify whether a message is destined for this contract. - -- The and properties return the name and namespace of the endpoint contract. - -- The property returns the object that you can use to modify run-time values or insert custom run-time extensions for the entire endpoint. - -- The property gets the address of the endpoint. - -- The property returns the priority of the composite filter that the uses to establish which endpoint is to handle the message. - - - -## Examples - The following code example shows the use of to locate the for the endpoint and inserts a custom message inspector using an endpoint behavior. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs" id="Snippet4"::: - + and the classes expose the runtime customization points for endpoints in a service. The can be used to control which messages it can process and some endpoint-related information. The has a large number of properties used to insert custom extensions into the endpoint-wide runtime. + + The object is responsible for processing messages from a when the destination address of a message matches the property and the message action matches the property. If two objects can accept a message, the property value determines the higher priority endpoint. + + Use the object to configure or extend the process of receiving messages from the associated , converting from message objects to objects used as parameters, and invoking an endpoint operation as well as the reverse process. + + Typically, the for an endpoint is obtained by implementing the interface, but you can access the from the other behavior interfaces. + + You can use the following properties: + +- The property allows you to get or set a object that the uses to identify whether the endpoint can process a particular message. + +- The property gets the associated object, which sends and receives messages to and from the and which can be used to inspect or modify other channel-related values and behaviors. + +- The gets the object that is used to identify whether a message is destined for this contract. + +- The and properties return the name and namespace of the endpoint contract. + +- The property returns the object that you can use to modify run-time values or insert custom run-time extensions for the entire endpoint. + +- The property gets the address of the endpoint. + +- The property returns the priority of the composite filter that the uses to establish which endpoint is to handle the message. + + + +## Examples + The following code example shows the use of to locate the for the endpoint and inserts a custom message inspector using an endpoint behavior. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs" id="Snippet4"::: + ]]> @@ -151,11 +151,11 @@ The namespace of the endpoint contract. Initializes a new instance of the class with the specified address, contract name, and contract namespace. - @@ -220,13 +220,13 @@ Gets or sets a object that is used to identify whether a particular message is destined for the endpoint address. The address filter used to route the message to the appropriate endpoint. - has an for each endpoint the channel can support. The property is a object that matches the destination endpoint address of the message. The combines the value with the value to determine whether to route a message to this endpoint. - - In the case where two objects that match can process a message, the property is used to select an endpoint. - + has an for each endpoint the channel can support. The property is a object that matches the destination endpoint address of the message. The combines the value with the value to determine whether to route a message to this endpoint. + + In the case where two objects that match can process a message, the property is used to select an endpoint. + ]]> @@ -265,11 +265,11 @@ Gets the associated object, which can be used to inspect or modify other channel-related values and behaviors. The channel dispatcher which can be used to inspect or modify other channel-related values and behaviors. - object receives a message from a channel and uses the , , and properties to determine by which endpoint the message is processed. - + object receives a message from a channel and uses the , , and properties to determine by which endpoint the message is processed. + ]]> @@ -303,13 +303,13 @@ Gets or sets the object that is used to identify whether a message is destined for this contract. The filter used to route messages to the appropriate contract. - property is a object that is matched against the action of a message. The combines the value with the value to determine whether to route a message to this endpoint. - - In the case where two objects that match can process a message, the property is used to select an endpoint. - + property is a object that is matched against the action of a message. The combines the value with the value to determine whether to route a message to this endpoint. + + In the case where two objects that match can process a message, the property is used to select an endpoint. + ]]> @@ -420,18 +420,18 @@ Gets the object used to inspect, modify, or extend run-time behavior across a service endpoint or a client callback endpoint. The object used to inspect, modify, or extend run-time behavior across a service endpoint or a client callback endpoint. - property to obtain the object to modify run-time values or insert custom run-time extensions for the entire endpoint. From the property, you can also navigate to the collection for the endpoint. - - - -## Examples - The following code example shows the use of to locate the for the endpoint and inserts a custom message inspector using an endpoint behavior. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs" id="Snippet4"::: - + property to obtain the object to modify run-time values or insert custom run-time extensions for the entire endpoint. From the property, you can also navigate to the collection for the endpoint. + + + +## Examples + The following code example shows the use of to locate the for the endpoint and inserts a custom message inspector using an endpoint behavior. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/iendpointbehavior/cs/iendpointbehaviormessageinspector.cs" id="Snippet4"::: + ]]> @@ -504,15 +504,15 @@ Gets or sets the priority of the and the combination when the is selecting endpoints. The priority of the filter. - combines the value with the value to determine whether to route a message to this endpoint. - - In the case where two objects that match can process a message, the property is used to select an endpoint. - - If two endpoints can process a message and the value of their property matches, a is thrown. - + combines the value with the value to determine whether to route a message to this endpoint. + + In the case where two objects that match can process a message, the property is used to select an endpoint. + + If two endpoints can process a message and the value of their property matches, a is thrown. + ]]> diff --git a/xml/System.ServiceModel.Dispatcher/IDispatchMessageInspector.xml b/xml/System.ServiceModel.Dispatcher/IDispatchMessageInspector.xml index 8a8ef269884..0a751812423 100644 --- a/xml/System.ServiceModel.Dispatcher/IDispatchMessageInspector.xml +++ b/xml/System.ServiceModel.Dispatcher/IDispatchMessageInspector.xml @@ -35,37 +35,37 @@ Defines the methods that enable custom inspection or modification of inbound and outbound application messages in service applications. - to inspect or modify inbound or outbound application messages either prior to dispatching a request message to an operation or before returning a reply message to a caller. There are a large number of scenarios that require intercepting messages prior to invoking the operation for which it is destined. For example, you can log incoming application messages or perform some feature based on a message header. - - Typically, message inspectors are inserted by a service behavior (), an endpoint behavior (), or a contract behavior (). The behavior then adds the message inspector to the collection. For more information about extending the runtime using behaviors, see [Extending ServiceHost and the Service Model Layer](/dotnet/framework/wcf/extending/extending-servicehost-and-the-service-model-layer). - -- The method enables custom behavior after receiving the message but before dispatching it to the intended operation. - -- The method enables custom behavior after the operation returns but before the reply is sent. - + to inspect or modify inbound or outbound application messages either prior to dispatching a request message to an operation or before returning a reply message to a caller. There are a large number of scenarios that require intercepting messages prior to invoking the operation for which it is destined. For example, you can log incoming application messages or perform some feature based on a message header. + + Typically, message inspectors are inserted by a service behavior (), an endpoint behavior (), or a contract behavior (). The behavior then adds the message inspector to the collection. For more information about extending the runtime using behaviors, see [Extending ServiceHost and the Service Model Layer](/dotnet/framework/wcf/extending/extending-servicehost-and-the-service-model-layer). + +- The method enables custom behavior after receiving the message but before dispatching it to the intended operation. + +- The method enables custom behavior after the operation returns but before the reply is sent. + > [!NOTE] -> objects are always called at the same point during message dispatch regardless of whether an operation is one-way or request-reply. - - - -## Examples - The following code example shows a basic that writes a string to the console when it is invoked. - +> objects are always called at the same point during message dispatch regardless of whether an operation is one-way or request-reply. + + + +## Examples + The following code example shows a basic that writes a string to the console when it is invoked. + [!code-csharp[Interceptors#7](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs#7)] - [!code-vb[Interceptors#7](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb#7)] - - The following code example shows the implementation of an that adds the `Inspector` to the collection. - + [!code-vb[Interceptors#7](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb#7)] + + The following code example shows the implementation of an that adds the `Inspector` to the collection. + [!code-csharp[Interceptors#8](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs#8)] - [!code-vb[Interceptors#8](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#8)] - - The following code example shows the use of an application configuration file to load the service behavior that inserts the `Inspector` . - - [!code-xml[Interceptors#9](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/hostapplication.exe.config#9)] - + [!code-vb[Interceptors#8](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#8)] + + The following code example shows the use of an application configuration file to load the service behavior that inserts the `Inspector` . + + [!code-xml[Interceptors#9](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/hostapplication.exe.config#9)] + ]]> @@ -106,31 +106,31 @@ Called after an inbound message has been received but before the message is dispatched to the intended operation. The object used to correlate state. This object is passed back in the method. - method to inspect or modify the incoming message, the client channel that provided it, and the current service instance. The return value can be any object that you want to use for correlation purposes; it is returned to you as the `correlationState` parameter in the method. - + method to inspect or modify the incoming message, the client channel that provided it, and the current service instance. The return value can be any object that you want to use for correlation purposes; it is returned to you as the `correlationState` parameter in the method. + > [!IMPORTANT] -> You cannot use the body of the message unless you buffer the entire message and make a copy. If you do this, you must make two copies of the message: one to inspect, and the other to overwrite the `request` parameter. - - - -## Examples - The following code example shows a basic that writes a string to the console when it is invoked. - +> You cannot use the body of the message unless you buffer the entire message and make a copy. If you do this, you must make two copies of the message: one to inspect, and the other to overwrite the `request` parameter. + + + +## Examples + The following code example shows a basic that writes a string to the console when it is invoked. + [!code-csharp[Interceptors#7](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs#7)] - [!code-vb[Interceptors#7](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb#7)] - - The following code example shows the implementation of an that adds the `Inspector` to the collection. - + [!code-vb[Interceptors#7](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb#7)] + + The following code example shows the implementation of an that adds the `Inspector` to the collection. + [!code-csharp[Interceptors#8](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs#8)] - [!code-vb[Interceptors#8](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#8)] - - The following code example shows the use of an application configuration file to load the service behavior that inserts the `Inspector` . - - [!code-xml[Interceptors#9](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/hostapplication.exe.config#9)] - + [!code-vb[Interceptors#8](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#8)] + + The following code example shows the use of an application configuration file to load the service behavior that inserts the `Inspector` . + + [!code-xml[Interceptors#9](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/hostapplication.exe.config#9)] + ]]> @@ -168,28 +168,28 @@ The correlation object returned from the method. Called after the operation has returned but before the reply message is sent. - method to perform custom behavior prior to sending the return message. The `correlationState` is the object returned from the method that you can use to perform correlation between inbound and outbound calls to support your behavior. - - - -## Examples - The following code example shows a basic that writes a string to the console when it is invoked. - + method to perform custom behavior prior to sending the return message. The `correlationState` is the object returned from the method that you can use to perform correlation between inbound and outbound calls to support your behavior. + + + +## Examples + The following code example shows a basic that writes a string to the console when it is invoked. + [!code-csharp[Interceptors#7](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs#7)] - [!code-vb[Interceptors#7](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb#7)] - - The following code example shows the implementation of an that adds the `Inspector` to the collection. - + [!code-vb[Interceptors#7](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb#7)] + + The following code example shows the implementation of an that adds the `Inspector` to the collection. + [!code-csharp[Interceptors#8](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs#8)] - [!code-vb[Interceptors#8](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#8)] - - The following code example shows the use of an application configuration file to load the service behavior that inserts the `Inspector` . - - [!code-xml[Interceptors#9](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/hostapplication.exe.config#9)] - + [!code-vb[Interceptors#8](~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb#8)] + + The following code example shows the use of an application configuration file to load the service behavior that inserts the `Inspector` . + + [!code-xml[Interceptors#9](~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/hostapplication.exe.config#9)] + ]]> diff --git a/xml/System.ServiceModel.Dispatcher/IParameterInspector.xml b/xml/System.ServiceModel.Dispatcher/IParameterInspector.xml index 5a4d9b5eb03..b72559ddf86 100644 --- a/xml/System.ServiceModel.Dispatcher/IParameterInspector.xml +++ b/xml/System.ServiceModel.Dispatcher/IParameterInspector.xml @@ -43,36 +43,36 @@ Defines the contract implemented by custom parameter inspectors that enables inspection or modification of information prior to and subsequent to calls on either the client or the service. - interface to create a custom parameter inspector that can view and modify the contents of a call both before the call and after the call in either client or service applications. - - On outbound calls from a client, the inspector is invoked before the request contents are serialized and sent to the service. The inspector is also called after the response has been deserialized but before the return values have been dispatched to the proxy method. - - On inbound calls to a service, the inspector is invoked after parameters are deserialized but before they are dispatched to the service operation. - - Use the or the properties to add an implementation to the inspectors collection for a particular operation. - - **Note** Developers and administrators must ensure that the interaction with other implementations is understood. - - - -## Examples - The following code example shows an implementation that: - -- Writes the operation name and return value to the console after a response has been deserialized by the service or a request has been serialized by a client. - -- Writes the operation name to the console after deserializing a response on the client or after a response has been serialized on the service. - + interface to create a custom parameter inspector that can view and modify the contents of a call both before the call and after the call in either client or service applications. + + On outbound calls from a client, the inspector is invoked before the request contents are serialized and sent to the service. The inspector is also called after the response has been deserialized but before the return values have been dispatched to the proxy method. + + On inbound calls to a service, the inspector is invoked after parameters are deserialized but before they are dispatched to the service operation. + + Use the or the properties to add an implementation to the inspectors collection for a particular operation. + + **Note** Developers and administrators must ensure that the interaction with other implementations is understood. + + + +## Examples + The following code example shows an implementation that: + +- Writes the operation name and return value to the console after a response has been deserialized by the service or a request has been serialized by a client. + +- Writes the operation name to the console after deserializing a response on the client or after a response has been serialized on the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: - - The following code example shows how to use either , or to insert objects. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: + + The following code example shows how to use either , or to insert objects. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet5"::: + ]]> @@ -118,30 +118,30 @@ Any correlation state returned from the method, or . Called after client calls are returned and before service responses are sent. - implementation that: - -- Writes the operation name and return value to the console after a response has been deserialized by the service or a request has been serialized by a client. - -- Writes the operation name to the console after deserializing a response on the client or after a response has been serialized on the service. - + implementation that: + +- Writes the operation name and return value to the console after a response has been deserialized by the service or a request has been serialized by a client. + +- Writes the operation name to the console after deserializing a response on the client or after a response has been serialized on the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: - - The following code example shows how to use either , , or to insert objects. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: + + The following code example shows how to use either , , or to insert objects. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet5"::: + ]]> @@ -184,30 +184,30 @@ Called before client calls are sent and after service responses are returned. The correlation state that is returned as the parameter in . Return if you do not intend to use correlation state. - implementation that: - -- Writes the operation name and return value to the console after a response has been deserialized by the service or a request has been serialized by a client. - -- Writes the operation name to the console after deserializing a response on the client or after a response is serialized on the service. - + implementation that: + +- Writes the operation name and return value to the console after a response has been deserialized by the service or a request has been serialized by a client. + +- Writes the operation name to the console after deserializing a response on the client or after a response is serialized on the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/interceptors.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: - - The following code example shows how to use either , or to insert objects. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/interceptors.vb" id="Snippet4"::: + + The following code example shows how to use either , or to insert objects. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/interceptors/cs/insertingbehaviors.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/interceptors/vb/insertingbehaviors.vb" id="Snippet5"::: + ]]> diff --git a/xml/System.ServiceModel.Dispatcher/JsonQueryStringConverter.xml b/xml/System.ServiceModel.Dispatcher/JsonQueryStringConverter.xml index 26545b81a69..55a1a06e3a1 100644 --- a/xml/System.ServiceModel.Dispatcher/JsonQueryStringConverter.xml +++ b/xml/System.ServiceModel.Dispatcher/JsonQueryStringConverter.xml @@ -18,57 +18,57 @@ This class converts a parameter value to and from a JavaScript Object Notation (JSON). - is used to process HTTP requests from browser-based ASP.NET AJAX clients. - - This class is used internally by the Windows Communication Foundation (WCF) class for endpoints configured to accept HTTP GET/POST requests with parameters encoded in the URI query string. This class is used to convert between CLR objects and the individual operation request parameter values in the URI query string. Unlike its base type, this class supports values of both primitive and complex types. - - derives from and supports the following types: - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- An of type - -- - -- - - Unlike its base type, this converter can handle any type adhering to the Data Contract model. The converter overrides so that each parameter is serialized to JSON using the default and a JSON XML Writer configured to use the UTF-8 encoding. `null` parameters are returned as `null`. - + is used to process HTTP requests from browser-based ASP.NET AJAX clients. + + This class is used internally by the Windows Communication Foundation (WCF) class for endpoints configured to accept HTTP GET/POST requests with parameters encoded in the URI query string. This class is used to convert between CLR objects and the individual operation request parameter values in the URI query string. Unlike its base type, this class supports values of both primitive and complex types. + + derives from and supports the following types: + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- An of type + +- + +- + + Unlike its base type, this converter can handle any type adhering to the Data Contract model. The converter overrides so that each parameter is serialized to JSON using the default and a JSON XML Writer configured to use the UTF-8 encoding. `null` parameters are returned as `null`. + ]]> @@ -116,11 +116,11 @@ if the type can be serialized; otherwise . - . - + . + ]]> The is . @@ -180,27 +180,27 @@ Serializes a Common Language Runtime (CLR) parameter type to a JavaScript Object Notation (JSON) representation. The JSON query string parameter serialization of the CLR type. is returned if the parameter is . - so that each parameter is serialized to JSON using the default and a JSON XML Writer configured to use the UTF-8 encoding. Unlike its base type, this converter can handle any type adhering to the Data Contract model. - - - -## Examples - Consider the following operation. - -``` -[WebGet] -[OperationContract] public int GetOptionQuote(string ticker, DateTime dte, Option opt); -``` - - This operation produces a URL that is a URL-encoded version of the following. - -``` -http://localhost/quote.svc/GetOptionQuote?ticker="MSFT"&dte="\/Date(50067823)\/"&opt={"type":"call","strikePrice":"35"} -``` - + so that each parameter is serialized to JSON using the default and a JSON XML Writer configured to use the UTF-8 encoding. Unlike its base type, this converter can handle any type adhering to the Data Contract model. + + + +## Examples + Consider the following operation. + +``` +[WebGet] +[OperationContract] public int GetOptionQuote(string ticker, DateTime dte, Option opt); +``` + + This operation produces a URL that is a URL-encoded version of the following. + +``` +http://localhost/quote.svc/GetOptionQuote?ticker="MSFT"&dte="\/Date(50067823)\/"&opt={"type":"call","strikePrice":"35"} +``` + ]]> diff --git a/xml/System.ServiceModel.Dispatcher/QueryStringConverter.xml b/xml/System.ServiceModel.Dispatcher/QueryStringConverter.xml index 475ebc0cb1d..d6b4a3333a6 100644 --- a/xml/System.ServiceModel.Dispatcher/QueryStringConverter.xml +++ b/xml/System.ServiceModel.Dispatcher/QueryStringConverter.xml @@ -18,81 +18,81 @@ This class converts a parameter in a query string to an object of the appropriate type. It can also convert a parameter from an object to its query string representation. - at `http://localhost:8000/MyCalcService`. The `Add` service operation can be called by sending an HTTP GET to `http://localhost:8000/MyCalcService/Add?n1=10&n2=5`. The receives this URL and converts the two parameters (n1 and n2) specified in the URL into two `long` objects with the appropriate values. - - You can derive a class from to control how query string parameters are mapped into a service operation's parameters. - - The supports the following types by default: - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- array - -- - -- - -- - -- Enums - -- Types that have a `TypeConverterAttribute` that can convert the type to and from a string representation. - - - -## Examples - The following code shows how to use the class to convert between a string and a 32-bit integer. - +[ServiceContract] +interface Calculator +{ + [WebGet(UriTemplate="Add?n1={n1}&n2={n2}")] + [OperationContract] + long Add(long n1, long n2); +} +``` + + A Windows Communication Foundation (WCF) service implements this interface and exposes it on an endpoint with the at `http://localhost:8000/MyCalcService`. The `Add` service operation can be called by sending an HTTP GET to `http://localhost:8000/MyCalcService/Add?n1=10&n2=5`. The receives this URL and converts the two parameters (n1 and n2) specified in the URL into two `long` objects with the appropriate values. + + You can derive a class from to control how query string parameters are mapped into a service operation's parameters. + + The supports the following types by default: + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- + +- array + +- + +- + +- + +- Enums + +- Types that have a `TypeConverterAttribute` that can convert the type to and from a string representation. + + + +## Examples + The following code shows how to use the class to convert between a string and a 32-bit integer. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/querystringconverter/cs/program.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/querystringconverter/vb/program.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/querystringconverter/vb/program.vb" id="Snippet0"::: + ]]> @@ -113,14 +113,14 @@ interface Calculator Initializes a new instance of the class. - class. - + class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/querystringconverter/cs/program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/querystringconverter/vb/program.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/querystringconverter/vb/program.vb" id="Snippet1"::: + ]]> @@ -149,14 +149,14 @@ interface Calculator Determines whether the specified type can be converted to and from a string representation. A value that specifies whether the type can be converted. - can convert to and from the specified type. - + can convert to and from the specified type. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/querystringconverter/cs/program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/querystringconverter/vb/program.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/querystringconverter/vb/program.vb" id="Snippet2"::: + ]]> @@ -187,19 +187,19 @@ interface Calculator Converts a query string parameter to the specified type. The converted parameter. - The provided string does not have the correct format. @@ -231,14 +231,14 @@ interface Calculator Converts a parameter to a query string representation. The parameter name and value. - diff --git a/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationBindingElement.xml b/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationBindingElement.xml index d89b754a9fd..98c53fe4bc2 100644 --- a/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationBindingElement.xml +++ b/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationBindingElement.xml @@ -17,11 +17,11 @@ This binding element can be used to enable Windows Communication Foundation (WCF) applications to send messages to and receive messages from existing MSMQ applications that use either COM, MSMQ native APIs, or the APIs in . Use this class to send and receive messages from MSMQ-based messaging applications. - @@ -42,11 +42,11 @@ Initializes a new instance of the class. - @@ -79,11 +79,11 @@ Builds a channel factory using the context provided. An MSMQ integration channel factory that can be used to create channels to send messages to existing MSMQ applications. - .CreateChannel`. - + .CreateChannel`. + ]]> The context value is . @@ -157,11 +157,11 @@ If CustomDeadLetterQueue is non-transactional. Builds a channel listener using the context provided. An MSMQ integration channel listener that can be used to create channels to receive messages from existing MSMQ applications. - The context value is . @@ -269,8 +269,8 @@ ReceiveErrorHandling is set to Reject or Move and the platform is Windows Vista. The with which to build the channel listener. Returns a value that indicates whether you can build a channel listener with the context provided. - if you can build a channel listener with the context provided; otherwise, . - + if you can build a channel listener with the context provided; otherwise, . + This method returns only if is . To be added. @@ -296,11 +296,11 @@ ReceiveErrorHandling is set to Reject or Move and the platform is Windows Vista. Returns a clone of the binding element. A clone of the binding element. - @@ -337,11 +337,11 @@ ReceiveErrorHandling is set to Reject or Move and the platform is Windows Vista. Gets a property of the requested type from the specified . An object of type . - Context is . @@ -367,16 +367,16 @@ ReceiveErrorHandling is set to Reject or Move and the platform is Windows Vista. Gets a that contains the scheme used by the binding element. The that contains the scheme used by the binding element. - @@ -407,28 +407,28 @@ ReceiveErrorHandling is set to Reject or Move and the platform is Windows Vista. Gets or sets the to be used when serializing MSMQ messages. The to be used when serializing MSMQ messages. - is used to serialize objects. - -- `ByteArray` - The object is serialized to an array of bytes. - -- `Stream` - The object is serialized to a stream. - -- `Xml` - The is used to serialize objects. - -- The default value is `Xml`. - - - -## Examples - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_msmqtowcf/cs/snippets.cs" id="Snippet3"::: - + is used to serialize objects. + +- `ByteArray` - The object is serialized to an array of bytes. + +- `Stream` - The object is serialized to a stream. + +- `Xml` - The is used to serialize objects. + +- The default value is `Xml`. + + + +## Examples + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_msmqtowcf/cs/snippets.cs" id="Snippet3"::: + ]]> The value is not within the values of . @@ -454,16 +454,16 @@ ReceiveErrorHandling is set to Reject or Move and the platform is Windows Vista. Gets or sets an array of objects that contain the types to which messages should be deserialized. An array of that contains the types to which messages should be deserialized. - property enables you to specify the types to which messages are deserialized when they are sent from an MSMQ application to a Windows Communication Foundation (WCF) receiving application. This property is used only if is set to `Xml`. - - - -## Examples - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_msmqtowcf/cs/snippets.cs" id="Snippet4"::: - + property enables you to specify the types to which messages are deserialized when they are sent from an MSMQ application to a Windows Communication Foundation (WCF) receiving application. This property is used only if is set to `Xml`. + + + +## Examples + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_msmqtowcf/cs/snippets.cs" id="Snippet4"::: + ]]> diff --git a/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationMessageProperty.xml b/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationMessageProperty.xml index 988ef52fd3a..acfdd8089e0 100644 --- a/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationMessageProperty.xml +++ b/xml/System.ServiceModel.MsmqIntegration/MsmqIntegrationMessageProperty.xml @@ -17,15 +17,15 @@ Represents the Message Queuing (MSMQ) integration properties for a message. - class exposes all of the Message Queuing message properties that you can set when you send a message or read a message that has been received using the integration channel. - - The class also enables you to set Message Queuing message properties, and is the recommended way to set Message Queuing message properties. - - When you use the channels and messages infrastructure to create a message and send it over an integration channel, you can use the class as a property of the message so that the integration channel can retrieve the message properties and format the message as a Message Queuing message and send it on the wire. - + class exposes all of the Message Queuing message properties that you can set when you send a message or read a message that has been received using the integration channel. + + The class also enables you to set Message Queuing message properties, and is the recommended way to set Message Queuing message properties. + + When you use the channels and messages infrastructure to create a message and send it over an integration channel, you can use the class as a property of the message so that the integration channel can retrieve the message properties and format the message as a Message Queuing message and send it on the wire. + ]]> @@ -110,11 +110,11 @@ Gets the acknowledgment message that Message Queuing (MSMQ) generates. The acknowledgment message that Message Queuing generates. - . The value can be used to verify the status of the original message when you receive a message from an administration queue. - + . The value can be used to verify the status of the original message when you receive a message from an administration queue. + ]]> @@ -149,11 +149,11 @@ Gets or sets the queue that receives the acknowledgment messages that Message Queuing (MSMQ) generates. The queue that receives the acknowledgment messages that Message Queuing generates. - @@ -188,11 +188,11 @@ Specifies additional application-specific information. An value that represents additional application-specific information. - @@ -260,11 +260,11 @@ if the message was authenticated; otherwise, . - @@ -331,11 +331,11 @@ Gets or sets the type of data that the message body contains. The type of data that the message body contains. - @@ -370,13 +370,13 @@ Gets or sets the message identifier used by acknowledgment, report, and response messages to reference the original message. The message identifier used by acknowledgment, report, and response messages to reference the original message. - @@ -411,11 +411,11 @@ Gets or sets the intended destination queue for the message. The intended destination queue for the message. - @@ -450,11 +450,11 @@ Gets or sets additional, application-defined information associated with the message. A byte array that contains additional, application-defined information associated with the message. - @@ -521,13 +521,13 @@ The property collection on the message is . Gets the message's identifier. The message's identifier. - @@ -562,13 +562,13 @@ The property collection on the message is . Gets or sets an application-defined Unicode string that describes the message. An application-defined Unicode string that describes the message. - @@ -603,17 +603,17 @@ The property collection on the message is . Gets the message type: , , or . The message type: , , or . - @@ -665,11 +665,11 @@ The property collection on the message is . Gets or sets the message priority, which determines where in the queue the message is placed. The message priority. The values are defined by . - The value is not null and is not within the range of values. @@ -705,13 +705,13 @@ The property collection on the message is . Gets or sets the queue that receives application-generated response messages. The URI for the queue that receives application-generated response messages. - @@ -778,11 +778,11 @@ The property collection on the message is . Gets the date and time on the sending computer that the message was sent by the source queue manager. The date and time on the sending computer that the message was sent by the source queue manager. - @@ -813,11 +813,11 @@ The property collection on the message is . Gets or sets the maximum amount of time for the message to reach the queue. The maximum amount of time for the message to reach the queue. - property expires before the message reaches its destination, MSMQ discards the message depending on the behavior indicated by the `DeadLetterQueue` property on the binding. - + property expires before the message reaches its destination, MSMQ discards the message depending on the behavior indicated by the `DeadLetterQueue` property on the binding. + ]]> diff --git a/xml/System.ServiceModel.Persistence/SqlPersistenceProviderFactory.xml b/xml/System.ServiceModel.Persistence/SqlPersistenceProviderFactory.xml index 69d273510fe..1e9f16095a9 100644 --- a/xml/System.ServiceModel.Persistence/SqlPersistenceProviderFactory.xml +++ b/xml/System.ServiceModel.Persistence/SqlPersistenceProviderFactory.xml @@ -23,19 +23,19 @@ A system-provided implementation used to create a instance that uses a SQL database to store persisted service state data. - class represents a factory class for a fully-functional, durable service persistence provider. You can use this system-provided provider to persist and retrieve state information about a durable WCF service. - - In addition to persistence, the provider created by the class implements locking of service state data records by inheriting from the abstract class. Methods that interact with persisted data (such as or ) have an optional parameter (`lockInstance`) that defines whether locks on the data in question are released or maintained. - + class represents a factory class for a fully-functional, durable service persistence provider. You can use this system-provided provider to persist and retrieve state information about a durable WCF service. + + In addition to persistence, the provider created by the class implements locking of service state data records by inheriting from the abstract class. Methods that interact with persisted data (such as or ) have an optional parameter (`lockInstance`) that defines whether locks on the data in question are released or maintained. + > [!NOTE] -> exceptions thrown by do not have their exception details hidden by default. To protect against security vulnerabilities, these details can be hidden by setting to `false`. - +> exceptions thrown by do not have their exception details hidden by default. To protect against security vulnerabilities, these details can be hidden by setting to `false`. + > [!NOTE] -> The SQL Persistence Provider stores and retrieves data from a SQL Server database. The host must create a secure SQL Server environment to protect against attackers gaining read/write access to the instance state either in the database or on the wire between the application and the database. - +> The SQL Persistence Provider stores and retrieves data from a SQL Server database. The host must create a secure SQL Server environment to protect against attackers gaining read/write access to the instance state either in the database or on the wire between the application and the database. + ]]> @@ -48,17 +48,17 @@ Initializes a new instance of the class. - class provide parameters for setting the following: - -- The connection string used for accessing the SQL database. - -- The lock time-out used for defining lock ownership duration. - -- Whether the persistence data is serialized as XML or binary data. - + class provide parameters for setting the following: + +- The connection string used for accessing the SQL database. + +- The lock time-out used for defining lock ownership duration. + +- Whether the persistence data is serialized as XML or binary data. + ]]> @@ -83,18 +83,18 @@ The collection of parameters used by the new persistence provider factory. Valid parameters include , , and . Initializes a new instance of the class, configured with the specified parameter collection. - class using a parameters collection. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet3"::: - + class using a parameters collection. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet3"::: + ]]> @@ -119,13 +119,13 @@ The connection parameters for the new persistence provider instance. Initializes a new instance of the class, configured with the specified connection string. - class using a connection string. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet2"::: - + class using a connection string. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet2"::: + ]]> @@ -152,18 +152,18 @@ Specifies whether data is serialized as text rather than binary. Initializes a new instance of the class, configured with the specified connection string and parameters. - class. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet1"::: - + class. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet1"::: + ]]> @@ -192,20 +192,20 @@ The time-out for lock ownership. Locked instances are automatically unlocked after this time period. A time-out of specifies that no locking is used. Initializes a new instance of the class, configured with the specified connection string, , and parameters. - class. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet0"::: - + class. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet0"::: + ]]> @@ -230,13 +230,13 @@ Gets the connection parameters for persistence provider instances created with this factory. The connection parameters for persistence provider instances created with this factory. - @@ -265,18 +265,18 @@ Initializes a new instance that uses a SQL database as its persistence store. A newly-created . - , , and ), even if the factory's parameters are changed after the persistence provider is created. - - - -## Examples - The following code example shows how to execute the `CreateProvider` method. Note that the resulting provider is accessed as a instance. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet7"::: - + , , and ), even if the factory's parameters are changed after the persistence provider is created. + + + +## Examples + The following code example shows how to execute the `CreateProvider` method. Note that the resulting provider is accessed as a instance. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sqlpersistenceproviderfactory/cs/sqlpersistenceproviderfactory.cs" id="Snippet7"::: + ]]> @@ -301,11 +301,11 @@ Gets the default time-out value used when persistence providers created with this factory are closed. The default time-out value. - @@ -330,11 +330,11 @@ Gets the default time-out value used when persistence provider is opened. The default time-out value. - @@ -359,18 +359,18 @@ The time-out for lock ownership used by persistence provider instances created by this instance. Locked instances are automatically unlocked after this time period. The time-out value for lock ownership. - @@ -395,11 +395,11 @@ Represents the Abort phase. - @@ -432,11 +432,11 @@ Represents the beginning of the Close phase. The state of the asynchronous method call. - @@ -469,11 +469,11 @@ Represents the beginning of the Open phase. The state of the asynchronous method call. - @@ -501,11 +501,11 @@ The time period after which the persistence provider aborts this attempt. Represents the Close phase. - @@ -533,11 +533,11 @@ A reference to the result of the operation. Represents the end of the Close phase. - @@ -565,11 +565,11 @@ A reference to the result of the operation. Represents the end of the Open phase. - @@ -597,11 +597,11 @@ The time period after which the persistence provider aborts this attempt. Represents the Open phase. - @@ -627,18 +627,18 @@ if the service information is serialized as text; otherwise, . - diff --git a/xml/System.ServiceModel.Routing/IDuplexSessionRouter.xml b/xml/System.ServiceModel.Routing/IDuplexSessionRouter.xml index 39c26f4b021..54b9b62251c 100644 --- a/xml/System.ServiceModel.Routing/IDuplexSessionRouter.xml +++ b/xml/System.ServiceModel.Routing/IDuplexSessionRouter.xml @@ -19,13 +19,13 @@ Defines the interface required to process messages from duplex session channels. - diff --git a/xml/System.ServiceModel.Routing/IRequestReplyRouter.xml b/xml/System.ServiceModel.Routing/IRequestReplyRouter.xml index 00f191a2cdd..ba2668d6a56 100644 --- a/xml/System.ServiceModel.Routing/IRequestReplyRouter.xml +++ b/xml/System.ServiceModel.Routing/IRequestReplyRouter.xml @@ -19,13 +19,13 @@ Defines the interface required to process messages from request-reply channels. - diff --git a/xml/System.ServiceModel.Routing/ISimplexDatagramRouter.xml b/xml/System.ServiceModel.Routing/ISimplexDatagramRouter.xml index 90874d2b805..f0ab70342fb 100644 --- a/xml/System.ServiceModel.Routing/ISimplexDatagramRouter.xml +++ b/xml/System.ServiceModel.Routing/ISimplexDatagramRouter.xml @@ -19,15 +19,15 @@ Defines the interface required for processing messages from simplex datagram. - diff --git a/xml/System.ServiceModel.Routing/ISimplexSessionRouter.xml b/xml/System.ServiceModel.Routing/ISimplexSessionRouter.xml index 6156ce8625d..d7d6823122d 100644 --- a/xml/System.ServiceModel.Routing/ISimplexSessionRouter.xml +++ b/xml/System.ServiceModel.Routing/ISimplexSessionRouter.xml @@ -19,15 +19,15 @@ Defines the interface required to process messages from simplex session channels. - diff --git a/xml/System.ServiceModel.Security.Tokens/SecureConversationSecurityTokenParameters.xml b/xml/System.ServiceModel.Security.Tokens/SecureConversationSecurityTokenParameters.xml index a036291e0a4..d0e7ebf8936 100644 --- a/xml/System.ServiceModel.Security.Tokens/SecureConversationSecurityTokenParameters.xml +++ b/xml/System.ServiceModel.Security.Tokens/SecureConversationSecurityTokenParameters.xml @@ -714,11 +714,11 @@ - = `true`. -- The property in is set to . +- The property in is set to . -- The property in is set to . +- The property in is set to . -- The property in is set to a clone of the current instance. +- The property in is set to a clone of the current instance. - = . diff --git a/xml/System.ServiceModel.Security.Tokens/SslSecurityTokenParameters.xml b/xml/System.ServiceModel.Security.Tokens/SslSecurityTokenParameters.xml index 36ee96b3c6b..03c21df2fb2 100644 --- a/xml/System.ServiceModel.Security.Tokens/SslSecurityTokenParameters.xml +++ b/xml/System.ServiceModel.Security.Tokens/SslSecurityTokenParameters.xml @@ -17,11 +17,11 @@ Represents the parameters for an SSL security token that is obtained when doing the SOAP-level SSL protocol with the server. - @@ -57,17 +57,17 @@ Initializes a new instance of the class. - is set to . - -- is set to . - -- is set to `true`. - + is set to . + +- is set to . + +- is set to `true`. + ]]> @@ -99,21 +99,21 @@ to require client certificate; otherwise, . Initializes a new instance of the class. - is set to . - -- is set to . - -- is set to `true`. - - is set to `false`. - - is set to `requireClientCertificate`. - + is set to . + +- is set to . + +- is set to `true`. + + is set to `false`. + + is set to `requireClientCertificate`. + ]]> @@ -138,11 +138,11 @@ The other instance of this class. Initializes a new instance of the class from another instance. - @@ -179,21 +179,21 @@ to require cancellation; otherwise, . Initializes a new instance of the class. - is set to . - -- is set to . - -- is set to `true`. - - is set to `requireCancellation`. - - is set to `requireClientCertificate`. - + is set to . + +- is set to . + +- is set to `true`. + + is set to `requireCancellation`. + + is set to `requireClientCertificate`. + ]]> @@ -219,13 +219,13 @@ Clones another instance of this instance of the class. A instance that represents the copy. - and methods follow the Core design pattern. overrides . - - The method calls the constructor. - + and methods follow the Core design pattern. overrides . + + The method calls the constructor. + ]]> @@ -256,11 +256,11 @@ Creates a key identifier clause for a token. The key identifier clause for a token. - method, with `referenceStyle` as a generic parameter. - + method, with `referenceStyle` as a generic parameter. + ]]> @@ -290,13 +290,13 @@ if the token has an asymmetric key; otherwise, . - @@ -324,21 +324,21 @@ The requirement of the security token. Initializes a security token requirement. - are initialized: - -- If is `true`, = ; otherwise, it is set to . - -- = `true`. - -- The `SupportSecurityContextCancellation` property in is set to . - -- The `IssuedSecurityTokenParameters` property in is set to a clone of the current instance. - -- = . - + are initialized: + +- If is `true`, = ; otherwise, it is set to . + +- = `true`. + +- The `SupportSecurityContextCancellation` property in is set to . + +- The `IssuedSecurityTokenParameters` property in is set to a clone of the current instance. + +- = . + ]]> @@ -374,11 +374,11 @@ if cancellation is required; otherwise, . The default is . - @@ -495,11 +495,11 @@ if the token supports server authentication; otherwise, . - @@ -525,11 +525,11 @@ Displays a text representation of this instance of the class. A text representation of this instance of the class. - , and . - + , and . + ]]> diff --git a/xml/System.ServiceModel.Security.Tokens/SspiSecurityTokenParameters.xml b/xml/System.ServiceModel.Security.Tokens/SspiSecurityTokenParameters.xml index d8b946b69a2..5a6d304cd76 100644 --- a/xml/System.ServiceModel.Security.Tokens/SspiSecurityTokenParameters.xml +++ b/xml/System.ServiceModel.Security.Tokens/SspiSecurityTokenParameters.xml @@ -17,11 +17,11 @@ Represents the parameters for an SSPI security token that is obtained during the SOAP-level SPNEGO protocol with the server. - @@ -34,13 +34,13 @@ Initializes a new instance of the class. - sets them to their default values. takes them from the instance referenced by the input parameter. - - sets them to their default values and then sets to `false`. - + sets them to their default values. takes them from the instance referenced by the input parameter. + + sets them to their default values and then sets to `false`. + ]]> @@ -67,19 +67,19 @@ Initializes a new instance of the class. - is set to . - -- is set to . - -- is set to `true`. - -- is set to `false`. - + is set to . + +- is set to . + +- is set to `true`. + +- is set to `false`. + ]]> @@ -110,19 +110,19 @@ Whether the token requires cancellation. Initializes a new instance of the class. - is set to . - -- is set to . - - is set to `true`. - - is set to `requireCancellation`. - + is set to . + +- is set to . + + is set to `true`. + + is set to `requireCancellation`. + ]]> @@ -147,13 +147,13 @@ The other instance of this class. Initializes a new instance of the class. - is set to `false`. - + is set to `false`. + ]]> @@ -181,15 +181,15 @@ Clones another instance of this instance of the class. A new instance of the . - and methods follow the Core design pattern. - - is an `abstract` class that is overridden by . - - The method calls the constructor. - + and methods follow the Core design pattern. + + is an `abstract` class that is overridden by . + + The method calls the constructor. + ]]> @@ -242,11 +242,11 @@ Gets a value that indicates whether the token has an asymmetric key. Always returns . - @@ -274,21 +274,21 @@ The . Initializes a security token requirement. - are initialized: - -- = . - -- = `true`. - -- The `SupportSecurityContextCancellation` property in is set to . - -- The `IssuedSecurityTokenParameters` property in is set to a clone of the current instance. - -- = . - + are initialized: + +- = . + +- = `true`. + +- The `SupportSecurityContextCancellation` property in is set to . + +- The `IssuedSecurityTokenParameters` property in is set to a clone of the current instance. + +- = . + ]]> @@ -324,11 +324,11 @@ if the token requires cancellation; otherwise, . The default is . - diff --git a/xml/System.ServiceModel.Security/SecureConversationServiceCredential.xml b/xml/System.ServiceModel.Security/SecureConversationServiceCredential.xml index eeff8bc0b8c..edb558f085f 100644 --- a/xml/System.ServiceModel.Security/SecureConversationServiceCredential.xml +++ b/xml/System.ServiceModel.Security/SecureConversationServiceCredential.xml @@ -17,15 +17,15 @@ Provides credential settings for a secure conversation service. - with the `requireCancellation` parameter equal to `true`, the SCT is issued in this manner. - -- The second is a self-contained SCT that resides in a cookie on the client. This SCT contains the entire state information, so requires neither state management from the service nor SCT cancellation from the client. This is sometimes called a "cookie-mode" SCT. Because the SCT contains the entire state information, its size is larger than in the session-based case. With session-based SCTs, the service stores much of the state information. However, because it is self-contained, it can be used across service lifetime and persists across service shutdown and restart. - + with the `requireCancellation` parameter equal to `true`, the SCT is issued in this manner. + +- The second is a self-contained SCT that resides in a cookie on the client. This SCT contains the entire state information, so requires neither state management from the service nor SCT cancellation from the client. This is sometimes called a "cookie-mode" SCT. Because the SCT contains the entire state information, its size is larger than in the session-based case. With session-based SCTs, the service stores much of the state information. However, because it is self-contained, it can be used across service lifetime and persists across service shutdown and restart. + ]]> @@ -56,18 +56,18 @@ Gets a collection of the claims for cookie serialization. A collection of the claims for cookie serialization. - as the default. Because the Claim resource is extensible, WCF allows you to provide a list of known resource types. This assists the during deserialization of the claims in the cookie so that it can return the original strongly-typed objects. - - - -## Examples - The following code shows how to get this property. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_secureconversationservicecredential/cs/source.cs" id="Snippet2"::: - + as the default. Because the Claim resource is extensible, WCF allows you to provide a list of known resource types. This assists the during deserialization of the claims in the cookie so that it can return the original strongly-typed objects. + + + +## Examples + The following code shows how to get this property. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_secureconversationservicecredential/cs/source.cs" id="Snippet2"::: + ]]> @@ -98,22 +98,22 @@ Gets or sets a customized for encoding and decoding cookie serialization. A object, which is a customization of . - class to protect the cookie using the Data Protection API (DPAPI). For DPAPI to work in a Web farm environment, all the backend services must run as the same domain user account. In other words, if the service is Web hosted, then the Internet Information Services (IIS) worker process must be configured to run as a domain user. - - This property enables you to use a customized to encrypt and decrypt the cookie and not depend on DPAPI. - - - -## Examples - The following code shows how to set this property. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_secureconversationservicecredential/cs/source.cs" id="Snippet1"::: - + class to protect the cookie using the Data Protection API (DPAPI). For DPAPI to work in a Web farm environment, all the backend services must run as the same domain user account. In other words, if the service is Web hosted, then the Internet Information Services (IIS) worker process must be configured to run as a domain user. + + This property enables you to use a customized to encrypt and decrypt the cookie and not depend on DPAPI. + + + +## Examples + The following code shows how to set this property. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ue_secureconversationservicecredential/cs/source.cs" id="Snippet1"::: + ]]> diff --git a/xml/System.ServiceModel.Security/WSTrustServiceHost.xml b/xml/System.ServiceModel.Security/WSTrustServiceHost.xml index 8eee9e2bbf6..e6f7832f687 100644 --- a/xml/System.ServiceModel.Security/WSTrustServiceHost.xml +++ b/xml/System.ServiceModel.Security/WSTrustServiceHost.xml @@ -16,21 +16,21 @@ Provides a for registering a The service host will have multiple endpoints registered based on the number of listeners registered in the configuration. - class provides the following: - -- It adds WS-Trust endpoints to the . - -- It enables metadata over the base addresses if the property is set to `false`. - -- It configures the service certificate on the service credentials if a WIF configuration section specifies a service certificate. Note that this will override the equivalent service certificate settings in WCF configuration. - -- It integrates IdentityModel token handlers into the security processing pipeline by calling the ExtensibleSecurityCredentials.ConfigureServiceHost method on itself. - - The class may be overridden to customize this behavior. - + class provides the following: + +- It adds WS-Trust endpoints to the . + +- It enables metadata over the base addresses if the property is set to `false`. + +- It configures the service certificate on the service credentials if a WIF configuration section specifies a service certificate. Note that this will override the equivalent service certificate settings in WCF configuration. + +- It integrates IdentityModel token handlers into the security processing pipeline by calling the ExtensibleSecurityCredentials.ConfigureServiceHost method on itself. + + The class may be overridden to customize this behavior. + ]]> @@ -72,13 +72,13 @@ An array of that contains the base addresses for the service host. Initializes a new instance of the class with the specified base addresses and service (STS) configuration settings. - is created using the specified instance. - - The instance is used for one-time initialization of the ; for this reason, setting properties on the configuration instance after the host is initialized may not result in behavior changes. - + is created using the specified instance. + + The instance is used for one-time initialization of the ; for this reason, setting properties on the configuration instance after the host is initialized may not result in behavior changes. + ]]> @@ -112,10 +112,10 @@ Initializes a new instance of the class with the specified base addresses and service contract. To be added. - is . - - -or- - + is . + + -or- + is . @@ -159,11 +159,11 @@ Configures metadata (WSDL) for the service host. - @@ -187,11 +187,11 @@ Override of the base class method. Configures the on the service host and then invokes the base implementation. - method and then invokes the base implementation. - + method and then invokes the base implementation. + ]]> diff --git a/xml/System.ServiceModel.Security/WindowsServiceCredential.xml b/xml/System.ServiceModel.Security/WindowsServiceCredential.xml index 14360770509..d8e27a5d7eb 100644 --- a/xml/System.ServiceModel.Security/WindowsServiceCredential.xml +++ b/xml/System.ServiceModel.Security/WindowsServiceCredential.xml @@ -17,15 +17,15 @@ Provides properties that describe the service credentials used for Windows authentication. - property to allow the anonymous logon of clients by setting it to `true`. You can then avoid disclosing the client's identity to the service by setting to `Anonymous`. - -- If the property is set to `true` (the default setting), the service can determine the Windows groups to which the client belongs. - + property to allow the anonymous logon of clients by setting it to `true`. You can then avoid disclosing the client's identity to the service by setting to `Anonymous`. + +- If the property is set to `true` (the default setting), the service can determine the Windows groups to which the client belongs. + ]]> @@ -57,21 +57,21 @@ if anonymous users are allowed access; otherwise, . The default is . - @@ -103,19 +103,19 @@ if Windows groups are included in the security context; otherwise, . The default is . - diff --git a/xml/System.ServiceModel.Syndication/SyndicationContent.xml b/xml/System.ServiceModel.Syndication/SyndicationContent.xml index 5f4d68187df..08158cce7c6 100644 --- a/xml/System.ServiceModel.Syndication/SyndicationContent.xml +++ b/xml/System.ServiceModel.Syndication/SyndicationContent.xml @@ -46,17 +46,17 @@ A base class that represents syndication content. - - -- - -- - + + +- + +- + ]]> @@ -160,20 +160,20 @@ Gets the attribute extensions for this content. A dictionary that contains the attribute extensions for this object. - ). When serialized to Atom 1.0, these attributes appear within the `` element. When serialized to RSS 2.0, these attribute are ignored. - - - -## Examples - The following XML shows how a custom attribute added to a instance is serialized to Atom 1.0. - -``` -Some text content -``` - + ). When serialized to Atom 1.0, these attributes appear within the `` element. When serialized to RSS 2.0, these attribute are ignored. + + + +## Examples + The following XML shows how a custom attribute added to a instance is serialized to Atom 1.0. + +``` +Some text content +``` + ]]> @@ -241,11 +241,11 @@ Creates a new instance with the specified HTML content. A instance. - @@ -318,11 +318,11 @@ Creates a new instance with the specified and media type. A new instance. - @@ -538,33 +538,33 @@ Gets the syndication content type. The name of the type of syndication content. - ). The .NET Framework defines the following syndication content types: - -- - -- - -- - -- This class contains a number of static helper methods for creating the various types of syndication content: - -- - -- - -- - -- - -- - -- - -- - + ). The .NET Framework defines the following syndication content types: + +- + +- + +- + +- This class contains a number of static helper methods for creating the various types of syndication content: + +- + +- + +- + +- + +- + +- + +- + ]]> @@ -600,11 +600,11 @@ The to write to. Writes the contents of this object to the specified . - . - + . + ]]> @@ -644,11 +644,11 @@ The namespace of the element. Writes the contents of this object to the specified within the specified element and element namespace. - diff --git a/xml/System.ServiceModel/CallbackBehaviorAttribute.xml b/xml/System.ServiceModel/CallbackBehaviorAttribute.xml index 21c09998fa5..c2769fdd9c6 100644 --- a/xml/System.ServiceModel/CallbackBehaviorAttribute.xml +++ b/xml/System.ServiceModel/CallbackBehaviorAttribute.xml @@ -61,44 +61,44 @@ Configures a callback service implementation in a client application. - attribute to configure or extend the execution behavior of a callback contract implementation in a client application. This attribute performs the same function for the callback class as the attribute with the exception of instancing behavior and transaction settings. - - The must be applied to the class that implements the callback contract. If applied to a non-duplex contract implementation an exception is thrown at runtime. - + attribute to configure or extend the execution behavior of a callback contract implementation in a client application. This attribute performs the same function for the callback class as the attribute with the exception of instancing behavior and transaction settings. + + The must be applied to the class that implements the callback contract. If applied to a non-duplex contract implementation an exception is thrown at runtime. + > [!NOTE] -> You can also use the attribute for the callback operation implementations. However, if is used on a callback operation, the property must be or an exception is thrown at runtime. - - The following properties are available: - -- The property automatically closes the session when the channel is closed and the callback has finished processing any remaining messages. - -- The property controls the internal threading model, enabling support for reentrant or multithreaded callback objects. - -- The property enables the runtime to ignore extra serialization information that is not required to process the message. - -- The property specifies whether unhandled exceptions in a service are returned to the service as SOAP faults for debugging purposes. - -- The property limits on the number of items in an object graph that are serialized. - -- The property specifies the transaction isolation level that the contract supports. - -- The property specifies the time period within which a transaction must complete or it aborts. - -- The property indicates whether to synchronize inbound method calls automatically using the current object. - -- The property informs the system whether it should confirm that SOAP headers marked as `MustUnderstand` have, in fact, been understood. - - - -## Examples - The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. - +> You can also use the attribute for the callback operation implementations. However, if is used on a callback operation, the property must be or an exception is thrown at runtime. + + The following properties are available: + +- The property automatically closes the session when the channel is closed and the callback has finished processing any remaining messages. + +- The property controls the internal threading model, enabling support for reentrant or multithreaded callback objects. + +- The property enables the runtime to ignore extra serialization information that is not required to process the message. + +- The property specifies whether unhandled exceptions in a service are returned to the service as SOAP faults for debugging purposes. + +- The property limits on the number of items in an object graph that are serialized. + +- The property specifies the transaction isolation level that the contract supports. + +- The property specifies the time period within which a transaction must complete or it aborts. + +- The property indicates whether to synchronize inbound method calls automatically using the current object. + +- The property informs the system whether it should confirm that SOAP headers marked as `MustUnderstand` have, in fact, been understood. + + + +## Examples + The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/callbackbehaviorattribute/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: + ]]> @@ -139,31 +139,31 @@ Initializes a new instance of the class. - are: - -- The property is `true`. - -- The is set to . - -- The property is `false`. - -- is `false`. - -- is `false`. - -- The property is `true`. - - - -## Examples - The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. - + are: + +- The property is `true`. + +- The is set to . + +- The property is `false`. + +- is `false`. + +- is `false`. + +- The property is `true`. + + + +## Examples + The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/callbackbehaviorattribute/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: + ]]> @@ -219,11 +219,11 @@ if duplex callback objects automatically close a session when the service closes a duplex session; otherwise, . The default is . - to `false` prevents the client from automatically closing the session. - + to `false` prevents the client from automatically closing the session. + ]]> @@ -270,21 +270,21 @@ Gets or sets whether a service supports one thread, multiple threads, or reentrant calls. One of the values; the default is . - to instructs the system to restrict instances of the service to one thread of execution at a time, which frees you from dealing with threading issues. This is the default value. A value of means that service objects can be executed by multiple threads at any one time. In this case, you must ensure thread safety and state consistency. - - also restricts access to a single thread at a time. However, it enables calls out from an executing service method to return and reenter the executing service. A reentrant call can execute on a different managed thread, but in this case the original thread is blocked for the duration of the reentrant call. - - Generally, if a message arrives for an instance that violates its concurrency mode, the message waits until the instance is available, or until it times out. - - In addition, if the is set to and a reentrant call is blocked while waiting for the instance to be freed, the system detects the deadlock and throws an exception. - - For more information about concurrency, see and [Sessions, Instancing, and Concurrency](/dotnet/framework/wcf/feature-details/sessions-instancing-and-concurrency). - + to instructs the system to restrict instances of the service to one thread of execution at a time, which frees you from dealing with threading issues. This is the default value. A value of means that service objects can be executed by multiple threads at any one time. In this case, you must ensure thread safety and state consistency. + + also restricts access to a single thread at a time. However, it enables calls out from an executing service method to return and reenter the executing service. A reentrant call can execute on a different managed thread, but in this case the original thread is blocked for the duration of the reentrant call. + + Generally, if a message arrives for an instance that violates its concurrency mode, the message waits until the instance is available, or until it times out. + + In addition, if the is set to and a reentrant call is blocked while waiting for the instance to be freed, the system detects the deadlock and throws an exception. + + For more information about concurrency, see and [Sessions, Instancing, and Concurrency](/dotnet/framework/wcf/feature-details/sessions-instancing-and-concurrency). + ]]> The value is not one of the values. @@ -327,15 +327,15 @@ if unknown serialization data is never sent; otherwise, . The default is . - interface, it stores any extra data it does not know about that comes over the wire when deserializing into that type. For example, if a type `Person` has members `FirstName` and `LastName`, and an element called `PhoneNumber` comes in, it is stored. When later serializing the type, `PhoneNumber` is re-emitted. The problem is that the schema for `Person` exported by that service only has `FirstName` and `LastName`, so Windows Communication Foundation (WCF) generates a schema-invalid instance. If strict schema compliance is important, you can set to `true` to turn this re-emitting behavior off. - - Regardless of the setting, WCF always processes known data (both in and out) and does not throw exceptions when extra data comes in. - - You can use the [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element to set this property in a client application configuration file. - + interface, it stores any extra data it does not know about that comes over the wire when deserializing into that type. For example, if a type `Person` has members `FirstName` and `LastName`, and an element called `PhoneNumber` comes in, it is stored. When later serializing the type, `PhoneNumber` is re-emitted. The problem is that the schema for `Person` exported by that service only has `FirstName` and `LastName`, so Windows Communication Foundation (WCF) generates a schema-invalid instance. If strict schema compliance is important, you can set to `true` to turn this re-emitting behavior off. + + Regardless of the setting, WCF always processes known data (both in and out) and does not throw exceptions when extra data comes in. + + You can use the [<callbackDebug>](/dotnet/framework/configure-apps/file-schema/wcf/callbackdebug) element to set this property in a client application configuration file. + ]]> @@ -377,22 +377,22 @@ if unhandled exceptions are to be returned as SOAP faults; otherwise, . The default is . - to `true` to enable exception information to flow back to services for debugging purposes when possible. This is a development-only feature and should not be employed in deployed services. These faults appear to the calling service as objects. - + to `true` to enable exception information to flow back to services for debugging purposes when possible. This is a development-only feature and should not be employed in deployed services. These faults appear to the calling service as objects. + > [!IMPORTANT] -> Setting to `true` enables services to obtain information about internal client callback exceptions; it is only recommended as a way of temporarily debugging a duplex client application. - - - -## Examples - The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. - +> Setting to `true` enables services to obtain information about internal client callback exceptions; it is only recommended as a way of temporarily debugging a duplex client application. + + + +## Examples + The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/callbackbehaviorattribute/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: + ]]> @@ -433,11 +433,11 @@ Gets or sets the maximum number of items allowed in a serialized object. The maximum number of items allowed in an object. The default is Int32.MaxValue. - property set a limit on the number of items in an object graph that are serialized. You can also use the [<dataContractSerializer>](/dotnet/framework/configure-apps/file-schema/wcf/datacontractserializer) element to set this value in a client application configuration file. - + property set a limit on the number of items in an object graph that are serialized. You can also use the [<dataContractSerializer>](/dotnet/framework/configure-apps/file-schema/wcf/datacontractserializer) element to set this value in a client application configuration file. + ]]> @@ -672,11 +672,11 @@ Specifies the transaction isolation level. A value that specifies the transaction isolation level. The default is . - , specifies that no updating or inserting can occur until the transaction is complete. - + , specifies that no updating or inserting can occur until the transaction is complete. + ]]> The value is not one of the values. @@ -714,11 +714,11 @@ Gets or sets the period within which a transaction must complete. A object that represents the time within which transactions must complete or be automatically aborted. The default value is . - @@ -774,21 +774,21 @@ if all calls to the service must run on the thread specified by the ; otherwise, . The default value is . - is set to `true`, synchronizes all calls to the service to run on the user interface thread. - - Note that the thread used is the current synchronization thread when or is called. In the case of an Windows Forms application, this means that these calls should occur after a call to the method. - - - -## Examples - The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. - + is set to `true`, synchronizes all calls to the service to run on the user interface thread. + + Note that the thread used is the current synchronization thread when or is called. In the case of an Windows Forms application, this means that these calls should occur after a call to the method. + + + +## Examples + The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/callbackbehaviorattribute/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: + ]]> @@ -830,19 +830,19 @@ if the system is to perform SOAP header processing; otherwise , which indicates that the application performs this processing. The default value is . - property to turn off the enforced validation of arriving message headers. In normal execution, message headers are compared against the property to confirm that arriving headers are explicitly handled by the callback object runtime. Set this to `false` to disable this checking. When set to `false`, the application must check for headers marked with MustUnderstand="true" and return a fault if one or more of them were not understood. This is useful when the callback is supposed to accept any incoming SOAP messages (for example, when using typed or untyped messages) and perform custom header processing. - - - -## Examples - The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. - + property to turn off the enforced validation of arriving message headers. In normal execution, message headers are compared against the property to confirm that arriving headers are explicitly handled by the callback object runtime. Set this to `false` to disable this checking. When set to `false`, the application must check for headers marked with MustUnderstand="true" and return a fault if one or more of them were not understood. This is useful when the callback is supposed to accept any incoming SOAP messages (for example, when using typed or untyped messages) and perform custom header processing. + + + +## Examples + The following code example shows a on a callback object that uses the object to determine which thread to marshal to, the property to enforce message validation, and the property to return exceptions as objects to the service for debugging purposes. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/callbackbehaviorattribute/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/callbackbehaviorattribute/vb/client.vb" id="Snippet3"::: + ]]> diff --git a/xml/System.ServiceModel/CommunicationState.xml b/xml/System.ServiceModel/CommunicationState.xml index 7bfafeab1fb..4070aa2e505 100644 --- a/xml/System.ServiceModel/CommunicationState.xml +++ b/xml/System.ServiceModel/CommunicationState.xml @@ -44,47 +44,47 @@ Defines the states in which an can exist. - interface. The state of an object can be obtained using the property. - - There are four main states and two transient states that a communication object can occupy. The main states are: - -- Created - -- Opened - -- Closed - -- Faulted - - The two transitory states that a communication object can occupy when transitioning between these main states are: - -- Opening - -- Closing - - The communication object can be configured in the Created state. For example, its properties can be changed, and its events can be registered. No input or output can occur in this state. So messages, for example, cannot be sent or received from a channel in this state. - - The Opening is a temporary state that the communication object enters when the method is invoked. Unless otherwise noted on derived classes, objects in the opening state cannot be configured. This transition state can only be entered from the Created state. - - Objects transition to the Opened state when the open process completes. This transition to the Opened state is only valid from the Opening state. Unless otherwise noted on derived classes, the configuration of the object is now disabled. At this point, the object is fully usable for message transfers. - - The Closing is a temporary state that the object enters when the method is invoked for a graceful shutdown or the object is aborted. At this point, the object becomes (if not already) unusable. This transition is valid from any state except the Closed state. - - The Closed state is equivalent to being disposed and the configuration of the object can still be inspected. - - The Faulted state is used to indicate that the object has transitioned to a state where it can no longer be used. There are two primary scenarios where this can happen: - -- If the method fails for any reason, the object transitions to the faulted state. - -- If a session-based channel detects an error that it cannot recover from, it transitions to the faulted state. This can happen for instance if there is a protocol error (that is, it receives a protocol message at an invalid time) or if the remote endpoint aborts the session. - - An object in the Faulted state is not closed and may be holding resources. The method should be used to close an object that has faulted. If is called on an object in the Faulted state, a is thrown because the object cannot be gracefully closed. - + interface. The state of an object can be obtained using the property. + + There are four main states and two transient states that a communication object can occupy. The main states are: + +- Created + +- Opened + +- Closed + +- Faulted + + The two transitory states that a communication object can occupy when transitioning between these main states are: + +- Opening + +- Closing + + The communication object can be configured in the Created state. For example, its properties can be changed, and its events can be registered. No input or output can occur in this state. So messages, for example, cannot be sent or received from a channel in this state. + + The Opening is a temporary state that the communication object enters when the method is invoked. Unless otherwise noted on derived classes, objects in the opening state cannot be configured. This transition state can only be entered from the Created state. + + Objects transition to the Opened state when the open process completes. This transition to the Opened state is only valid from the Opening state. Unless otherwise noted on derived classes, the configuration of the object is now disabled. At this point, the object is fully usable for message transfers. + + The Closing is a temporary state that the object enters when the method is invoked for a graceful shutdown or the object is aborted. At this point, the object becomes (if not already) unusable. This transition is valid from any state except the Closed state. + + The Closed state is equivalent to being disposed and the configuration of the object can still be inspected. + + The Faulted state is used to indicate that the object has transitioned to a state where it can no longer be used. There are two primary scenarios where this can happen: + +- If the method fails for any reason, the object transitions to the faulted state. + +- If a session-based channel detects an error that it cannot recover from, it transitions to the faulted state. This can happen for instance if there is a protocol error (that is, it receives a protocol message at an invalid time) or if the remote endpoint aborts the session. + + An object in the Faulted state is not closed and may be holding resources. The method should be used to close an object that has faulted. If is called on an object in the Faulted state, a is thrown because the object cannot be gracefully closed. + ]]> diff --git a/xml/System.ServiceModel/DeadLetterQueue.xml b/xml/System.ServiceModel/DeadLetterQueue.xml index a4d4fabe8b8..183d707f6f7 100644 --- a/xml/System.ServiceModel/DeadLetterQueue.xml +++ b/xml/System.ServiceModel/DeadLetterQueue.xml @@ -17,39 +17,39 @@ Specifies the type of dead-letter queue to be used. - enumeration specifies the type of dead-letter queue to use. The values are: - -- None: No dead-letter queue is required. If a message fails delivery, no record of it is maintained in the dead-letter queue. This is the default value when is set to `false`. - -- System: The system-wide, dead-letter queue is used to record messages that fail delivery. MSMQ has a transactional, system, dead-letter queue and a non-transactional, system, dead-letter queue to record expired messages that failed delivery from transactional and non-transactional queues, respectively. This is the default value when is set to `true`. - -- Custom: The queue specified in the is used to record messages that fail delivery. - - A message can fail to reach the receiving application for any of the following reasons: - -- A transactional message is sent to a non-transactional queue. - -- A non-transactional message is sent to a transactional queue. - -- An unauthenticated message is sent to a queue that accepts only authenticated messages. - -- An unencrypted message is sent to a queue that accepts only encrypted messages. - -- The message's time-to-live value expires before the message is delivered to a receiver. - -- The message storage quota of the target computer or the storage quota of the destination queue is exceeded, or there is no available storage space on the target computer when the message arrives. - -- The sender does not have the access rights required to place the message in the destination queue. - -- The digital signature attached to the message is not valid. - -- An encrypted message cannot be decrypted by the destination queue manager. - -- The destination queue is purged or deleted before the message is retrieved. - + enumeration specifies the type of dead-letter queue to use. The values are: + +- None: No dead-letter queue is required. If a message fails delivery, no record of it is maintained in the dead-letter queue. This is the default value when is set to `false`. + +- System: The system-wide, dead-letter queue is used to record messages that fail delivery. MSMQ has a transactional, system, dead-letter queue and a non-transactional, system, dead-letter queue to record expired messages that failed delivery from transactional and non-transactional queues, respectively. This is the default value when is set to `true`. + +- Custom: The queue specified in the is used to record messages that fail delivery. + + A message can fail to reach the receiving application for any of the following reasons: + +- A transactional message is sent to a non-transactional queue. + +- A non-transactional message is sent to a transactional queue. + +- An unauthenticated message is sent to a queue that accepts only authenticated messages. + +- An unencrypted message is sent to a queue that accepts only encrypted messages. + +- The message's time-to-live value expires before the message is delivered to a receiver. + +- The message storage quota of the target computer or the storage quota of the destination queue is exceeded, or there is no available storage space on the target computer when the message arrives. + +- The sender does not have the access rights required to place the message in the destination queue. + +- The digital signature attached to the message is not valid. + +- An encrypted message cannot be decrypted by the destination queue manager. + +- The destination queue is purged or deleted before the message is retrieved. + ]]> diff --git a/xml/System.ServiceModel/DeliveryRequirementsAttribute.xml b/xml/System.ServiceModel/DeliveryRequirementsAttribute.xml index 64496ca6a90..064db7b7aa6 100644 --- a/xml/System.ServiceModel/DeliveryRequirementsAttribute.xml +++ b/xml/System.ServiceModel/DeliveryRequirementsAttribute.xml @@ -55,25 +55,25 @@ Specifies the feature requirements that bindings must provide to the service or client implementation. - to instruct Windows Communication Foundation (WCF) to confirm that the binding provides the features required by the service or client implementation. If a attribute is detected when a service description is loaded from an application configuration file or built programmatically in code, WCF validates the configured binding and supports all the features that the attribute specifies. For example, your service may require the bindings to support queuing. Using allows WCF to confirm that the following requirements are met: - -- The property specifies the queuing requirements that a binding must meet. - -- The property indicates whether the binding must support ordered messaging. - -- The property indicates to which type the requirements apply. - - The attribute is applied to a class, which can implement any number of service contract interfaces. can be applied to all the contracts the class implements or to only one of them. The attribute can be applied to a class more than once. - - - -## Examples + to instruct Windows Communication Foundation (WCF) to confirm that the binding provides the features required by the service or client implementation. If a attribute is detected when a service description is loaded from an application configuration file or built programmatically in code, WCF validates the configured binding and supports all the features that the attribute specifies. For example, your service may require the bindings to support queuing. Using allows WCF to confirm that the following requirements are met: + +- The property specifies the queuing requirements that a binding must meet. + +- The property indicates whether the binding must support ordered messaging. + +- The property indicates to which type the requirements apply. + + The attribute is applied to a class, which can implement any number of service contract interfaces. can be applied to all the contracts the class implements or to only one of them. The attribute can be applied to a class more than once. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uedeliveryrequirementsattribute/cs/snippet1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet1.vb" id="Snippet1"::: + ]]> @@ -108,15 +108,15 @@ Initializes a new instance of the class. - property is set to . - -- The property is set to `false`. - + property is set to . + +- The property is set to `false`. + ]]> @@ -155,19 +155,19 @@ Specifies whether the binding for a service must support queued contracts. One of the values; the default is . - instructs WCF to confirm that the binding supports queued delivery. The value instructs WCF to confirm that the binding does not support queued delivery. - - - -## Examples - The following code example uses the attribute to instruct WCF to confirm at runtime that the actual binding does not support queued contracts but does support ordered messages. - + instructs WCF to confirm that the binding supports queued delivery. The value instructs WCF to confirm that the binding does not support queued delivery. + + + +## Examples + The following code example uses the attribute to instruct WCF to confirm at runtime that the actual binding does not support queued contracts but does support ordered messages. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uedeliveryrequirementsattribute/cs/snippet1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet1.vb" id="Snippet1"::: + ]]> The value is not one of the values. @@ -212,19 +212,19 @@ instructs Windows Communication Foundation (WCF) to confirm that the binding must support the ordering of messages; otherwise, . The default is . - property to `false` instructs WCF to perform no validation. - - - -## Examples - The following code example uses the attribute to instruct WCF to confirm at runtime that the actual binding does support ordered messages. - + property to `false` instructs WCF to perform no validation. + + + +## Examples + The following code example uses the attribute to instruct WCF to confirm at runtime that the actual binding does support ordered messages. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uedeliveryrequirementsattribute/cs/snippet1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet1.vb" id="Snippet1"::: + ]]> @@ -454,19 +454,19 @@ Gets or sets the type to which it applies. The to which the attribute applies. - property to validate that endpoints with the have bindings that support the requirements. This attribute can be used any number of times on the same class. - - - -## Examples - The following code example uses the attribute to instruct WCF to confirm at runtime that the actual binding does not support queued contracts but does support ordered messages. It also specifies the target contract to which this restriction should be applied. - + property to validate that endpoints with the have bindings that support the requirements. This attribute can be used any number of times on the same class. + + + +## Examples + The following code example uses the attribute to instruct WCF to confirm at runtime that the actual binding does not support queued contracts but does support ordered messages. It also specifies the target contract to which this restriction should be applied. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uedeliveryrequirementsattribute/cs/snippet2.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet2.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uedeliveryrequirementsattribute/vb/snippet2.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.ServiceModel/FaultCode.xml b/xml/System.ServiceModel/FaultCode.xml index 06af40b867c..6af6a0ee542 100644 --- a/xml/System.ServiceModel/FaultCode.xml +++ b/xml/System.ServiceModel/FaultCode.xml @@ -50,9 +50,9 @@ ## Remarks Fault code provides a machine-readable identifier that can be used to programmatically identify the error condition and respond as appropriate. The SOAP specifications define the following fault codes specific to SOAP 1.1 and 1.2. -- SOAP 1.1. `VersionMismatch`, `MustUnderstand`, `Client`, and `Server`. +- SOAP 1.1. `VersionMismatch`, `MustUnderstand`, `Client`, and `Server`. -- SOAP 1.2. `VersionMismatch`, `MustUnderstand`, `DataEncodingUnknown`, `Sender`, and `Receiver`. +- SOAP 1.2. `VersionMismatch`, `MustUnderstand`, `DataEncodingUnknown`, `Sender`, and `Receiver`. In addition to those fault codes defined by the SOAP specifications, Windows Communication Foundation (WCF) uses fault codes defined by each Web services specification that it implements. diff --git a/xml/System.ServiceModel/FaultContractAttribute.xml b/xml/System.ServiceModel/FaultContractAttribute.xml index 520f3809347..6b32c1e58a1 100644 --- a/xml/System.ServiceModel/FaultContractAttribute.xml +++ b/xml/System.ServiceModel/FaultContractAttribute.xml @@ -51,79 +51,79 @@ Specifies one or more SOAP faults that are returned when a service operation encounters processing errors. - attribute to declare one or more specific exception conditions that are added to the Web Service Description Language (WSDL) description of the service operation as explicit SOAP fault messages returned by the operation. - - In all managed applications, processing errors are represented by objects. In SOAP-based applications such as Windows Communication Foundation (WCF) applications, service methods communicate processing error information using SOAP fault messages. Because WCF applications execute under both types of error systems, any managed exception information that must be sent to the client must be converted from exceptions into SOAP faults. You can use the default service exception behaviors, or you can explicitly control whether -- and how -- exceptions are mapped to fault messages. For an overview of exceptions and SOAP faults in WCF applications, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). - - It is recommended that service operations use the to formally specify all SOAP faults that a client can expect to receive in the normal course of an operation. It is also recommended that only that information a client must know is returned in a SOAP fault to minimize information disclosure. - -- The property controls the action of the fault message. - -- The property gets the type of the detail object serialized in the fault message. - -- The and properties control the name and namespace, respectively, of the fault message. - -- The indicates whether the fault message has a protection level specified, and if so, the property controls that level of protection. - + attribute to declare one or more specific exception conditions that are added to the Web Service Description Language (WSDL) description of the service operation as explicit SOAP fault messages returned by the operation. + + In all managed applications, processing errors are represented by objects. In SOAP-based applications such as Windows Communication Foundation (WCF) applications, service methods communicate processing error information using SOAP fault messages. Because WCF applications execute under both types of error systems, any managed exception information that must be sent to the client must be converted from exceptions into SOAP faults. You can use the default service exception behaviors, or you can explicitly control whether -- and how -- exceptions are mapped to fault messages. For an overview of exceptions and SOAP faults in WCF applications, see [Specifying and Handling Faults in Contracts and Services](/dotnet/framework/wcf/specifying-and-handling-faults-in-contracts-and-services). + + It is recommended that service operations use the to formally specify all SOAP faults that a client can expect to receive in the normal course of an operation. It is also recommended that only that information a client must know is returned in a SOAP fault to minimize information disclosure. + +- The property controls the action of the fault message. + +- The property gets the type of the detail object serialized in the fault message. + +- The and properties control the name and namespace, respectively, of the fault message. + +- The indicates whether the fault message has a protection level specified, and if so, the property controls that level of protection. + > [!CAUTION] -> If a fault message carries information that is sensitive or can lead to security problems, it is strongly recommended that the property be set. - -- If you set the explicitly to either or , then you must use a binding with security enabled using the property on the binding or an exception is thrown. - -- If you select a binding that enables security and you do not set the property anywhere on the contract, all application data will be encrypted and signed. - -- If you select a binding that does not have security enabled (for example, the has security disabled by default), and the is not explicitly set, then none of the application data will be protected. - - For many scenarios setting to for fault messages is sufficient. For more details, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). - - To return a specified fault from an operation marked with , throw a (where the type parameter is the serializable error information) when the managed exception occurs during the operation. WCF client applications surface the SOAP fault as the same type as was thrown in the client implementation -- that is, as a (where the typeparameter is the serializable error information). The can be used only to specify SOAP faults for two-way service operations and for asynchronous operation pairs; one-way operations do not support SOAP faults and therefore do not support . - +> If a fault message carries information that is sensitive or can lead to security problems, it is strongly recommended that the property be set. + +- If you set the explicitly to either or , then you must use a binding with security enabled using the property on the binding or an exception is thrown. + +- If you select a binding that enables security and you do not set the property anywhere on the contract, all application data will be encrypted and signed. + +- If you select a binding that does not have security enabled (for example, the has security disabled by default), and the is not explicitly set, then none of the application data will be protected. + + For many scenarios setting to for fault messages is sufficient. For more details, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). + + To return a specified fault from an operation marked with , throw a (where the type parameter is the serializable error information) when the managed exception occurs during the operation. WCF client applications surface the SOAP fault as the same type as was thrown in the client implementation -- that is, as a (where the typeparameter is the serializable error information). The can be used only to specify SOAP faults for two-way service operations and for asynchronous operation pairs; one-way operations do not support SOAP faults and therefore do not support . + > [!NOTE] -> You can use any serializable type to convey error information. The only restriction in this version of WCF is that types specified in a must be serializable by the . For the serialization support the provides, see [Data Contract Serializer](/dotnet/framework/wcf/feature-details/data-contract-serializer). - - For example, to specify that clients can expect a SOAP fault that contains an , place that type parameter in the on your service method. - +> You can use any serializable type to convey error information. The only restriction in this version of WCF is that types specified in a must be serializable by the . For the serialization support the provides, see [Data Contract Serializer](/dotnet/framework/wcf/feature-details/data-contract-serializer). + + For example, to specify that clients can expect a SOAP fault that contains an , place that type parameter in the on your service method. + > [!NOTE] -> The following code examples do not set the , , or properties. - +> The following code examples do not set the , , or properties. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/c_fca/cs/fcademo.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_fca/vb/fcademo.vb" id="Snippet1"::: - - Then, in your service method, throw a new where the type parameter is the type that contains the error information (in the above case, a ). For example: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_fca/vb/fcademo.vb" id="Snippet1"::: + + Then, in your service method, throw a new where the type parameter is the type that contains the error information (in the above case, a ). For example: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/c_fca/cs/fcademo.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_fca/vb/fcademo.vb" id="Snippet2"::: - - The preceding example is very basic; almost any information can be passed using an code, so this detail type is not the most useful. Typically, WCF applications specify SOAP faults with detail types specific to the error information requirements of the client. For a more complete example, see the Example section. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/c_fca/vb/fcademo.vb" id="Snippet2"::: + + The preceding example is very basic; almost any information can be passed using an code, so this detail type is not the most useful. Typically, WCF applications specify SOAP faults with detail types specific to the error information requirements of the client. For a more complete example, see the Example section. + > [!NOTE] -> If you specify a where the type parameter is a , the string value is assigned to the Detail property in the client application; clients cannot retrieve that string by calling the method. To have the string value returned when the client application calls , throw a exception inside the operation and pass the string to the constructor. - - To explicitly control the behavior of the application when an exception or is thrown, implement the interface on an , or and assign it to the property. enables you to explicitly control the SOAP fault that is generated and whether to send it back to the client. - - To facilitate debugging, set the to `true` in code or you can use the in an application configuration file. When enabled, the service automatically returns exception information to the caller. These faults appear to the client as exceptions. - +> If you specify a where the type parameter is a , the string value is assigned to the Detail property in the client application; clients cannot retrieve that string by calling the method. To have the string value returned when the client application calls , throw a exception inside the operation and pass the string to the constructor. + + To explicitly control the behavior of the application when an exception or is thrown, implement the interface on an , or and assign it to the property. enables you to explicitly control the SOAP fault that is generated and whether to send it back to the client. + + To facilitate debugging, set the to `true` in code or you can use the in an application configuration file. When enabled, the service automatically returns exception information to the caller. These faults appear to the client as exceptions. + > [!IMPORTANT] -> Because managed exceptions can expose internal application information, setting or to `true` can permit WCF clients to obtain information about internal service operation exceptions, including personally identifiable or other sensitive information. -> -> Therefore, setting or to `true` is only recommended as a way of temporarily debugging a service application. In addition, the WSDL for a method that returns unhandled managed exceptions in this way does not contain the contract for the of type . Clients must expect the possibility of an unknown SOAP fault (returned to WCF clients as objects) to obtain the debugging information properly. - - - -## Examples - The following code example shows the use of to specify that the `SampleMethod` operation can return a SOAP fault with the detail type of `GreetingFault`. - +> Because managed exceptions can expose internal application information, setting or to `true` can permit WCF clients to obtain information about internal service operation exceptions, including personally identifiable or other sensitive information. +> +> Therefore, setting or to `true` is only recommended as a way of temporarily debugging a service application. In addition, the WSDL for a method that returns unhandled managed exceptions in this way does not contain the contract for the of type . Clients must expect the possibility of an unknown SOAP fault (returned to WCF clients as objects) to obtain the debugging information properly. + + + +## Examples + The following code example shows the use of to specify that the `SampleMethod` operation can return a SOAP fault with the detail type of `GreetingFault`. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/faultcontractattribute/cs/Host/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/services.vb" id="Snippet1"::: - - The following code example shows that WCF clients of `ISampleService` experience this SOAP fault as a of type `GreetingFault`. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/services.vb" id="Snippet1"::: + + The following code example shows that WCF clients of `ISampleService` experience this SOAP fault as a of type `GreetingFault`. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/faultcontractattribute/cs/Client/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/client.vb" id="Snippet3"::: + ]]> @@ -160,19 +160,19 @@ The serializable type that contains error information for the caller. Initializes a new instance of the class. - to specify that the `SampleMethod` operation can return a SOAP fault with the detail type of `GreetingFault`. - + to specify that the `SampleMethod` operation can return a SOAP fault with the detail type of `GreetingFault`. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/faultcontractattribute/cs/Host/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/services.vb" id="Snippet1"::: + ]]> The argument is . @@ -216,11 +216,11 @@ Gets or sets the action of the SOAP fault message that is specified as part of the operation contract. The value of the action for the SOAP fault message. - @@ -263,14 +263,14 @@ Gets the type of a serializable object that contains error information. The type that represents the serializable error class. - to specify that the `SampleMethod` operation can return a SOAP fault with the detail type of `GreetingFault`. - + to specify that the `SampleMethod` operation can return a SOAP fault with the detail type of `GreetingFault`. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/faultcontractattribute/cs/Host/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/faultcontractattribute/vb/services.vb" id="Snippet1"::: + ]]> @@ -310,11 +310,11 @@ if the fault message has a protection level; otherwise, . The default is . - property to specify whether the SOAP fault message must be encrypted, signed, or both. See the property for details. - + property to specify whether the SOAP fault message must be encrypted, signed, or both. See the property for details. + ]]> @@ -433,31 +433,31 @@ Specifies the level of protection the SOAP fault requires from the binding. One of the values. The default is . - property to specify the degree to which the binding must encrypt, sign, or both when sending the SOAP fault. It is strongly recommended that an operation's fault explicitly decide the security protection level requirements on the contract. The default protection level is , meaning that the SOAP fault message you are defining does not require encryption or a digital signature (although your binding may provide this support if it is configured to do so). If a fault message carries information that is sensitive or can lead to security problems, it is strongly recommended that the property be set to . For more about security issues, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). - - The protection behavior at runtime is the combination of the protection-level properties that have a hierarchical structure. Setting the outermost value establishes the default setting for all narrower scopes unless a different value for a narrower scope is explicitly set. In this case, the outer value remains the default for all narrower scopes with the exception of that specifically set. - - For example, if is set to and no other narrower scopes have protection level settings, all messages in an operation contract are encrypted and signed, including fault messages. If, however, one of those operations has the set to , then the messages for that operation are signed but all other messages in the contract are encrypted and signed, including fault messages. - - The scopes at which these values are set are: - - - - - - - - - - The property on . - - The property on . - - When there is no protection level explicitly specified on the contract and the underlying binding supports security (whether at the transport or message level), the effective protection level for the whole contract is . If the binding does not support security (such as ), the effective is for the whole contract. The result is that depending upon the endpoint binding, clients can require different message or transport level security protection even when the contract specifies . - + property to specify the degree to which the binding must encrypt, sign, or both when sending the SOAP fault. It is strongly recommended that an operation's fault explicitly decide the security protection level requirements on the contract. The default protection level is , meaning that the SOAP fault message you are defining does not require encryption or a digital signature (although your binding may provide this support if it is configured to do so). If a fault message carries information that is sensitive or can lead to security problems, it is strongly recommended that the property be set to . For more about security issues, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). + + The protection behavior at runtime is the combination of the protection-level properties that have a hierarchical structure. Setting the outermost value establishes the default setting for all narrower scopes unless a different value for a narrower scope is explicitly set. In this case, the outer value remains the default for all narrower scopes with the exception of that specifically set. + + For example, if is set to and no other narrower scopes have protection level settings, all messages in an operation contract are encrypted and signed, including fault messages. If, however, one of those operations has the set to , then the messages for that operation are signed but all other messages in the contract are encrypted and signed, including fault messages. + + The scopes at which these values are set are: + + + + + + + + + + The property on . + + The property on . + + When there is no protection level explicitly specified on the contract and the underlying binding supports security (whether at the transport or message level), the effective protection level for the whole contract is . If the binding does not support security (such as ), the effective is for the whole contract. The result is that depending upon the endpoint binding, clients can require different message or transport level security protection even when the contract specifies . + ]]> diff --git a/xml/System.ServiceModel/FaultException.xml b/xml/System.ServiceModel/FaultException.xml index d33f1069c42..467123647fd 100644 --- a/xml/System.ServiceModel/FaultException.xml +++ b/xml/System.ServiceModel/FaultException.xml @@ -80,9 +80,9 @@ In general, it is strongly recommended that you use the to design your services to return strongly-typed SOAP faults (and not managed exception objects) for all fault cases in which you decide the client requires fault information. However, use the in the following situations: -- To send SOAP faults from a service for debugging purposes. +- To send SOAP faults from a service for debugging purposes. -- To catch SOAP faults on a client when the faults are not part of the service contract. +- To catch SOAP faults on a client when the faults are not part of the service contract. Throw objects when you want the string to be passed to the constructor and retrieved by the client by calling the method. If you specify a fault contract of type where the type parameter is , the string value is available as the property and not by calling . diff --git a/xml/System.ServiceModel/FaultReason.xml b/xml/System.ServiceModel/FaultReason.xml index ccfff557d01..4626b58fed4 100644 --- a/xml/System.ServiceModel/FaultReason.xml +++ b/xml/System.ServiceModel/FaultReason.xml @@ -45,11 +45,11 @@ Provides a text description of a SOAP fault. - class contains a set of objects, each of which contains a description of the fault in a specific language. - + class contains a set of objects, each of which contains a description of the fault in a specific language. + ]]> @@ -213,19 +213,19 @@ Gets the fault description in the language used by the current thread. A object that contains the fault description. - , that is returned. - -- If there is a translation for a parent language of , that is returned. - -- Otherwise, the first translation in the set is returned. - + , that is returned. + +- If there is a translation for a parent language of , that is returned. + +- Otherwise, the first translation in the set is returned. + ]]> @@ -266,19 +266,19 @@ Gets the fault description in the specified language. The fault text in the specified language. - , that is returned. - -- If there is a translation for a parent language of , that is returned. - -- Otherwise, the first translation in the set is returned. - + , that is returned. + +- If there is a translation for a parent language of , that is returned. + +- Otherwise, the first translation in the set is returned. + ]]> The is . diff --git a/xml/System.ServiceModel/ICommunicationObject.xml b/xml/System.ServiceModel/ICommunicationObject.xml index 392cb66145d..b97d39f0595 100644 --- a/xml/System.ServiceModel/ICommunicationObject.xml +++ b/xml/System.ServiceModel/ICommunicationObject.xml @@ -43,43 +43,43 @@ Defines the contract for the basic state machine for all communication-oriented objects in the system, including channels, the channel managers, factories, listeners, and dispatchers, and service hosts. - interface defines: - -- A set of open, close and abort methods for initiating state transitions: - - - - - - - - - - -- Asynchronous versions of the open and close methods: - - - - - - - - - - - - - -- A set of events that provide notifications of state transitions: - - - - - - - - - - - - - - - - -- A common property for inspecting the state of an object - + interface defines: + +- A set of open, close and abort methods for initiating state transitions: + + - + + - + + - + +- Asynchronous versions of the open and close methods: + + - + + - + + - + + - + +- A set of events that provide notifications of state transitions: + + - + + - + + - + + - + + - + +- A common property for inspecting the state of an object + ]]> @@ -116,13 +116,13 @@ Causes a communication object to transition immediately from its current state into the closed state. - method can be used to cancel any outstanding operations, including outstanding calls to . - - To gracefully transition an from the state to the state call . - + method can be used to cancel any outstanding operations, including outstanding calls to . + + To gracefully transition an from the state to the state call . + ]]> @@ -136,13 +136,13 @@ Begins an asynchronous operation to close a communication object. - to gracefully transition from the state to the state. - - Versions with and without an explicit timeout are provided. - + to gracefully transition from the state to the state. + + Versions with and without an explicit timeout are provided. + ]]> @@ -185,11 +185,11 @@ Begins an asynchronous operation to close a communication object. The that references the asynchronous close operation. - to gracefully transition from any state, other than the state to the state. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). - + to gracefully transition from any state, other than the state to the state. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). + ]]> @@ -237,11 +237,11 @@ Begins an asynchronous operation to close a communication object with a specified timeout. The that references the asynchronous close operation. - to gracefully transition from any state, other than the state to the state with in a specified interval of time. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). - + to gracefully transition from any state, other than the state to the state with in a specified interval of time. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). + ]]> @@ -258,13 +258,13 @@ Begins an asynchronous operation to open a communication object. - method causes an to enter into the state where it remains until its transition to the state is completed or fails. - - Versions with and without an explicit timeout are provided. - + method causes an to enter into the state where it remains until its transition to the state is completed or fails. + + Versions with and without an explicit timeout are provided. + ]]> @@ -307,13 +307,13 @@ Begins an asynchronous operation to open a communication object. The that references the asynchronous open operation. - is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. - - In the state, the is usable (for example, messages can be received), but it is no longer configurable. - + is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. + + In the state, the is usable (for example, messages can be received), but it is no longer configurable. + ]]> The was unable to be opened and has entered the state. @@ -360,13 +360,13 @@ Begins an asynchronous operation to open a communication object within a specified interval of time. The that references the asynchronous open operation. - is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. - - In the state, the is usable (for example, messages can be received), but it is no longer configurable. - + is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. + + In the state, the is usable (for example, messages can be received), but it is no longer configurable. + ]]> The was unable to be opened and has entered the state. @@ -418,21 +418,21 @@ Causes a communication object to transition from its current state into the closed state. - to gracefully transition from the state to the state. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). - - The enters the state and remains in it until the transition to the state is completed. - - returns once the state is reached. - - If the default close timeout elapses before the is able to close gracefully, the is aborted. - - If is called on an in the , , or state, the is aborted. If is called on an in the or state, the call returns immediately. - - There is also an asynchronous version of the close method that is initiated by calling and completed by calling . - + to gracefully transition from the state to the state. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). + + The enters the state and remains in it until the transition to the state is completed. + + returns once the state is reached. + + If the default close timeout elapses before the is able to close gracefully, the is aborted. + + If is called on an in the , , or state, the is aborted. If is called on an in the or state, the call returns immediately. + + There is also an asynchronous version of the close method that is initiated by calling and completed by calling . + ]]> @@ -475,21 +475,21 @@ The that specifies how long the send operation has to complete before timing out. Causes a communication object to transition from its current state into the closed state. - to gracefully transition from the state to the state within a specified interval of time. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). - - The enters the state and remains in it until the transition to the state is completed. - - returns once the state is reached. - - If the timeout elapses before the is able to gracefully close, the is aborted. - - If is called on an in the , , or state, the is aborted. If is called on an in the or state, the call returns immediately. - - There is also an asynchronous version of the close method that is initiated by calling and completed by calling . - + to gracefully transition from the state to the state within a specified interval of time. The method allows any unfinished work to be completed before returning. For example, finish sending any buffered messages). + + The enters the state and remains in it until the transition to the state is completed. + + returns once the state is reached. + + If the timeout elapses before the is able to gracefully close, the is aborted. + + If is called on an in the , , or state, the is aborted. If is called on an in the or state, the call returns immediately. + + There is also an asynchronous version of the close method that is initiated by calling and completed by calling . + ]]> @@ -564,11 +564,11 @@ Occurs when the communication object first enters the closing state. - state into the state, immediately after either the or method is invoked. - + state into the state, immediately after either the or method is invoked. + ]]> @@ -694,11 +694,11 @@ Causes a communication object to transition from the created state into the opened state. - @@ -735,15 +735,15 @@ Causes a communication object to transition from the created state into the opened state. - is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. - - In the state, the is usable (for example, messages can be received), but it is no longer configurable. - - There is also an asynchronous version of the open method that is initiated by calling and completed by calling . - + is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. + + In the state, the is usable (for example, messages can be received), but it is no longer configurable. + + There is also an asynchronous version of the open method that is initiated by calling and completed by calling . + ]]> The was unable to be opened and has entered the state. @@ -785,15 +785,15 @@ The that specifies how long the send operation has to complete before timing out. Causes a communication object to transition from the created state into the opened state within a specified interval of time. - is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. - - In the state, the is usable (for example, messages can be received), but it is no longer configurable. - - There is also an asynchronous version of the open method that is initiated by calling and completed by calling . - + is instantiated, it begins in the state. In the state, the object can be configured (for example, properties can be set, or events can be registered), but it is not yet usable to send or receive messages. The method causes an to enter into the state where it remains until the open operation succeeds, the open operation times out or fails and the object becomes faulted, or the is aborted. + + In the state, the is usable (for example, messages can be received), but it is no longer configurable. + + There is also an asynchronous version of the open method that is initiated by calling and completed by calling . + ]]> The was unable to be opened and has entered the state. @@ -867,11 +867,11 @@ Occurs when the communication object first enters the opening state. - state into the state, immediately after either the or method is invoked. - + state into the state, immediately after either the or method is invoked. + ]]> @@ -908,25 +908,25 @@ Gets the current state of the communication-oriented object. The value of the of the object. - are: - -- - -- - -- - - There are also transitory states that such an object can occupy when transitioning between the first three main states: - -- - -- - - This defines the states that are valid for all communication-oriented objects in the system, including channels, listeners, the channel and listener factories, and the class. - + are: + +- + +- + +- + + There are also transitory states that such an object can occupy when transitioning between the first three main states: + +- + +- + + This defines the states that are valid for all communication-oriented objects in the system, including channels, listeners, the channel and listener factories, and the class. + ]]> diff --git a/xml/System.ServiceModel/MessageContractAttribute.xml b/xml/System.ServiceModel/MessageContractAttribute.xml index 2c67e7eae43..f1b8e16aabe 100644 --- a/xml/System.ServiceModel/MessageContractAttribute.xml +++ b/xml/System.ServiceModel/MessageContractAttribute.xml @@ -51,35 +51,35 @@ Defines a strongly-typed class that corresponds to a SOAP message. - attribute to specify the structure of the SOAP envelope for a particular message. Your service can then use the message as a parameter or return type in service operations. For information about controlling the serialization of the contents of a SOAP body without modifying the default SOAP envelope itself, see , [Specifying Data Transfer in Service Contracts](/dotnet/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts), and [Using Data Contracts](/dotnet/framework/wcf/feature-details/using-data-contracts). - + attribute to specify the structure of the SOAP envelope for a particular message. Your service can then use the message as a parameter or return type in service operations. For information about controlling the serialization of the contents of a SOAP body without modifying the default SOAP envelope itself, see , [Specifying Data Transfer in Service Contracts](/dotnet/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts), and [Using Data Contracts](/dotnet/framework/wcf/feature-details/using-data-contracts). + > [!NOTE] -> You cannot use custom message types in your service operation with regular serializable parameters. Either use custom message types or serializable parameters that are not objects. For details, see , [Specifying Data Transfer in Service Contracts](/dotnet/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts). - - To implement a message contract for a type, annotate it with and annotate one or more of the class's fields or properties with , , or . - +> You cannot use custom message types in your service operation with regular serializable parameters. Either use custom message types or serializable parameters that are not objects. For details, see , [Specifying Data Transfer in Service Contracts](/dotnet/framework/wcf/feature-details/specifying-data-transfer-in-service-contracts). + + To implement a message contract for a type, annotate it with and annotate one or more of the class's fields or properties with , , or . + > [!NOTE] -> is not a message contract attribute and cannot be used in conjunction with . - - Use the and properties to specify the value of the `` element in the SOAP message. - -- Use the and properties to indicate whether the SOAP message type has a protection level, and if so, what it is. - -- Use the property to indicate whether the message body has a wrapper element, and if so, use the and properties to specify the name and namespace, respectively, of the wrapping element. - - For more information, see [Using Message Contracts](/dotnet/framework/wcf/feature-details/using-message-contracts). - - - -## Examples - The following code example shows the use of the to control the SOAP envelope structure for both the request message and the response message, and the use of both the (to create a SOAP header for the response message) and the (to specify the bodies of both the request and response message). The code example contains an example of each message when sent. - +> is not a message contract attribute and cannot be used in conjunction with . + + Use the and properties to specify the value of the `` element in the SOAP message. + +- Use the and properties to indicate whether the SOAP message type has a protection level, and if so, what it is. + +- Use the property to indicate whether the message body has a wrapper element, and if so, use the and properties to specify the name and namespace, respectively, of the wrapping element. + + For more information, see [Using Message Contracts](/dotnet/framework/wcf/feature-details/using-message-contracts). + + + +## Examples + The following code example shows the use of the to control the SOAP envelope structure for both the request message and the response message, and the use of both the (to create a SOAP header for the response message) and the (to specify the bodies of both the request and response message). The code example contains an example of each message when sent. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/messageheaderattribute/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/messageheaderattribute/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/messageheaderattribute/vb/services.vb" id="Snippet1"::: + ]]> @@ -149,11 +149,11 @@ if the message must be encrypted, signed, or both; otherwise . The default is . - . For details about protection levels and their assumptions and scopes, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). - + . For details about protection levels and their assumptions and scopes, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). + ]]> @@ -201,11 +201,11 @@ if the message body has a wrapper element; otherwise, . The default is . - to `false` to suppress the wrapper element into which the message body is serialized. - + to `false` to suppress the wrapper element into which the message body is serialized. + ]]> @@ -244,11 +244,11 @@ Gets or sets a value that specified whether the message must be encrypted, signed, or both. One of the values. The default is . - The value passed to the property when the setting is not one of the values. @@ -292,11 +292,11 @@ Gets or sets the name of the wrapper element of the message body. The name of the wrapper element in the message body. - property to set the name of the wrapper element. - + property to set the name of the wrapper element. + ]]> The value is . @@ -341,19 +341,19 @@ Gets or sets the namespace of the message body wrapper element. The wrapper element namespace. - property to set the namespace of the wrapper element. - - - -## Examples - The following code example shows the use of the to control the SOAP envelope structure for both the request message and the response message, and the use of both the (to create a SOAP header for the response message) and the (to specify the bodies of both the request and response message). The code example contains an example of each message when sent. - + property to set the namespace of the wrapper element. + + + +## Examples + The following code example shows the use of the to control the SOAP envelope structure for both the request message and the response message, and the use of both the (to create a SOAP header for the response message) and the (to specify the bodies of both the request and response message). The code example contains an example of each message when sent. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/messageheaderattribute/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/messageheaderattribute/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/messageheaderattribute/vb/services.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.ServiceModel/MessageSecurityOverMsmq.xml b/xml/System.ServiceModel/MessageSecurityOverMsmq.xml index cc80d47ec76..b59fc152230 100644 --- a/xml/System.ServiceModel/MessageSecurityOverMsmq.xml +++ b/xml/System.ServiceModel/MessageSecurityOverMsmq.xml @@ -17,17 +17,17 @@ Enables setting message-level security properties on the binding. - property, which returns a object. This object has a property that provides a reference to the object. - - - -## Examples + property, which returns a object. This object has a property that provides a reference to the object. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uemessagesecurityovermsmq/cs/program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uemessagesecurityovermsmq/vb/program.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uemessagesecurityovermsmq/vb/program.vb" id="Snippet1"::: + ]]> @@ -79,17 +79,17 @@ Specifies the algorithm suite used for security messages at the SOAP level. The setting for messages sent over the binding. - defines of a variety of algorithms such as Canonicalization, Digest, KeyWrap, Signature, Encryption, and KeyDerivation algorithms. This property is most relevant when working with a platform that uses a set of algorithms different than the default. You should be aware of the strengths and weaknesses of the relevant algorithms when making modifications to this property. - - - -## Examples + defines of a variety of algorithms such as Canonicalization, Digest, KeyWrap, Signature, Encryption, and KeyDerivation algorithms. This property is most relevant when working with a platform that uses a set of algorithms different than the default. You should be aware of the strengths and weaknesses of the relevant algorithms when making modifications to this property. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uemessagesecurityovermsmq/cs/program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uemessagesecurityovermsmq/vb/program.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uemessagesecurityovermsmq/vb/program.vb" id="Snippet2"::: + ]]> @@ -124,32 +124,32 @@ Gets or sets the security setting for messages sent over the MSMQ transport. The security setting for messages sent over the MSMQ transport. - class. - + class. + > [!NOTE] -> WCF does not support sending a password digest or deriving keys using password and using such keys for message security. As such, WCF enforces that the exchange is secured when using UserName credentials. This mode requires that the service certificate be specified on the client using `ClientCredential` behavior and `serviceCertificate`: - -- `Certificate`: This allows the service to require that the client be authenticated using a certificate. The client credential in this case must be specified using class or `ClientCredentials` behavior. The service credential in this case must be specified using class or `ClientCredentials` behavior by specifying the `serviceCertificate`. - -- `InfoCard`: This allows the service to require that the client be authenticated using an InfoCard. The `serviceCertificate` must be provisioned in the `ClientCredential` behavior. - -- The Certificate credential for the `MessageSecurityOverMsmq` is relevant only when the security mode is set to `Both` or `Message`. - - - -## Examples +> WCF does not support sending a password digest or deriving keys using password and using such keys for message security. As such, WCF enforces that the exchange is secured when using UserName credentials. This mode requires that the service certificate be specified on the client using `ClientCredential` behavior and `serviceCertificate`: + +- `Certificate`: This allows the service to require that the client be authenticated using a certificate. The client credential in this case must be specified using class or `ClientCredentials` behavior. The service credential in this case must be specified using class or `ClientCredentials` behavior by specifying the `serviceCertificate`. + +- `InfoCard`: This allows the service to require that the client be authenticated using an InfoCard. The `serviceCertificate` must be provisioned in the `ClientCredential` behavior. + +- The Certificate credential for the `MessageSecurityOverMsmq` is relevant only when the security mode is set to `Both` or `Message`. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uemessagesecurityovermsmq/cs/program.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uemessagesecurityovermsmq/vb/program.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uemessagesecurityovermsmq/vb/program.vb" id="Snippet3"::: + ]]> diff --git a/xml/System.ServiceModel/MsmqBindingBase.xml b/xml/System.ServiceModel/MsmqBindingBase.xml index f11dbe05eb8..aed1170967e 100644 --- a/xml/System.ServiceModel/MsmqBindingBase.xml +++ b/xml/System.ServiceModel/MsmqBindingBase.xml @@ -21,11 +21,11 @@ The base class for and . - and . All of the fundamental concepts in queuing are displayed in the form of properties. - + and . All of the fundamental concepts in queuing are displayed in the form of properties. + ]]> @@ -80,15 +80,15 @@ Gets or sets a URI that contains the location of the dead-letter queue for each application, where messages that have expired or that have failed transfer or delivery are placed. The that contains the location of the dead-letter queue for each application. The default value is . - must use the net.msmq scheme. - - If is set to or , then must be set to `null`. If is not `null`, then must be set to . - + must use the net.msmq scheme. + + If is set to or , then must be set to `null`. If is not `null`, then must be set to . + ]]> @@ -119,39 +119,39 @@ Gets or sets an enumeration value that indicates the type of dead-letter queue to use. A enumeration value that indicates the type of dead-letter queue to use. - is set to `false`. - -- `System`: The system-wide dead-letter queue is used to record messages that fail delivery. Message Queuing (MSMQ) has a transactional, system, dead-letter queue and a non-transactional, system, dead-letter queue to record messages that fail delivery from transactional and non-transactional queues, respectively. This is the default value when is set to `true`. - -- `Custom`: The queue specified in the property that is used to record messages that fail delivery. - - The reasons a message can fail to reach the receiving application include: - -- A transactional message is sent to a non-transactional queue. - -- A non-transactional message is sent to a transactional queue. - -- An unauthenticated message is sent to a queue that accepts only authenticated messages. - -- An unencrypted message is sent to a queue that accepts only encrypted messages. - -- The message expires before the message is delivered to a receiver. - -- The message storage quota of the target computer or the storage quota of the destination queue is exceeded, or there is no available storage space on the target computer when the message arrives. - -- The sender does not have the access rights required to place the message in the destination queue. - -- The digital signature attached to the message is not valid. - -- An encrypted message cannot be decrypted by the destination queue manager. - -- The destination queue is purged or deleted before the message is retrieved. - + is set to `false`. + +- `System`: The system-wide dead-letter queue is used to record messages that fail delivery. Message Queuing (MSMQ) has a transactional, system, dead-letter queue and a non-transactional, system, dead-letter queue to record messages that fail delivery from transactional and non-transactional queues, respectively. This is the default value when is set to `true`. + +- `Custom`: The queue specified in the property that is used to record messages that fail delivery. + + The reasons a message can fail to reach the receiving application include: + +- A transactional message is sent to a non-transactional queue. + +- A non-transactional message is sent to a transactional queue. + +- An unauthenticated message is sent to a queue that accepts only authenticated messages. + +- An unencrypted message is sent to a queue that accepts only encrypted messages. + +- The message expires before the message is delivered to a receiver. + +- The message storage quota of the target computer or the storage quota of the destination queue is exceeded, or there is no available storage space on the target computer when the message arrives. + +- The sender does not have the access rights required to place the message in the destination queue. + +- The digital signature attached to the message is not valid. + +- An encrypted message cannot be decrypted by the destination queue manager. + +- The destination queue is purged or deleted before the message is retrieved. + ]]> @@ -183,13 +183,13 @@ if the messages processed by this binding are durable; if they are volatile. The default is . - is set to `true`, the messages must be durable. - + is set to `true`, the messages must be durable. + ]]> @@ -221,19 +221,19 @@ if messages processed by this binding are received exactly once; otherwise, . The default is . - set to `true` must be sent to a transactional queue only. - - , when set to `true`, indicates that Message Queuing (MSMQ) ensures that a sent message is delivered to the receiving message queue once and only once. If delivery fails, the message is sent to the dead-letter queue. - - For messages that require to be `false`, the property defaults to `null`. - - For messages that require to be `true`, the property defaults to a transactional system-wide dead-letter queue in MSMQ. - + set to `true` must be sent to a transactional queue only. + + , when set to `true`, indicates that Message Queuing (MSMQ) ensures that a sent message is delivered to the receiving message queue once and only once. If delivery fails, the message is sent to the dead-letter queue. + + For messages that require to be `false`, the property defaults to `null`. + + For messages that require to be `true`, the property defaults to a transactional system-wide dead-letter queue in MSMQ. + ]]> @@ -264,11 +264,11 @@ Gets or sets the maximum size, in bytes, for a message that is processed by this binding. The maximum size (in bytes) for a message that is processed by this binding. The default value is 65,536 bytes. - @@ -299,11 +299,11 @@ Gets or sets the maximum number of retry cycles to attempt delivery of messages to the receiving application. The maximum number of retry cycles to attempt delivery of messages to the application. The default value is 2. - property. If the application fails to access the message after the specified number of immediate retries, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the property. The property specifies the number of retry cycles that the application uses to attempt to deliver the message. - + property. If the application fails to access the message after the specified number of immediate retries, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the property. The property specifies the number of retry cycles that the application uses to attempt to deliver the message. + ]]> @@ -362,17 +362,17 @@ Gets or sets an enumeration value that specifies how poison messages are handled. A value that specifies how poison and other messages that cannot be dispatched are handled. - , the listener is faulted and a is traced and thrown. The poison message is left in the queue and must be removed before more messages can be accessed from the queue. The contains a that can be used to identify and manually remove the poison message from the queue. - - When this property is set to , the poison message is dropped. - - When this property is set to , a negative acknowledgement is sent to the client and the poison message is removed from the queue. This option is available only on Message Queuing 4.0 and requires Windows Vista. - - When set to , the poison message is moved to the final poison subqueue. This option is only available on Message Queuing 4.0 and requires Windows Vista. - + , the listener is faulted and a is traced and thrown. The poison message is left in the queue and must be removed before more messages can be accessed from the queue. The contains a that can be used to identify and manually remove the poison message from the queue. + + When this property is set to , the poison message is dropped. + + When this property is set to , a negative acknowledgement is sent to the client and the poison message is removed from the queue. This option is available only on Message Queuing 4.0 and requires Windows Vista. + + When set to , the poison message is moved to the final poison subqueue. This option is only available on Message Queuing 4.0 and requires Windows Vista. + ]]> @@ -403,13 +403,13 @@ Gets or sets the maximum number of immediate delivery attempts on a message that is read from the application queue. The maximum number of immediate delivery attempts. The default is 5. - and . - + and . + ]]> @@ -440,11 +440,11 @@ Gets or sets a value that indicates the time delay between retry cycles when attempting to deliver a message that cannot be delivered immediately. The that specifies the interval of time to wait before starting the next cycle of delivery attempts to the receiving application. The default value is 10 minutes. - property. If the application fails to access the message after the specified number of immediate retries, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the . The number of retry cycles is specified by . - + property. If the application fails to access the message after the specified number of immediate retries, the message is sent to a retry queue. Subsequent retry cycles consist of the message being returned from the retry queue to the application queue to attempt delivery to the application again, after a delay specified by the . The number of retry cycles is specified by . + ]]> @@ -469,13 +469,13 @@ Returns the scheme for this binding. The scheme for this binding. The scheme returned depends on the implementation of . The implementation returns "net.msmq". The implementation returns "msmq.formatname". - supports a single scheme, msmq.formatname, with which the user can specify the format name of the queue directly in the queue address. - + supports a single scheme, msmq.formatname, with which the user can specify the format name of the queue directly in the queue address. + ]]> @@ -510,11 +510,11 @@ if requests can be handled more efficiently synchronously; otherwise . The default is , to handle requests asynchronously. - property is set to `true` when the is `true`. - + property is set to `true` when the is `true`. + ]]> @@ -545,11 +545,11 @@ Gets or sets the interval of time that indicates how long the messages processed by this binding can be in the queue before they expire. The that indicates how long the messages can be in the queue before they expire. The default value is 1 day. - property is set to ensure that time-sensitive messages do not become stale before they are processed by the receiving applications. A message in a queue that is not accessed by the receiving application within the time interval specified is expired. Expired messages are sent to a special queue called the dead-letter queue. The location of the dead-letter queue is set with the property or to the appropriate default, based on assurances. - + property is set to ensure that time-sensitive messages do not become stale before they are processed by the receiving applications. A message in a queue that is not accessed by the receiving application within the time interval specified is expired. Expired messages are sent to a special queue called the dead-letter queue. The location of the dead-letter queue is set with the property or to the appropriate default, based on assurances. + ]]> @@ -581,11 +581,11 @@ if messages processed by this binding should be traced; otherwise, . The default is . - @@ -617,11 +617,11 @@ if copies of messages processed by this binding should be stored in the source journal queue; otherwise, . The default is . - @@ -651,13 +651,13 @@ Gets or sets a value that specifies the duration a message will be locked by the receive context feature. A timespan object. - [!IMPORTANT] -> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. - +> If expires for a message, any transaction that may be used for its processing will be aborted along with the workflow instance if the expiration occurs during the transaction. + ]]> diff --git a/xml/System.ServiceModel/NetNamedPipeSecurity.xml b/xml/System.ServiceModel/NetNamedPipeSecurity.xml index 47637e3ca33..aeaaeaa4fc9 100644 --- a/xml/System.ServiceModel/NetNamedPipeSecurity.xml +++ b/xml/System.ServiceModel/NetNamedPipeSecurity.xml @@ -32,13 +32,13 @@ Provides access to the security settings for endpoints configured with the named pipe binding. - object to a instance. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uenetnamedpipesecurity/cs/service.cs" id="Snippet1"::: - + object to a instance. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uenetnamedpipesecurity/cs/service.cs" id="Snippet1"::: + ]]> @@ -98,22 +98,22 @@ Gets or sets the security mode for the named pipe binding. The value of the for the named pipe binding. The default value is . - property: - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uenetnamedpipesecurity/cs/service.cs" id="Snippet2"::: - + property: + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uenetnamedpipesecurity/cs/service.cs" id="Snippet2"::: + ]]> @@ -181,18 +181,18 @@ Gets the transport security for the named pipe binding. The value of the for the named pipe binding. - for the named pipe transport through . - - - -## Examples - The following code shows how to access the property: - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uenetnamedpipesecurity/cs/service.cs" id="Snippet3"::: - + for the named pipe transport through . + + + +## Examples + The following code shows how to access the property: + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uenetnamedpipesecurity/cs/service.cs" id="Snippet3"::: + ]]> diff --git a/xml/System.ServiceModel/OperationBehaviorAttribute.xml b/xml/System.ServiceModel/OperationBehaviorAttribute.xml index c46700f8893..cc7ff9c9498 100644 --- a/xml/System.ServiceModel/OperationBehaviorAttribute.xml +++ b/xml/System.ServiceModel/OperationBehaviorAttribute.xml @@ -27,34 +27,34 @@ Specifies the local execution behavior of a service method. - attribute to indicate what operation-specific execution behavior the operation has when executed. (To specify execution behavior at the service level, use the attribute.) - + attribute to indicate what operation-specific execution behavior the operation has when executed. (To specify execution behavior at the service level, use the attribute.) + > [!NOTE] -> You can also use to configure a callback contract operation in a duplex client application. When used on a callback operation, the property must be or an exception is thrown at runtime. - - The attribute is a Windows Communication Foundation (WCF) programming model feature that enables common features that developers otherwise must implement themselves. - -- The property controls whether parameter objects passed to an operation are disposed when the operation completes. - -- The property specifies whether the transaction in which the method executes is automatically committed if no unhandled exceptions occur. - -- The property specifies whether a method must execute within a transaction. - -- The property specifies whether the service operation can, must, or cannot impersonate the caller's identity. - -- The property specifies when service objects are recycled during the method invocation process. - - - -## Examples - The following code example shows an operation that executes within a mandatory distributed transaction. The property indicates that the method executes under the caller's transaction and the property indicates that if no unhandled exceptions occur, the transaction commits automatically. If an unhandled exception does occur, the transaction is aborted. - +> You can also use to configure a callback contract operation in a duplex client application. When used on a callback operation, the property must be or an exception is thrown at runtime. + + The attribute is a Windows Communication Foundation (WCF) programming model feature that enables common features that developers otherwise must implement themselves. + +- The property controls whether parameter objects passed to an operation are disposed when the operation completes. + +- The property specifies whether the transaction in which the method executes is automatically committed if no unhandled exceptions occur. + +- The property specifies whether a method must execute within a transaction. + +- The property specifies whether the service operation can, must, or cannot impersonate the caller's identity. + +- The property specifies when service objects are recycled during the method invocation process. + + + +## Examples + The following code example shows an operation that executes within a mandatory distributed transaction. The property indicates that the method executes under the caller's transaction and the property indicates that if no unhandled exceptions occur, the transaction commits automatically. If an unhandled exception does occur, the transaction is aborted. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationbehaviorattribute_transaction/cs/services.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_transaction/vb/services.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_transaction/vb/services.vb" id="Snippet2"::: + ]]> @@ -75,19 +75,19 @@ Initializes a new instance of the class. - property is `true`. - -- The property is `false`. - -- The property is . - -- The is . - + property is `true`. + +- The property is `false`. + +- The property is . + +- The is . + ]]> @@ -123,13 +123,13 @@ if the parameters are to be automatically disposed; otherwise, . - is `false`, then the sender is responsible for closing the stream on the sending side. - + is `false`, then the sender is responsible for closing the stream on the sending side. + ]]> @@ -160,29 +160,29 @@ Gets or sets a value that indicates the level of caller impersonation that the operation supports. One of the values. The default is . - property (together with a binding configuration that supports impersonation) to enable specified methods (those marked with the property set to or ) to execute under the caller's identity. For details, including how impersonation is performed when using together with the property, see [Delegation and Impersonation](/dotnet/framework/wcf/feature-details/delegation-and-impersonation-with-wcf) and [How to: Impersonate a Client on a Service](/dotnet/framework/wcf/how-to-impersonate-a-client-on-a-service). - + property (together with a binding configuration that supports impersonation) to enable specified methods (those marked with the property set to or ) to execute under the caller's identity. For details, including how impersonation is performed when using together with the property, see [Delegation and Impersonation](/dotnet/framework/wcf/feature-details/delegation-and-impersonation-with-wcf) and [How to: Impersonate a Client on a Service](/dotnet/framework/wcf/how-to-impersonate-a-client-on-a-service). + > [!NOTE] -> When programmatically adding a service endpoint that performs impersonation, you must either use one of the methods or the method to properly load the contract into a new object. Using a configuration file requires no extra step. - - There may be specific scenarios when impersonation is not supported. For more information, see [Unsupported Scenarios](/dotnet/framework/wcf/feature-details/unsupported-scenarios). - - - -## Examples - The following service code example requires impersonation by setting the property to . - +> When programmatically adding a service endpoint that performs impersonation, you must either use one of the methods or the method to properly load the contract into a new object. Using a configuration file requires no extra step. + + There may be specific scenarios when impersonation is not supported. For more information, see [Unsupported Scenarios](/dotnet/framework/wcf/feature-details/unsupported-scenarios). + + + +## Examples + The following service code example requires impersonation by setting the property to . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationbehaviorattribute_impersonation/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_impersonation/vb/services.vb" id="Snippet1"::: - - The following code example shows using the property to set the client application credentials prior to invoking the operation that requires those credentials for impersonation. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_impersonation/vb/services.vb" id="Snippet1"::: + + The following code example shows using the property to set the client application credentials prior to invoking the operation that requires those credentials for impersonation. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationbehaviorattribute_impersonation/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_impersonation/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_impersonation/vb/client.vb" id="Snippet3"::: + ]]> @@ -213,37 +213,37 @@ Gets or sets a value that indicates when in the course of an operation invocation to recycle the service object. One of the values. The default is . - property to specify when Windows Communication Foundation (WCF) recycles a service object in the course of executing a method. The default behavior is to recycle a service object according to the value. Setting the property changes that default behavior. - - The makes no threading guarantees. If you must have a new, unmodified object when your service runs, set the property to . - - In transaction scenarios, the property is often used to ensure that old data associated with the service object is cleaned up prior to processing a method call. You can also ensure that service objects associated with transactions are recycled after the transaction successfully completes by setting the property to `true`. - - You can choose the following behaviors: - -- Recycle a service object before an operation is called. - -- Recycle a service object after an operation is called. - -- Recycle a service object both before and after an operation is called. - -- No recycling behavior. - - You can also use to configure a callback contract operation in a duplex client application. When used on a callback operation, the property must be or an exception is thrown at runtime. - - In addition, it is important to realize that if the service is created by passing a service object to the constructor, the value of this property is treated as if it were . - - - -## Examples - The following example code shows the use of to recycle service objects both before and after a call. - + property to specify when Windows Communication Foundation (WCF) recycles a service object in the course of executing a method. The default behavior is to recycle a service object according to the value. Setting the property changes that default behavior. + + The makes no threading guarantees. If you must have a new, unmodified object when your service runs, set the property to . + + In transaction scenarios, the property is often used to ensure that old data associated with the service object is cleaned up prior to processing a method call. You can also ensure that service objects associated with transactions are recycled after the transaction successfully completes by setting the property to `true`. + + You can choose the following behaviors: + +- Recycle a service object before an operation is called. + +- Recycle a service object after an operation is called. + +- Recycle a service object both before and after an operation is called. + +- No recycling behavior. + + You can also use to configure a callback contract operation in a duplex client application. When used on a callback operation, the property must be or an exception is thrown at runtime. + + In addition, it is important to realize that if the service is created by passing a service object to the constructor, the value of this property is treated as if it were . + + + +## Examples + The following example code shows the use of to recycle service objects both before and after a call. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/oba.releaseinstancemode/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/oba.releaseinstancemode/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/oba.releaseinstancemode/vb/services.vb" id="Snippet1"::: + ]]> The value is not one of the values. @@ -398,21 +398,21 @@ to complete the transaction scope automatically on successful execution of the operation; otherwise, . The default is . - property to `false` to complete or abort transactions directly in the code for the operation. - - Handled exceptions can be thrown in the course of the operation without automatically aborting the transaction. Only unhandled exceptions trigger an automatic abort. - - - -## Examples - The following code example shows an operation that executes within a mandatory distributed transaction. The property indicates that the operation executes under a transaction scope and the property indicates that if no unhandled exceptions occur, the transaction scope is completed automatically. If an unhandled exception does occur, the transaction is aborted. - + property to `false` to complete or abort transactions directly in the code for the operation. + + Handled exceptions can be thrown in the course of the operation without automatically aborting the transaction. Only unhandled exceptions trigger an automatic abort. + + + +## Examples + The following code example shows an operation that executes within a mandatory distributed transaction. The property indicates that the operation executes under a transaction scope and the property indicates that if no unhandled exceptions occur, the transaction scope is completed automatically. If an unhandled exception does occur, the transaction is aborted. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationbehaviorattribute_transaction/cs/services.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_transaction/vb/services.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_transaction/vb/services.vb" id="Snippet2"::: + ]]> @@ -448,27 +448,27 @@ if the method requires a transaction scope to execute; otherwise, . The default is . - to `true` to require your operation to execute within a transaction scope. If a flowed transaction is available, the operation executes within that transaction. If one is not available, a new transaction is created and used for the operation execution. The binding specified in the endpoint controls whether flowed transactions are supported. Therefore, to obtain the proper behavior you must understand the interaction between whether transaction flow is permitted by the binding and the property. The following table shows the possible behavior. - -|TransactionScopeRequired|Binding permits transaction flow|Caller flows transaction|Result| -|-|-|-|-| -|False|False|No|Method executes without a transaction.| -|True|False|No|Method creates and executes within a new transaction.| -|True or False|False|Yes|A SOAP fault is returned for the transaction header.| -|False|True|Yes|Method executes without a transaction.| -|True|True|Yes|Method executes under the flowed transaction.| - - - -## Examples - The following code example shows an operation that executes within a mandatory distributed transaction. The property indicates that the operation executes under a transaction scope and the property indicates that if no unhandled exceptions occur, the transaction scope is completed automatically. If an unhandled exception does occur, the transaction is aborted. - + to `true` to require your operation to execute within a transaction scope. If a flowed transaction is available, the operation executes within that transaction. If one is not available, a new transaction is created and used for the operation execution. The binding specified in the endpoint controls whether flowed transactions are supported. Therefore, to obtain the proper behavior you must understand the interaction between whether transaction flow is permitted by the binding and the property. The following table shows the possible behavior. + +|TransactionScopeRequired|Binding permits transaction flow|Caller flows transaction|Result| +|-|-|-|-| +|False|False|No|Method executes without a transaction.| +|True|False|No|Method creates and executes within a new transaction.| +|True or False|False|Yes|A SOAP fault is returned for the transaction header.| +|False|True|Yes|Method executes without a transaction.| +|True|True|Yes|Method executes under the flowed transaction.| + + + +## Examples + The following code example shows an operation that executes within a mandatory distributed transaction. The property indicates that the operation executes under a transaction scope and the property indicates that if no unhandled exceptions occur, the transaction scope is completed automatically. If an unhandled exception does occur, the transaction is aborted. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationbehaviorattribute_transaction/cs/services.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_transaction/vb/services.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationbehaviorattribute_transaction/vb/services.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.ServiceModel/OperationContext.xml b/xml/System.ServiceModel/OperationContext.xml index d2c4e681440..ba8ac630832 100644 --- a/xml/System.ServiceModel/OperationContext.xml +++ b/xml/System.ServiceModel/OperationContext.xml @@ -49,59 +49,59 @@ Provides access to the execution context of a service method. - from within a service operation to access the current operation execution environment. In particular, the operation context is used to access callback channels in duplex services, to store extra state data across portions of the operations, and to access incoming message headers and properties as well as add outgoing message headers and properties. - - For more information about using extensions to store state data, see [Extensible Objects](/dotnet/framework/wcf/extending/extensible-objects). - - The has the following properties and methods. - -- The property returns the object representing the current execution context. - -- The property returns the security environment under which the method executes. - -- The property gets the operation's . - -- The property returns an extension collection for the current . - -- The property returns the object that manages the service. - -- The property returns a value that indicates whether the method has supporting tokens, if so, the property gets them. - -- The , , and properties get these items from the incoming message. - -- The event is fired when the operation has completed. - -- The and properties get these items for the outbound message. - -- The property returns the implementation for the method. - -- The property returns the associated with the operation. - -- The property returns the session identifier for the current channel and object. - -- The method returns a callback channel to the caller in the case of duplex communication. - -- The method commits the current transaction. - - - -## Examples - The following code example uses the property and method to obtain the channel back to the caller from within a method. All methods in this example are one-way methods, enabling the service and the client to communicate in both directions independently. In this case, the example client application expects only one return call before it exits, but another client, for example a Windows Forms client, can receive any number of calls from the service. - + from within a service operation to access the current operation execution environment. In particular, the operation context is used to access callback channels in duplex services, to store extra state data across portions of the operations, and to access incoming message headers and properties as well as add outgoing message headers and properties. + + For more information about using extensions to store state data, see [Extensible Objects](/dotnet/framework/wcf/extending/extensible-objects). + + The has the following properties and methods. + +- The property returns the object representing the current execution context. + +- The property returns the security environment under which the method executes. + +- The property gets the operation's . + +- The property returns an extension collection for the current . + +- The property returns the object that manages the service. + +- The property returns a value that indicates whether the method has supporting tokens, if so, the property gets them. + +- The , , and properties get these items from the incoming message. + +- The event is fired when the operation has completed. + +- The and properties get these items for the outbound message. + +- The property returns the implementation for the method. + +- The property returns the associated with the operation. + +- The property returns the session identifier for the current channel and object. + +- The method returns a callback channel to the caller in the case of duplex communication. + +- The method commits the current transaction. + + + +## Examples + The following code example uses the property and method to obtain the channel back to the caller from within a method. All methods in this example are one-way methods, enabling the service and the client to communicate in both directions independently. In this case, the example client application expects only one return call before it exits, but another client, for example a Windows Forms client, can receive any number of calls from the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb" id="Snippet1"::: - - The following client implements the `SampleDuplexHelloCallback` to receive the callback message. The imported callback contract is not the same name as the one in the service, due to the use of the property in the preceding example. Note that the client makes no assumptions about whether or when it might receive a callback; the server callback is entirely independent of the client's outbound call. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb" id="Snippet1"::: + + The following client implements the `SampleDuplexHelloCallback` to receive the callback message. The imported callback contract is not the same name as the one in the service, due to the use of the property in the preceding example. Note that the client makes no assumptions about whether or when it might receive a callback; the server callback is entirely independent of the client's outbound call. + > [!NOTE] -> For an example that uses the class in a client scenario, see . - +> For an example that uses the class in a client scenario, see . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/client.vb" id="Snippet3"::: + ]]> @@ -138,19 +138,19 @@ The used to create a new client . Initializes a new instance of the class that uses the specified in a client application. - constructor to create a new operation context within the scope of which the proxy is associated in order to modify outbound items such as headers. - - - -## Examples - The following example shows how to use the to create a new context in a client application in order to add a custom header to the outgoing message. - + constructor to create a new operation context within the scope of which the proxy is associated in order to modify outbound items such as headers. + + + +## Examples + The following example shows how to use the to create a new context in a client application in order to add a custom header to the outgoing message. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontextscope/cs/client.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet4"::: + ]]> The channel is null. @@ -254,19 +254,19 @@ Gets or sets the execution context for the current thread. The that represents the messaging and execution context of the current method. - property to obtain the execution and message context for the current method. - - - -## Examples - The following code example uses the property and method to create a channel back to the caller from within a method. All methods in this example are one-way methods, enabling the service and the client to communicate in both directions independently. In this case, the example client application expects only one return call before it exits, but another client, for example a Windows Forms client, can receive any number of calls from the service. - + property to obtain the execution and message context for the current method. + + + +## Examples + The following code example uses the property and method to create a channel back to the caller from within a method. All methods in this example are one-way methods, enabling the service and the client to communicate in both directions independently. In this case, the example client application expects only one return call before it exits, but another client, for example a Windows Forms client, can receive any number of calls from the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb" id="Snippet1"::: + ]]> @@ -346,11 +346,11 @@ Gets the collection of service extensions from the current message context. A collection of extensions of . - property to obtain a collection of all extensions of the used to modify the context or add custom state. For more information about extensions, see [Extensible Objects](/dotnet/framework/wcf/extending/extensible-objects). - + property to obtain a collection of all extensions of the used to modify the context or add custom state. For more information about extensions, see [Extensible Objects](/dotnet/framework/wcf/extending/extensible-objects). + ]]> @@ -388,27 +388,27 @@ Gets a channel to the client instance that called the current operation. A channel to the client instance that called the operation of the type specified in the property. - property to obtain a channel that you can use to call operations on the client instance that called the service. - - - -## Examples - The following code example uses the property and method to create a channel back to the caller from within a operation. All operations in this example are one-way operations, enabling the service and the client to communicate in both directions independently. In this case, the example client application expects only one return call before it exits, but another client, for example a Windows Forms client, can receive any number of calls from the service. - + property to obtain a channel that you can use to call operations on the client instance that called the service. + + + +## Examples + The following code example uses the property and method to create a channel back to the caller from within a operation. All operations in this example are one-way operations, enabling the service and the client to communicate in both directions independently. In this case, the example client application expects only one return call before it exits, but another client, for example a Windows Forms client, can receive any number of calls from the service. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb" id="Snippet1"::: - - The following client implements the `SampleDuplexHelloCallback` to receive the callback message. The imported callback contract is not the same name as the one in the service, due to the use of the property in the preceding example. Note that the client makes no assumptions about whether or when it might receive a callback; the server callback is entirely independent of the client's outbound call. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb" id="Snippet1"::: + + The following client implements the `SampleDuplexHelloCallback` to receive the callback message. The imported callback contract is not the same name as the one in the service, due to the use of the property in the preceding example. Note that the client makes no assumptions about whether or when it might receive a callback; the server callback is entirely independent of the client's outbound call. + > [!NOTE] -> For an example that uses the class in a client scenario, see . - +> For an example that uses the class in a client scenario, see . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/client.vb" id="Snippet3"::: + ]]> @@ -502,19 +502,19 @@ Gets the incoming message headers for the . A object that contains the incoming message headers. - @@ -551,11 +551,11 @@ Gets the message properties for the incoming message in the . A object that contains the message properties on the incoming message. - @@ -592,11 +592,11 @@ Gets the incoming SOAP message version for the . The SOAP version of the incoming message. - @@ -635,11 +635,11 @@ Gets the object that manages the current service instance. The object for the current service. - property to access the run-time object that manages the current service object. - + property to access the run-time object that manages the current service object. + ]]> @@ -711,16 +711,16 @@ Occurs when the operation has completed. - event to dispose parameters or a return value if you set to `false`. Normally you set to `false` to prevent WCF from calling on the parameter and return value objects. However, if some parameters need to be preserved while others need to be disposed, this event is the best place to dispose those parameters. - - Also, with duplex bindings, this event can be used to send a request on the callback channel after the reply for the current operation is sent. - + event to dispose parameters or a return value if you set to `false`. Normally you set to `false` to prevent WCF from calling on the parameter and return value objects. However, if some parameters need to be preserved while others need to be disposed, this event is the best place to dispose those parameters. + + Also, with duplex bindings, this event can be used to send a request on the callback channel after the reply for the current operation is sent. + > [!NOTE] -> If a caller is listening for the event for an operation, it is possible to block when the response is received. The proper way to handle this is to schedule work on another thread when is raised and then immediately return from that event handler. - +> If a caller is listening for the event for an operation, it is possible to block when the response is received. The proper way to handle this is to schedule work on another thread when is raised and then immediately return from that event handler. + ]]> @@ -757,19 +757,19 @@ Gets the outgoing message headers for the active . A object that contains outbound message headers for the active . - to create a new context in a client application in order to add a custom header to the outgoing message. - + to create a new context in a client application in order to add a custom header to the outgoing message. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontextscope/cs/client.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet4"::: + ]]> @@ -806,11 +806,11 @@ Gets the message properties for the outbound message in the active . A object that contains the message properties on the outbound message. - @@ -857,11 +857,11 @@ Gets or sets the implementation for this method. An implementation, or null if there is no request context. - @@ -944,11 +944,11 @@ Commits the currently executing transaction. - to `false`. Typically, services do this on some but not all operations. When is false the transaction completes automatically. Use in cases where it is not possible to determine at design-time whether an operation needs to complete the transaction. - + to `false`. Typically, services do this on some but not all operations. When is false the transaction completes automatically. Use in cases where it is not possible to determine at design-time whether an operation needs to complete the transaction. + ]]> There is no transaction in the context. diff --git a/xml/System.ServiceModel/OperationContextScope.xml b/xml/System.ServiceModel/OperationContextScope.xml index 0d2f552399a..be6300bf97a 100644 --- a/xml/System.ServiceModel/OperationContextScope.xml +++ b/xml/System.ServiceModel/OperationContextScope.xml @@ -49,34 +49,34 @@ Creates a block within which an object is in scope. - class to create a scope for a specific object or a scope for a new object using a specified object. An can be used in a Windows Communication Foundation (WCF) service or WCF client application. - - Once the object has established the current operation context, you can use the to: - -- Access and modify incoming and outgoing message headers and other properties. - -- Access the runtime, including dispatchers, the host, channel, and extensions. - -- Access other types of contexts, such as security, instance, and request contexts. - -- Access the channel associated with the object or (if the channel implements ) the associated channel's session identifier. - - When an is created, the current is stored and the new becomes the one returned by the property. When the is disposed, the original is restored. - + class to create a scope for a specific object or a scope for a new object using a specified object. An can be used in a Windows Communication Foundation (WCF) service or WCF client application. + + Once the object has established the current operation context, you can use the to: + +- Access and modify incoming and outgoing message headers and other properties. + +- Access the runtime, including dispatchers, the host, channel, and extensions. + +- Access other types of contexts, such as security, instance, and request contexts. + +- Access the channel associated with the object or (if the channel implements ) the associated channel's session identifier. + + When an is created, the current is stored and the new becomes the one returned by the property. When the is disposed, the original is restored. + > [!WARNING] -> Do not use the asynchronous "await" pattern within a OperationContextScope block. When the continuation occurs, it may run on a different thread and OperationContextScope is thread specific. If you need to call "await" for an async call, use it outside of the OperationContextScope block. - - - -## Examples - The following example shows how to use the to create a new context in a client application to add a custom header to the outgoing message. - +> Do not use the asynchronous "await" pattern within a OperationContextScope block. When the continuation occurs, it may run on a different thread and OperationContextScope is thread specific. If you need to call "await" for an async call, use it outside of the OperationContextScope block. + + + +## Examples + The following example shows how to use the to create a new context in a client application to add a custom header to the outgoing message. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontextscope/cs/client.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet3"::: + ]]> @@ -123,21 +123,21 @@ The channel to use when creating the scope for a new . Initializes a new instance of the class that uses the specified to create a new for the scope. - constructor to create a new for a client channel that can be used to add or modify outbound message headers, read incoming message headers, or access other run-time properties of the . - - The headers added to the property of the newly created apply only to the channel that was passed to the constructor. If the user creates a new channel within its scope then the headers are not applied to messages sent on the new channel. - - - -## Examples - The following example shows how to use the to create a new context in a client application in order to add a custom header to the outgoing message. - + constructor to create a new for a client channel that can be used to add or modify outbound message headers, read incoming message headers, or access other run-time properties of the . + + The headers added to the property of the newly created apply only to the channel that was passed to the constructor. If the user creates a new channel within its scope then the headers are not applied to messages sent on the new channel. + + + +## Examples + The following example shows how to use the to create a new context in a client application in order to add a custom header to the outgoing message. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontextscope/cs/client.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontextscope/vb/client.vb" id="Snippet4"::: + ]]> @@ -174,11 +174,11 @@ The active in the created scope. Initializes a new instance of the class to create a scope for the specified object. - constructor to create a code block within which the specified object is the current scope. - + constructor to create a code block within which the specified object is the current scope. + ]]> diff --git a/xml/System.ServiceModel/OperationContractAttribute.xml b/xml/System.ServiceModel/OperationContractAttribute.xml index d5caa2ab3b6..261db036fe1 100644 --- a/xml/System.ServiceModel/OperationContractAttribute.xml +++ b/xml/System.ServiceModel/OperationContractAttribute.xml @@ -51,87 +51,87 @@ Indicates that a method defines an operation that is part of a service contract in a Windows Communication Foundation (WCF) application. - to a method to indicate that the method implements a service operation as part of a service contract (specified by a attribute). - - Use the properties to control the structure of the operation and the values expressed in metadata: - -- The property specifies the action that uniquely identifies this operation. WCF dispatches request messages to methods based on their action. - -- The property indicates that the operation is implemented or can be called asynchronously using a Begin/End method pair. - -- The property indicates whether the property has been explicitly set. - -- The property indicates that the operation only consists of a single input message. The operation has no associated output message. - -- The property specifies whether this operation can be the initial operation in a session. - -- The property specifies whether WCF attempts to terminate the current session after the operation completes. - -- The property specifies the message-level security that an operation requires at run time. - -- The property specifies the action of the reply message for the operation. - - The attribute declares that a method is an operation in a service contract. Only methods attributed with the are exposed as service operations. A service contract without any methods marked with the exposes no operations. - - The property indicates that a pair of `Begin`\<*methodName*> and `End`\<*methodName*> methods form a single operation implemented asynchronously (whether on the client or the service). The ability of a service to implement operations asynchronously is a service implementation detail and is not exposed in metadata (such as Web Services Description Language (WSDL)). - - Similarly, clients can choose to invoke operations asynchronously independent of how the service method is implemented. Calling service operations asynchronously in the client is recommended when a service method takes some time but must return information directly to the client. For details, see . - - The property indicates that a method does not return any value at all, including an empty underlying response message. This type of method is useful for notifications or event-style communication. Methods of this kind cannot return a reply message so the method's declaration must return `void`. - + to a method to indicate that the method implements a service operation as part of a service contract (specified by a attribute). + + Use the properties to control the structure of the operation and the values expressed in metadata: + +- The property specifies the action that uniquely identifies this operation. WCF dispatches request messages to methods based on their action. + +- The property indicates that the operation is implemented or can be called asynchronously using a Begin/End method pair. + +- The property indicates whether the property has been explicitly set. + +- The property indicates that the operation only consists of a single input message. The operation has no associated output message. + +- The property specifies whether this operation can be the initial operation in a session. + +- The property specifies whether WCF attempts to terminate the current session after the operation completes. + +- The property specifies the message-level security that an operation requires at run time. + +- The property specifies the action of the reply message for the operation. + + The attribute declares that a method is an operation in a service contract. Only methods attributed with the are exposed as service operations. A service contract without any methods marked with the exposes no operations. + + The property indicates that a pair of `Begin`\<*methodName*> and `End`\<*methodName*> methods form a single operation implemented asynchronously (whether on the client or the service). The ability of a service to implement operations asynchronously is a service implementation detail and is not exposed in metadata (such as Web Services Description Language (WSDL)). + + Similarly, clients can choose to invoke operations asynchronously independent of how the service method is implemented. Calling service operations asynchronously in the client is recommended when a service method takes some time but must return information directly to the client. For details, see . + + The property indicates that a method does not return any value at all, including an empty underlying response message. This type of method is useful for notifications or event-style communication. Methods of this kind cannot return a reply message so the method's declaration must return `void`. + > [!IMPORTANT] -> When programmatically retrieving the information store in this attribute, use the class instead of reflection. - +> When programmatically retrieving the information store in this attribute, use the class instead of reflection. + > [!NOTE] -> If the property is set to `false`, (the default), even methods that return `void` are two-way methods at the underlying message level. In this case, the infrastructure creates and sends an empty message to indicate to the caller that the method has returned. Using this approach enables the application and the infrastructure to send error information (such as a SOAP fault) back to the client. Setting to `true` is the only way to prevent the creation and dispatch of a reply message. For more information, see [One-Way Services](/dotnet/framework/wcf/feature-details/one-way-services). - - The and properties can be used not only to modify the default action of SOAP messages but also to create handlers for unrecognized messages or to disable adding actions for direct message programming. Use the property to prevent clients from calling a particular service operation prior to other operations. Use the property to have WCF close the channel after clients call a particular service operation. For more information, see [Using Sessions](/dotnet/framework/wcf/using-sessions). - - The property enables you to specify on the operation contract whether the operation messages are signed, encrypted, or signed and encrypted. If a binding cannot provide the security level required by the contract, an exception is thrown at run time. For more information, see and [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). - - - -## Examples - The following code example shows a simple service contract with one operation. - +> If the property is set to `false`, (the default), even methods that return `void` are two-way methods at the underlying message level. In this case, the infrastructure creates and sends an empty message to indicate to the caller that the method has returned. Using this approach enables the application and the infrastructure to send error information (such as a SOAP fault) back to the client. Setting to `true` is the only way to prevent the creation and dispatch of a reply message. For more information, see [One-Way Services](/dotnet/framework/wcf/feature-details/one-way-services). + + The and properties can be used not only to modify the default action of SOAP messages but also to create handlers for unrecognized messages or to disable adding actions for direct message programming. Use the property to prevent clients from calling a particular service operation prior to other operations. Use the property to have WCF close the channel after clients call a particular service operation. For more information, see [Using Sessions](/dotnet/framework/wcf/using-sessions). + + The property enables you to specify on the operation contract whether the operation messages are signed, encrypted, or signed and encrypted. If a binding cannot provide the security level required by the contract, an exception is thrown at run time. For more information, see and [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). + + + +## Examples + The following code example shows a simple service contract with one operation. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontractattribute/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute/vb/services.vb" id="Snippet1"::: - - The following example is a service that implements an implicit service contract that specifies three operations. Two of the operations are two-way operations, which return underlying response messages to the caller no matter what the return value is. The third operation receives a call, an underlying inbound message, but returns no underlying response message. - -```csharp -[ServiceContractAttribute] -public class OneAndTwoWay -{ - // The client waits until a response message appears. - [OperationContractAttribute] - public int MethodOne (int x, out int y) - { - y = 34; - return 0; - } - - // The client waits until an empty response message appears. - [OperationContractAttribute] - public void MethodTwo (int x) - { - return; - } - - // The client returns as soon as an outbound message - // is dispatched to the service; no response - // message is generated or sent from the service. - [OperationContractAttribute(IsOneWay=true)] - public void MethodThree (int x) - { - return; - } -} -``` - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute/vb/services.vb" id="Snippet1"::: + + The following example is a service that implements an implicit service contract that specifies three operations. Two of the operations are two-way operations, which return underlying response messages to the caller no matter what the return value is. The third operation receives a call, an underlying inbound message, but returns no underlying response message. + +```csharp +[ServiceContractAttribute] +public class OneAndTwoWay +{ + // The client waits until a response message appears. + [OperationContractAttribute] + public int MethodOne (int x, out int y) + { + y = 34; + return 0; + } + + // The client waits until an empty response message appears. + [OperationContractAttribute] + public void MethodTwo (int x) + { + return; + } + + // The client returns as soon as an outbound message + // is dispatched to the service; no response + // message is generated or sent from the service. + [OperationContractAttribute(IsOneWay=true)] + public void MethodThree (int x) + { + return; + } +} +``` + ]]> @@ -204,32 +204,32 @@ public class OneAndTwoWay Gets or sets the WS-Addressing action of the request message. The action to use in generating the WS-Addressing Action header. - property to control the action of the method's input message. Because WCF uses this action to dispatch an incoming message to the appropriate method, messages used within a contract operation must have unique actions. The default action value is a combination of the contract namespace (the default value is `"http://tempuri.org/"`), the contract name (interface name or the class name, if no explicit service interface is used), the operation name, and an additional string ("Response") if the message is a correlated response. You can override this default with the property. - - To indicate that a service operation handles all messages that the service receives but cannot be directed to a service operation, specify the value "*" (an asterisk). This type of operation, called an unmatched message handler, must have one of following method signatures, or a is thrown: - -- The service operation can take only a object and return a object. - -- The service operation can take only a object and return nothing (that is, return `void`). - + property to control the action of the method's input message. Because WCF uses this action to dispatch an incoming message to the appropriate method, messages used within a contract operation must have unique actions. The default action value is a combination of the contract namespace (the default value is `"http://tempuri.org/"`), the contract name (interface name or the class name, if no explicit service interface is used), the operation name, and an additional string ("Response") if the message is a correlated response. You can override this default with the property. + + To indicate that a service operation handles all messages that the service receives but cannot be directed to a service operation, specify the value "*" (an asterisk). This type of operation, called an unmatched message handler, must have one of following method signatures, or a is thrown: + +- The service operation can take only a object and return a object. + +- The service operation can take only a object and return nothing (that is, return `void`). + > [!NOTE] -> A service contract can have only one service operation with the property set to "*". Any group of service contracts hosted at the same listenUri that a service class implements can have many service operations with the property set to "\*" when the property is set to `false`. However, only one of those service operations can have the property set to "\*" and the property set to true. For more details, see . - - - -## Examples - The following example is a service that uses the and properties to explicitly control the SOAP actions of both the input and output (or reply) messages, and the property to control the name of the operation in metadata. Finally, the application also uses an value of "*" to indicate a method that handles unrecognized messages. - +> A service contract can have only one service operation with the property set to "*". Any group of service contracts hosted at the same listenUri that a service class implements can have many service operations with the property set to "\*" when the property is set to `false`. However, only one of those service operations can have the property set to "\*" and the property set to true. For more details, see . + + + +## Examples + The following example is a service that uses the and properties to explicitly control the SOAP actions of both the input and output (or reply) messages, and the property to control the name of the operation in metadata. Finally, the application also uses an value of "*" to indicate a method that handles unrecognized messages. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontractattribute_properties/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute_properties/vb/services.vb" id="Snippet1"::: - - A service that implements this contract sends messages that look like the following example: - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontractattribute_properties/cs/services.cs" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute_properties/vb/services.vb" id="Snippet1"::: + + A service that implements this contract sends messages that look like the following example: + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontractattribute_properties/cs/services.cs" id="Snippet2"::: + ]]> The value is . @@ -278,43 +278,43 @@ public class OneAndTwoWay if the <*methodName*>method is matched by an <*methodName*> method and can be treated by the infrastructure as an operation that is implemented as an asynchronous method pair on the service interface; otherwise, . The default is . - property to build service operations that can be called asynchronously on the server, the client, or both. The property informs the runtime that a `Begin` method has a matched `End` method that conforms to the .NET Framework asynchronous method design pattern. Building server asynchronous methods that implement a service operation increases server scalability and performance without affecting the clients of the service, and is recommended when a service operation must return something to the client after performing a lengthy operation that can be performed asynchronously. - - Clients remain unaffected because the asynchronous method pair on the server is an implementation detail that does not affect the underlying Web Services Description Language (WSDL) description of the operation. Such methods appear to clients as a single operation with `` and correlated `` messages. WCF automatically routes inbound messages to the `Begin`\<*methodName*> method and routes the results of the `End`\<*methodName*> call to the outbound message. Client channels, therefore, can represent the method pair as either a single synchronous operation or as an asynchronous operation pair. In no case does the client representation affect the asynchronous implementation on the server in any way. - - Client contracts can use the property to indicate an asynchronous method pair that the client can use to invoke the operation asynchronously. Typically, client applications use the [ServiceModel Metadata Utility Tool (Svcutil.exe)](/dotnet/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe) tool and the `/async` option to generate a `Begin`\<*methodName*> and `End`\<*methodName*> method pair that the client can use to invoke the operation asynchronously. - + property to build service operations that can be called asynchronously on the server, the client, or both. The property informs the runtime that a `Begin` method has a matched `End` method that conforms to the .NET Framework asynchronous method design pattern. Building server asynchronous methods that implement a service operation increases server scalability and performance without affecting the clients of the service, and is recommended when a service operation must return something to the client after performing a lengthy operation that can be performed asynchronously. + + Clients remain unaffected because the asynchronous method pair on the server is an implementation detail that does not affect the underlying Web Services Description Language (WSDL) description of the operation. Such methods appear to clients as a single operation with `` and correlated `` messages. WCF automatically routes inbound messages to the `Begin`\<*methodName*> method and routes the results of the `End`\<*methodName*> call to the outbound message. Client channels, therefore, can represent the method pair as either a single synchronous operation or as an asynchronous operation pair. In no case does the client representation affect the asynchronous implementation on the server in any way. + + Client contracts can use the property to indicate an asynchronous method pair that the client can use to invoke the operation asynchronously. Typically, client applications use the [ServiceModel Metadata Utility Tool (Svcutil.exe)](/dotnet/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe) tool and the `/async` option to generate a `Begin`\<*methodName*> and `End`\<*methodName*> method pair that the client can use to invoke the operation asynchronously. + > [!NOTE] -> If a service operation has both an asynchronous and a synchronous version, the default behavior on the service is to invoke the synchronous version. - - - -## Examples - The following code example shows a client channel to a service contract that includes both a synchronous version of `Add` and an asynchronous version. If the contract interface is used on the client, both the `BeginAdd` and the `Add` operation invoke a method on the server that may or may not be synchronous. If the contract is used to implement the service, the default is that incoming requests are dispatched to the synchronous method. - -```csharp -[ServiceContract] -public interface IAddTwoNumbers -{ - // If the asynchronous method pair - // appears on the client channel, the client can call - // them asynchronously to prevent blocking. - [OperationContract (AsyncPattern=true)] - IAsyncResult BeginAdd(int a, int b, AsyncCallback cb, AsyncState s); - - [OperationContract] - int EndAdd(IAsyncResult r); - - // This is a synchronous version of the BeginAdd/EndAdd pair. - // It appears in the client channel code by default. - [OperationContract] - int Add(int a, int b); - } -``` - +> If a service operation has both an asynchronous and a synchronous version, the default behavior on the service is to invoke the synchronous version. + + + +## Examples + The following code example shows a client channel to a service contract that includes both a synchronous version of `Add` and an asynchronous version. If the contract interface is used on the client, both the `BeginAdd` and the `Add` operation invoke a method on the server that may or may not be synchronous. If the contract is used to implement the service, the default is that incoming requests are dispatched to the synchronous method. + +```csharp +[ServiceContract] +public interface IAddTwoNumbers +{ + // If the asynchronous method pair + // appears on the client channel, the client can call + // them asynchronously to prevent blocking. + [OperationContract (AsyncPattern=true)] + IAsyncResult BeginAdd(int a, int b, AsyncCallback cb, AsyncState s); + + [OperationContract] + int EndAdd(IAsyncResult r); + + // This is a synchronous version of the BeginAdd/EndAdd pair. + // It appears in the client channel code by default. + [OperationContract] + int Add(int a, int b); + } +``` + ]]> @@ -354,11 +354,11 @@ public interface IAddTwoNumbers if the property is set to a value other than ; otherwise, . The default is . - property to determine whether a specific protection level is required by the messages of this operation. - + property to determine whether a specific protection level is required by the messages of this operation. + ]]> @@ -403,66 +403,66 @@ public interface IAddTwoNumbers if the operation is permitted to initiate a session on the server, otherwise, . The default is . - property controls whether an operation can be the first operation called when a session is created. - + property controls whether an operation can be the first operation called when a session is created. + > [!NOTE] -> The value of must be either or and the binding used must require or allow sessions for the property to work properly. - - The default is `true`, which means that an operation can be the first one called on a channel. Subsequent calls to the initiating method have no effect, other than to call the method. No other sessions are created. If the contract does not make use of a session, setting to `false` is ignored. - - Typically, you set to `false` to force clients to call another method on the service before they can invoke this one. For example, if your service has a series of operations that depend on an order ID number, you can set to `true` for a `GetOrderId` service operation and set all remaining service operations to `false`. This ensures that each new client obtains an order ID prior to using the other methods exposed by the service. - +> The value of must be either or and the binding used must require or allow sessions for the property to work properly. + + The default is `true`, which means that an operation can be the first one called on a channel. Subsequent calls to the initiating method have no effect, other than to call the method. No other sessions are created. If the contract does not make use of a session, setting to `false` is ignored. + + Typically, you set to `false` to force clients to call another method on the service before they can invoke this one. For example, if your service has a series of operations that depend on an order ID number, you can set to `true` for a `GetOrderId` service operation and set all remaining service operations to `false`. This ensures that each new client obtains an order ID prior to using the other methods exposed by the service. + > [!NOTE] -> There is an interaction between and the property. A service contract can have only one service operation with the property set to "*". Any group of service contracts hosted at the same listen URI that a service class implements can have many service operations with the property set to "\*" when the property is set to `false`. However, only one of those service methods can have the property set to "\*" and the property set to `true`. - - If a service receives a message for a non-initiating operation, the service returns an ActionNotSupported SOAP fault. The client experiences this as an . If a client calls a non-initiating operation first, the client runtime throws an . - - For more information, see [Using Sessions](/dotnet/framework/wcf/using-sessions). - - - -## Examples - The following example is a service that implements a service contract that specifies three methods. The service requires a session. If a caller's first call is to any operation other than `MethodOne`, the channel is refused and an exception is thrown. When a caller initiates a session by calling `MethodOne`, that caller can terminate the communication session at any time by calling `MethodThree`. `MethodTwo` can be called any number of times during a session. - -```csharp -[ServiceContract(SessionMode=SessionMode.Required)] -public class InitializeAndTerminateService -{ - [OperationContract( - IsOneWay=true, - IsInitiating=true, - IsTerminating=false - )] - public void MethodOne() - { - return; - } - - [OperationContract( - IsInitiating=false, - IsTerminating=false - )] - public int MethodTwo(int x, out int y) - { - y = 34; - return 0; - } - - [OperationContract( - IsOneWay=true, - IsInitiating=false, - IsTerminating=true - )] - public void MethodThree() - { - return; - } -} -``` - +> There is an interaction between and the property. A service contract can have only one service operation with the property set to "*". Any group of service contracts hosted at the same listen URI that a service class implements can have many service operations with the property set to "\*" when the property is set to `false`. However, only one of those service methods can have the property set to "\*" and the property set to `true`. + + If a service receives a message for a non-initiating operation, the service returns an ActionNotSupported SOAP fault. The client experiences this as an . If a client calls a non-initiating operation first, the client runtime throws an . + + For more information, see [Using Sessions](/dotnet/framework/wcf/using-sessions). + + + +## Examples + The following example is a service that implements a service contract that specifies three methods. The service requires a session. If a caller's first call is to any operation other than `MethodOne`, the channel is refused and an exception is thrown. When a caller initiates a session by calling `MethodOne`, that caller can terminate the communication session at any time by calling `MethodThree`. `MethodTwo` can be called any number of times during a session. + +```csharp +[ServiceContract(SessionMode=SessionMode.Required)] +public class InitializeAndTerminateService +{ + [OperationContract( + IsOneWay=true, + IsInitiating=true, + IsTerminating=false + )] + public void MethodOne() + { + return; + } + + [OperationContract( + IsInitiating=false, + IsTerminating=false + )] + public int MethodTwo(int x, out int y) + { + y = 34; + return 0; + } + + [OperationContract( + IsOneWay=true, + IsInitiating=false, + IsTerminating=true + )] + public void MethodThree() + { + return; + } +} +``` + ]]> @@ -510,54 +510,54 @@ public class InitializeAndTerminateService if this method receives a request message and returns no reply message; otherwise, . The default is . - property to indicate that an operation does not return a reply message. This type of operation is useful for notifications or event-style communication, especially in two-way communication. Without waiting for an underlying response message, callers of one-way operations have no direct way to detect a failure in processing the request message. (Service applications that use reliable channels and one-way operations can detect a message delivery failure at the channel level. For details, see [Reliable Sessions Overview](/dotnet/framework/wcf/feature-details/reliable-sessions-overview).) - - In duplex (or two-way) service-oriented applications in which the client and server communicate with each other independently, a client channel can use the property on its methods to indicate that the service can make one-way calls to the client that the client can treat as events. No return call or message is generated because the service does not expect any response message. - - If the property is set to `false` (the default), even methods that return `void` result in a reply message. In this case, the infrastructure creates and sends an empty message to indicate to the caller that the method has returned. (Using this approach enables the infrastructure to send SOAP faults back to the client.) Setting to `true` is the only way to cancel the creation and dispatch of a response message. - - One-way methods must not return a value or have `ref` or `out` parameters; otherwise a exception is thrown. - - Specifying that an operation is a one-way operation means only that there is no response message. It is possible to block if a connection cannot be made, or the outbound message is very large, or if the service cannot read inbound information fast enough. If a client requires a non-blocking call, generate operations. For more information, see [One-Way Services](/dotnet/framework/wcf/feature-details/one-way-services) and [Accessing Services Using a WCF Client](/dotnet/framework/wcf/feature-details/accessing-services-using-a-client). - - - -## Examples - The following example is a service that implements a service contract that specifies three operations. Two of the methods implement two-way operations, which return underlying response messages to the caller no matter what the return value is. The third method implements an operation that receives a call (an underlying inbound message) but returns no underlying response message. - -```csharp -[ServiceContract] -public class OneAndTwoWay -{ - // The client waits until a response message appears. - [OperationContract] - public int MethodOne (int x, out int y) - { - y = 34; - return 0; - } - - // The client waits until an empty response message appears. - [OperationContract] - public void MethodTwo (int x) - { - return; - } - - // The client returns as soon as an outbound message - // is queued for dispatch to the service; no response - // message is generated or sent. - [OperationContract(IsOneWay=true)] - public void MethodThree (int x) - { - return; - } -} -``` - + property to indicate that an operation does not return a reply message. This type of operation is useful for notifications or event-style communication, especially in two-way communication. Without waiting for an underlying response message, callers of one-way operations have no direct way to detect a failure in processing the request message. (Service applications that use reliable channels and one-way operations can detect a message delivery failure at the channel level. For details, see [Reliable Sessions Overview](/dotnet/framework/wcf/feature-details/reliable-sessions-overview).) + + In duplex (or two-way) service-oriented applications in which the client and server communicate with each other independently, a client channel can use the property on its methods to indicate that the service can make one-way calls to the client that the client can treat as events. No return call or message is generated because the service does not expect any response message. + + If the property is set to `false` (the default), even methods that return `void` result in a reply message. In this case, the infrastructure creates and sends an empty message to indicate to the caller that the method has returned. (Using this approach enables the infrastructure to send SOAP faults back to the client.) Setting to `true` is the only way to cancel the creation and dispatch of a response message. + + One-way methods must not return a value or have `ref` or `out` parameters; otherwise a exception is thrown. + + Specifying that an operation is a one-way operation means only that there is no response message. It is possible to block if a connection cannot be made, or the outbound message is very large, or if the service cannot read inbound information fast enough. If a client requires a non-blocking call, generate operations. For more information, see [One-Way Services](/dotnet/framework/wcf/feature-details/one-way-services) and [Accessing Services Using a WCF Client](/dotnet/framework/wcf/feature-details/accessing-services-using-a-client). + + + +## Examples + The following example is a service that implements a service contract that specifies three operations. Two of the methods implement two-way operations, which return underlying response messages to the caller no matter what the return value is. The third method implements an operation that receives a call (an underlying inbound message) but returns no underlying response message. + +```csharp +[ServiceContract] +public class OneAndTwoWay +{ + // The client waits until a response message appears. + [OperationContract] + public int MethodOne (int x, out int y) + { + y = 34; + return 0; + } + + // The client waits until an empty response message appears. + [OperationContract] + public void MethodTwo (int x) + { + return; + } + + // The client returns as soon as an outbound message + // is queued for dispatch to the service; no response + // message is generated or sent. + [OperationContract(IsOneWay=true)] + public void MethodThree (int x) + { + return; + } +} +``` + ]]> @@ -602,61 +602,61 @@ public class OneAndTwoWay if the operation causes the server to close the session, otherwise, . The default is . - property to indicate that calling a service operation terminates the communication session. - - In a client application, a value of set to `true` instructs WCF to close the channel after the reply arrives. - - In a service, a timer is set and the channel aborts if the client does not close the channel within that period. - - For more information about using this property with sessions, see [Using Sessions](/dotnet/framework/wcf/using-sessions). - + property to indicate that calling a service operation terminates the communication session. + + In a client application, a value of set to `true` instructs WCF to close the channel after the reply arrives. + + In a service, a timer is set and the channel aborts if the client does not close the channel within that period. + + For more information about using this property with sessions, see [Using Sessions](/dotnet/framework/wcf/using-sessions). + > [!NOTE] -> If a caller is listening for the event for an operation, it is possible to block when the response is received. The proper way to handle this is to schedule work on another thread when is raised and then immediately return from that event handler. - - - -## Examples - The following example is a service that implements a service contract that specifies three operations. The service requires a stateful connection. If a caller's first call is to any operation other than `MethodOne`, the channel is refused and an exception is thrown. When a caller initiates a session by calling `MethodOne`, that caller can terminate the communication session at any time by calling `MethodThree`. `MethodTwo` can be called any number of times during a session. - -```csharp -[ServiceContractAttribute(SessionMode=SessionMode.Required)] -public class InitializeAndTerminateService -{ - [OperationContract( - IsOneWay=true, - IsInitiating=true, - IsTerminating=false - )] - public void MethodOne() - { - return; - } - - [OperationContract( - IsInitiating=false, - IsTerminating=false - )] - public int MethodTwo(int x, out int y) - { - y = 34; - return 0; - } - - [OperationContract( - IsOneWay=true, - IsInitiating=false - IsTerminating=true - )] - public void MethodThree() - { - return; - } -} -``` - +> If a caller is listening for the event for an operation, it is possible to block when the response is received. The proper way to handle this is to schedule work on another thread when is raised and then immediately return from that event handler. + + + +## Examples + The following example is a service that implements a service contract that specifies three operations. The service requires a stateful connection. If a caller's first call is to any operation other than `MethodOne`, the channel is refused and an exception is thrown. When a caller initiates a session by calling `MethodOne`, that caller can terminate the communication session at any time by calling `MethodThree`. `MethodTwo` can be called any number of times during a session. + +```csharp +[ServiceContractAttribute(SessionMode=SessionMode.Required)] +public class InitializeAndTerminateService +{ + [OperationContract( + IsOneWay=true, + IsInitiating=true, + IsTerminating=false + )] + public void MethodOne() + { + return; + } + + [OperationContract( + IsInitiating=false, + IsTerminating=false + )] + public int MethodTwo(int x, out int y) + { + y = 34; + return 0; + } + + [OperationContract( + IsOneWay=true, + IsInitiating=false + IsTerminating=true + )] + public void MethodThree() + { + return; + } +} +``` + ]]> @@ -699,19 +699,19 @@ public class InitializeAndTerminateService Gets or sets the name of the operation. The name of the operation. - property to override the `` element name in WSDL. The default operation name is the name of the implementing method. - - - -## Examples - The following code example uses the property to declare the name of the operation as exposed in metadata. - + property to override the `` element name in WSDL. The default operation name is the name of the implementing method. + + + +## Examples + The following code example uses the property to declare the name of the operation as exposed in metadata. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontractattribute_properties/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute_properties/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute_properties/vb/services.vb" id="Snippet1"::: + ]]> @@ -753,33 +753,33 @@ public class InitializeAndTerminateService Gets or sets a value that specifies whether the messages of an operation must be encrypted, signed, or both. One of the values. The default is . - property to control whether the messages of an operation must be encrypted, signed, or both. The value set here is the default value for all messages specified for this operation unless a narrower scope overrides this value. - - It is important to remember that the protection behavior at runtime is the combination of the protection-level values set on the following properties. These properties have a hierarchical structure. Setting the outermost value establishes the default setting for all narrower scopes unless a different value for a narrower scope is explicitly set. In this case, the outer value remains the default for all narrower scopes with the exception of that specifically set. - - For example, if is set to and no other narrower scopes have protection level settings, all messages in an operation contract are encrypted and signed. If, however, one of those operations has the set to , then the messages for that operation are signed but all other messages in the contract are encrypted and signed. - - For details about protection levels and their assumptions and scopes, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). - - The scopes at which these values are set are: - - - - - - - - - - The property on . - - The property on . - - When there is no protection level explicitly specified on the contract and the underlying binding supports security (whether at the transport or message level), the effective protection level for the whole contract is . If the binding does not support security (such as ), the effective is for the whole contract. The result is that depending upon the endpoint binding, clients can require different message or transport level security protection even when the contract specifies . - + property to control whether the messages of an operation must be encrypted, signed, or both. The value set here is the default value for all messages specified for this operation unless a narrower scope overrides this value. + + It is important to remember that the protection behavior at runtime is the combination of the protection-level values set on the following properties. These properties have a hierarchical structure. Setting the outermost value establishes the default setting for all narrower scopes unless a different value for a narrower scope is explicitly set. In this case, the outer value remains the default for all narrower scopes with the exception of that specifically set. + + For example, if is set to and no other narrower scopes have protection level settings, all messages in an operation contract are encrypted and signed. If, however, one of those operations has the set to , then the messages for that operation are signed but all other messages in the contract are encrypted and signed. + + For details about protection levels and their assumptions and scopes, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). + + The scopes at which these values are set are: + + + + + + + + + + The property on . + + The property on . + + When there is no protection level explicitly specified on the contract and the underlying binding supports security (whether at the transport or message level), the effective protection level for the whole contract is . If the binding does not support security (such as ), the effective is for the whole contract. The result is that depending upon the endpoint binding, clients can require different message or transport level security protection even when the contract specifies . + ]]> The value is not one of the values. @@ -823,19 +823,19 @@ public class InitializeAndTerminateService Gets or sets the value of the SOAP action for the reply message of the operation. The value of the SOAP action for the reply message. - and properties to explicitly control the SOAP actions of both the input and output (or reply) messages. It also uses the property to declare the name of the operation as exposed in metadata. - + and properties to explicitly control the SOAP actions of both the input and output (or reply) messages. It also uses the property to declare the name of the operation as exposed in metadata. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/operationcontractattribute_properties/cs/services.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute_properties/vb/services.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/operationcontractattribute_properties/vb/services.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.ServiceModel/OptionalReliableSession.xml b/xml/System.ServiceModel/OptionalReliableSession.xml index 6fa47da5e89..383443912a7 100644 --- a/xml/System.ServiceModel/OptionalReliableSession.xml +++ b/xml/System.ServiceModel/OptionalReliableSession.xml @@ -38,23 +38,23 @@ Provides convenient access to whether a reliable session is enabled when using one of the predefined bindings where it is optional. - and and - -- Required (and hence always on) with . - - - -## Examples - The following example shows how to create a new reliable session, access and change the default values of that session. - + and and + +- Required (and hence always on) with . + + + +## Examples + The following example shows how to create a new reliable session, access and change the default values of that session. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ueoptionalreliablesession/cs/program.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_ueoptionalreliablesession/vb/source.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_ueoptionalreliablesession/vb/source.vb" id="Snippet0"::: + ]]> @@ -179,23 +179,23 @@ if the reliable session is enabled; otherwise, . The default value depends on the binding being used. - and . - -- Required (and hence always on) with . - - - -## Examples - The following example shows how to create a new reliable session, access and change the default values of that session. - + and . + +- Required (and hence always on) with . + + + +## Examples + The following example shows how to create a new reliable session, access and change the default values of that session. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_ueoptionalreliablesession/cs/program.cs" id="Snippet0"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_ueoptionalreliablesession/vb/source.vb" id="Snippet0"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_ueoptionalreliablesession/vb/source.vb" id="Snippet0"::: + ]]> diff --git a/xml/System.ServiceModel/PeerResolver.xml b/xml/System.ServiceModel/PeerResolver.xml index 58ab7d20e78..70ab740547f 100644 --- a/xml/System.ServiceModel/PeerResolver.xml +++ b/xml/System.ServiceModel/PeerResolver.xml @@ -17,11 +17,11 @@ Specifies a base type used to define the contract for the registration and resolution of a peer mesh ID to the endpoint addresses of nodes participating in the mesh. - @@ -105,11 +105,11 @@ that specifies the new referral policy for this peer resolver. Initializes the current peer resolver instance with the new supplied endpoint address and settings. - ). - + ). + ]]> @@ -199,17 +199,17 @@ The length of time to wait for a successful removal of the registration from the peer mesh. If the attempt fails, is raised on the peer. Removes the registration entry for a node from a peer mesh. - . - - is called in two specific cases: - -- When the is leaving the peer mesh (usually as the result of closing the last peer channel or service host that is associated with it). - -- When the can find no available endpoint addresses of other nodes participating in the peer mesh. As a result, the is no longer reachable, and it will attempt to call to unregister itself from the . If other peer nodes within the mesh become available subsequent to unregistration, the node can re-register itself by calling and obtaining a new registration ID. - + . + + is called in two specific cases: + +- When the is leaving the peer mesh (usually as the result of closing the last peer channel or service host that is associated with it). + +- When the can find no available endpoint addresses of other nodes participating in the peer mesh. As a result, the is no longer reachable, and it will attempt to call to unregister itself from the . If other peer nodes within the mesh become available subsequent to unregistration, the node can re-register itself by calling and obtaining a new registration ID. + ]]> @@ -241,11 +241,11 @@ The length of time to wait for success before aborting the attempt to update the node's registration within the peer mesh. If the attempt fails, is raised on the peer. Updates the for a node registered with a specific peer mesh. - is called when the address of the changes on the local machine. - + is called when the address of the changes on the local machine. + ]]> diff --git a/xml/System.ServiceModel/ReliableSession.xml b/xml/System.ServiceModel/ReliableSession.xml index 845b6393102..ac8b6ec7b00 100644 --- a/xml/System.ServiceModel/ReliableSession.xml +++ b/xml/System.ServiceModel/ReliableSession.xml @@ -38,19 +38,19 @@ Provides convenient access to the properties of a reliable session binding element that are available when using one of the system-provided bindings. - class are the subset of those contained in the that are accessible from a predefined binding. This subset consists of the and properties. The class references the same objects as does the , so changing the value of one changes the value of the other too. This class gathers these two properties of reliable session binding element together for better discoverability. - - - -## Examples - The following example shows how to create a new reliable session, and access and change the property values of that session. The class allows you to write: - + class are the subset of those contained in the that are accessible from a predefined binding. This subset consists of the and properties. The class references the same objects as does the , so changing the value of one changes the value of the other too. This class gathers these two properties of reliable session binding element together for better discoverability. + + + +## Examples + The following example shows how to create a new reliable session, and access and change the property values of that session. The class allows you to write: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uereliablesession/cs/program.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uereliablesession/vb/program.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uereliablesession/vb/program.vb" id="Snippet1"::: + ]]> @@ -120,12 +120,12 @@ The whose property values are used to initialize the reliable session. Initializes a new instance of the class from a reliable session binding element. - The is . @@ -160,31 +160,31 @@ Gets or sets an interval of time that a service can remain inactive before closing. The that specifies the interval of time that a service remains inactive before closing. The default value is 10 minutes. - property. - - Activity on a channel is defined as receiving an application or infrastructure message. The inactivity timeout property controls the maximum amount of time to keep an inactive session alive. If more than the specified time interval passes with no activity, the session is aborted by the infrastructure and the channel faults. The reliable session is torn down unilaterally. - - If the sending application has no messages to send then the reliable session is normally not faulted because of inactivity; instead a keep-alive mechanism keeps the session active indefinitely. Note that the dispatcher could independently abort the reliable session if no application messages are sent or received. Thus, the inactivity timeout typically expires if network conditions are such that no messages of any sort are received or if there is a failure on the sender. - - Setting this timeout prevents the server from holding onto a security session if the client does not close it. If the security session has not received a message for the inactivity interval of time, it is closed by the server. This mitigates a potential denial of service attack. - - When using a reliable session, there are two different inactivity timers that must be satisfied to keep the connection alive. If either of these inactivity timers goes off, then the connection is dropped. - -- The first inactivity timer is on the reliable session and is called the . This inactivity timer fires if no messages, either application or infrastructure, are received within the timeout period. An infrastructure message is a message that is generated for the purpose of one of the protocols in the channel stack, such as a keep alive or an acknowledgment, rather than containing application data. - -- The second inactivity timer is on the service and uses the setting of the binding. This inactivity timer fires if no application messages are received within the timeout period. - - Since the connection is dropped if either inactivity timer fires, increasing once it is greater than has no effect. The default for both of these timeouts is 10 minutes, so you always have to increase both of them to make a difference when using a reliable session. - - - -## Examples + property. + + Activity on a channel is defined as receiving an application or infrastructure message. The inactivity timeout property controls the maximum amount of time to keep an inactive session alive. If more than the specified time interval passes with no activity, the session is aborted by the infrastructure and the channel faults. The reliable session is torn down unilaterally. + + If the sending application has no messages to send then the reliable session is normally not faulted because of inactivity; instead a keep-alive mechanism keeps the session active indefinitely. Note that the dispatcher could independently abort the reliable session if no application messages are sent or received. Thus, the inactivity timeout typically expires if network conditions are such that no messages of any sort are received or if there is a failure on the sender. + + Setting this timeout prevents the server from holding onto a security session if the client does not close it. If the security session has not received a message for the inactivity interval of time, it is closed by the server. This mitigates a potential denial of service attack. + + When using a reliable session, there are two different inactivity timers that must be satisfied to keep the connection alive. If either of these inactivity timers goes off, then the connection is dropped. + +- The first inactivity timer is on the reliable session and is called the . This inactivity timer fires if no messages, either application or infrastructure, are received within the timeout period. An infrastructure message is a message that is generated for the purpose of one of the protocols in the channel stack, such as a keep alive or an acknowledgment, rather than containing application data. + +- The second inactivity timer is on the service and uses the setting of the binding. This inactivity timer fires if no application messages are received within the timeout period. + + Since the connection is dropped if either inactivity timer fires, increasing once it is greater than has no effect. The default for both of these timeouts is 10 minutes, so you always have to increase both of them to make a difference when using a reliable session. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uereliablesession/cs/program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uereliablesession/vb/program.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uereliablesession/vb/program.vb" id="Snippet2"::: + ]]> The value set is less than or equal to zero. @@ -226,17 +226,17 @@ if messages must be delivered in the order in which they are sent; otherwise, . The default value is . - property. - - - -## Examples + property. + + + +## Examples :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/uereliablesession/cs/program.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uereliablesession/vb/program.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/uereliablesession/vb/program.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.ServiceModel/ServiceBehaviorAttribute.xml b/xml/System.ServiceModel/ServiceBehaviorAttribute.xml index ebfad7be975..a5b7125a14f 100644 --- a/xml/System.ServiceModel/ServiceBehaviorAttribute.xml +++ b/xml/System.ServiceModel/ServiceBehaviorAttribute.xml @@ -34,35 +34,35 @@ properties are a Windows Communication Foundation (WCF) programming model feature that enables common features that developers otherwise have to implement. For more information about these and other behaviors, see [Specifying Service Run-Time Behavior](/dotnet/framework/wcf/specifying-service-run-time-behavior). For more information about the underlying runtime properties that some of the following properties set, see [Extending ServiceHost and the Service Model Layer](/dotnet/framework/wcf/extending/extending-servicehost-and-the-service-model-layer). -- The property specifies the type of filter that the dispatcher system uses to locate the endpoint that handles requests. +- The property specifies the type of filter that the dispatcher system uses to locate the endpoint that handles requests. -- The property automatically closes the session when the channel is closed and the service has finished processing any remaining messages. +- The property automatically closes the session when the channel is closed and the service has finished processing any remaining messages. -- The property controls the internal threading model, enabling support for reentrant or multithreaded services. +- The property controls the internal threading model, enabling support for reentrant or multithreaded services. -- The property is used to declare a name for use in the `name` attribute of the `` element in a configuration file. +- The property is used to declare a name for use in the `name` attribute of the `` element in a configuration file. -- The property enables the run time to ignore extra serialization information that is not required to process the message. +- The property enables the run time to ignore extra serialization information that is not required to process the message. -- The property specifies whether unhandled exceptions in a service are returned as SOAP faults. This is for debugging purposes only. +- The property specifies whether unhandled exceptions in a service are returned as SOAP faults. This is for debugging purposes only. -- The property specifies whether and when services and their service objects are to be recycled during an exchange with a client. +- The property specifies whether and when services and their service objects are to be recycled during an exchange with a client. -- The property to limit on the number of items in an object graph that are serialized. +- The property to limit on the number of items in an object graph that are serialized. -- The and properties control the name and namespace for the WSDL expression of the service element. +- The and properties control the name and namespace for the WSDL expression of the service element. -- The property specifies whether the service object is recycled when a transaction completes. +- The property specifies whether the service object is recycled when a transaction completes. -- The property specifies whether outstanding transactions are completed when the session closes. +- The property specifies whether outstanding transactions are completed when the session closes. -- The property specifies the transaction isolation level that the contract supports. +- The property specifies the transaction isolation level that the contract supports. -- The property specifies the time period within which a transaction must complete or it aborts. +- The property specifies the time period within which a transaction must complete or it aborts. -- The property indicates whether to synchronize inbound method calls with the user interface thread automatically. +- The property indicates whether to synchronize inbound method calls with the user interface thread automatically. -- The property informs the system whether it should confirm that SOAP headers marked as `MustUnderstand` have, in fact, been understood. +- The property informs the system whether it should confirm that SOAP headers marked as `MustUnderstand` have, in fact, been understood. The property can also be set using an application configuration file. For details, see . @@ -71,11 +71,11 @@ ## Examples The following code example demonstrates the properties. The `BehaviorService` class uses the attribute to indicate that: -- The service object is recycled when the transaction completes. +- The service object is recycled when the transaction completes. -- There is one service object for each session. +- There is one service object for each session. -- The service is single-threaded and does not support reentrant calls. +- The service is single-threaded and does not support reentrant calls. Furthermore, at the operation level, the values indicate that the `TxWork` method automatically enlists in flowed transactions or creates a new transaction to do the work, and that the transaction is committed automatically if an unhandled exception does not occur. @@ -113,35 +113,35 @@ ## Remarks The default values for the are: -- The is set to . +- The is set to . -- The property is `true`. +- The property is `true`. -- The is set to . +- The is set to . -- The property is the namespace-qualified name of the type without the assembly information. +- The property is the namespace-qualified name of the type without the assembly information. -- The property is `false`. +- The property is `false`. -- The property is set to 64KB. +- The property is set to 64KB. -- The property is the name of the service type, without namespace or assembly information. +- The property is the name of the service type, without namespace or assembly information. -- The property is `"http://tempuri.org"`. +- The property is `"http://tempuri.org"`. -- The property is `true`. +- The property is `true`. - is `false`. - is `true`. -- The property is `false`. +- The property is `false`. -- The property is . +- The property is . -- The property is set to . +- The property is set to . -- The property is `true`. +- The property is `true`. ]]> @@ -524,11 +524,11 @@ public void MyMethod() ## Examples The following code example demonstrates the properties. The `BehaviorService` class uses the attribute to indicate that: -- Implementation methods are invoked on the UI thread. +- Implementation methods are invoked on the UI thread. -- There is one service object for each session. +- There is one service object for each session. -- The service is single-threaded and does not support reentrant calls. +- The service is single-threaded and does not support reentrant calls. Furthermore, at the operation level, the values indicate that the `TxWork` method automatically enlists in flowed transactions or creates a new transaction to do the work, and that the transaction is committed automatically if an unhandled exception does not occur. @@ -590,11 +590,11 @@ public void MyMethod() ## Examples The following code example demonstrates the properties. The `BehaviorService` class uses the attribute to indicate that: -- Implementation methods are invoked on the UI thread. +- Implementation methods are invoked on the UI thread. -- There is one service object for each session. +- There is one service object for each session. -- The service is single-threaded and does not support reentrant calls. +- The service is single-threaded and does not support reentrant calls. Furthermore, at the operation level, the values indicate that the `TxWork` method automatically enlists in flowed transactions or creates a new transaction to do the work, and that the transaction is committed automatically if an unhandled exception does not occur. diff --git a/xml/System.ServiceModel/ServiceContractAttribute.xml b/xml/System.ServiceModel/ServiceContractAttribute.xml index 93d45fc70c5..37d555b8b8f 100644 --- a/xml/System.ServiceModel/ServiceContractAttribute.xml +++ b/xml/System.ServiceModel/ServiceContractAttribute.xml @@ -51,63 +51,63 @@ Indicates that an interface or a class defines a service contract in a Windows Communication Foundation (WCF) application. - attribute on an interface (or class) to define a service contract. Then use the attribute on one or more of the class (or interface) methods to define the contract's service operations. When the service contract is implemented and combined with a [Bindings](/dotnet/framework/wcf/bindings) and an object, the service contract is exposed for use by clients. For an overview of the process using simple examples, see [Getting Started Tutorial](/dotnet/framework/wcf/getting-started-tutorial). For more information about creating service contracts, see [Designing and Implementing Services](/dotnet/framework/wcf/designing-and-implementing-services). - - The information expressed by a and its interface is loosely related to the Web Services Description Language (WSDL) `` element. A service contract is used on the service side to specify what the service's endpoint exposes to callers. It is also used on the client side to specify the contract of the endpoint with which the client communicates and, in the case of duplex contracts, to specify the callback contract (using the property) that the client must implement in order to participate in a duplex conversation. - + attribute on an interface (or class) to define a service contract. Then use the attribute on one or more of the class (or interface) methods to define the contract's service operations. When the service contract is implemented and combined with a [Bindings](/dotnet/framework/wcf/bindings) and an object, the service contract is exposed for use by clients. For an overview of the process using simple examples, see [Getting Started Tutorial](/dotnet/framework/wcf/getting-started-tutorial). For more information about creating service contracts, see [Designing and Implementing Services](/dotnet/framework/wcf/designing-and-implementing-services). + + The information expressed by a and its interface is loosely related to the Web Services Description Language (WSDL) `` element. A service contract is used on the service side to specify what the service's endpoint exposes to callers. It is also used on the client side to specify the contract of the endpoint with which the client communicates and, in the case of duplex contracts, to specify the callback contract (using the property) that the client must implement in order to participate in a duplex conversation. + > [!NOTE] -> An interface or class that is decorated with must also have at least one method marked with the attribute to expose any functionality. See the Examples section for a code example of the simplest use of the two attributes to define and implement a service. - - Use the properties to modify the service contract. - -- The property specifies the name of the service element in the configuration file to use. - -- The and properties control the name and namespace of the contract in the WSDL `` element. - -- The property specifies whether the contract requires a binding that supports sessions. - -- The property specifies the return contract in a two-way (duplex) conversation. - -- The and properties indicate whether all messages supporting the contract have a explicit value, and if so, what that level is. - - Services implement service contracts, which represent the data exchange that a service type supports. A service class can implement a service contract (by implementing an interface marked with that has methods marked with ) or it can be marked with the and apply the attribute to its own methods. (If a class implements an interface marked with , it cannot be itself marked with .) Methods on service types that are marked with the are treated as part of a default service contract specified by the service type itself. For details about service operations, see . - - By default, the and properties are the name of the contract type and `http://tempuri.org`, respectively, and is . It is recommended that service contracts explicitly set their names, namespaces, and protection levels using these properties. Doing so accomplishes two goals. First, it builds a contract that is not directly connected to the managed type information, enabling you to refactor your managed code and namespaces without breaking the contract as it is expressed in WSDL. Second, explicitly requiring a certain level of protection on the contract itself enables the runtime to validate whether the binding configuration supports that level of security, preventing poor configuration from exposing sensitive information. For more information about protection levels, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). - - To expose a service for use by client applications, create a host application to register your service endpoint with Windows Communication Foundation (WCF). You can host WCF services using Windows Activation Services (WAS), in console applications, Windows Service applications, ASP.NET applications, Windows Forms applications, or any other kind of application domain. - - Hosting in the WAS is very similar to creating an ASP.NET application. For details, see [How to: Host a WCF Service in IIS](/dotnet/framework/wcf/feature-details/how-to-host-a-wcf-service-in-iis). - - Clients either use the service contract interface (the interface marked with ) to create a channel to the service or they use the client objects (which combine the type information of the service contract interface with the class) to communicate with your service. For details on client channels to services, see the class and [WCF Client Overview](/dotnet/framework/wcf/wcf-client-overview). - - Using a class or interface to inherit from another class or interface extends the parent contract. For example, if an `IChildContract` interface is marked with and inherited from another service contract interface, `IParentContract`, the `IChildContract` service contract contains the methods of both `IParentContract` and `IChildContract`. Extending contracts (whether on classes or interfaces) is very similar to extending managed classes and interfaces. - - The most flexible approach to creating services is to define service contract interfaces first and then have your service class implement that interface. (This is also the simplest way to build your services if you must implement service contracts that have been defined by others.) Building services directly by marking a class with and its methods with works when the service exposes only one contract (but that contract can be exposed by more than one endpoint). - - Use the property to indicate another service contract that, when bound together with the original service contract, define a message exchange that can flow in two ways independently. For details, see . - - - -## Examples - The following code example shows how to apply the to an interface to define a service contract with one service method, indicated by the . In this case, the protection level required of bindings for all messages is . - - The code example then implements that contract on the `SampleService` class. - +> An interface or class that is decorated with must also have at least one method marked with the attribute to expose any functionality. See the Examples section for a code example of the simplest use of the two attributes to define and implement a service. + + Use the properties to modify the service contract. + +- The property specifies the name of the service element in the configuration file to use. + +- The and properties control the name and namespace of the contract in the WSDL `` element. + +- The property specifies whether the contract requires a binding that supports sessions. + +- The property specifies the return contract in a two-way (duplex) conversation. + +- The and properties indicate whether all messages supporting the contract have a explicit value, and if so, what that level is. + + Services implement service contracts, which represent the data exchange that a service type supports. A service class can implement a service contract (by implementing an interface marked with that has methods marked with ) or it can be marked with the and apply the attribute to its own methods. (If a class implements an interface marked with , it cannot be itself marked with .) Methods on service types that are marked with the are treated as part of a default service contract specified by the service type itself. For details about service operations, see . + + By default, the and properties are the name of the contract type and `http://tempuri.org`, respectively, and is . It is recommended that service contracts explicitly set their names, namespaces, and protection levels using these properties. Doing so accomplishes two goals. First, it builds a contract that is not directly connected to the managed type information, enabling you to refactor your managed code and namespaces without breaking the contract as it is expressed in WSDL. Second, explicitly requiring a certain level of protection on the contract itself enables the runtime to validate whether the binding configuration supports that level of security, preventing poor configuration from exposing sensitive information. For more information about protection levels, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). + + To expose a service for use by client applications, create a host application to register your service endpoint with Windows Communication Foundation (WCF). You can host WCF services using Windows Activation Services (WAS), in console applications, Windows Service applications, ASP.NET applications, Windows Forms applications, or any other kind of application domain. + + Hosting in the WAS is very similar to creating an ASP.NET application. For details, see [How to: Host a WCF Service in IIS](/dotnet/framework/wcf/feature-details/how-to-host-a-wcf-service-in-iis). + + Clients either use the service contract interface (the interface marked with ) to create a channel to the service or they use the client objects (which combine the type information of the service contract interface with the class) to communicate with your service. For details on client channels to services, see the class and [WCF Client Overview](/dotnet/framework/wcf/wcf-client-overview). + + Using a class or interface to inherit from another class or interface extends the parent contract. For example, if an `IChildContract` interface is marked with and inherited from another service contract interface, `IParentContract`, the `IChildContract` service contract contains the methods of both `IParentContract` and `IChildContract`. Extending contracts (whether on classes or interfaces) is very similar to extending managed classes and interfaces. + + The most flexible approach to creating services is to define service contract interfaces first and then have your service class implement that interface. (This is also the simplest way to build your services if you must implement service contracts that have been defined by others.) Building services directly by marking a class with and its methods with works when the service exposes only one contract (but that contract can be exposed by more than one endpoint). + + Use the property to indicate another service contract that, when bound together with the original service contract, define a message exchange that can flow in two ways independently. For details, see . + + + +## Examples + The following code example shows how to apply the to an interface to define a service contract with one service method, indicated by the . In this case, the protection level required of bindings for all messages is . + + The code example then implements that contract on the `SampleService` class. + [!code-csharp[ServiceContractAttribute#1](~/snippets/csharp/VS_Snippets_CFX/servicecontractattribute/cs/services.cs#1)] - [!code-vb[ServiceContractAttribute#1](~/snippets/visualbasic/VS_Snippets_CFX/servicecontractattribute/vb/services.vb#1)] - - The following code example shows a simple configuration file for the preceding service that creates one endpoint. - - [!code-xml[ServiceContractAttribute#2](~/snippets/csharp/VS_Snippets_CFX/servicecontractattribute/cs/hostapplication.exe.config#2)] - - The following code example shows a simple client that invokes the preceding `SampleService`. - + [!code-vb[ServiceContractAttribute#1](~/snippets/visualbasic/VS_Snippets_CFX/servicecontractattribute/vb/services.vb#1)] + + The following code example shows a simple configuration file for the preceding service that creates one endpoint. + + [!code-xml[ServiceContractAttribute#2](~/snippets/csharp/VS_Snippets_CFX/servicecontractattribute/cs/hostapplication.exe.config#2)] + + The following code example shows a simple client that invokes the preceding `SampleService`. + [!code-csharp[ServiceContractAttribute#3](~/snippets/csharp/VS_Snippets_CFX/servicecontractattribute/cs/client.cs#3)] - [!code-vb[ServiceContractAttribute#3](~/snippets/visualbasic/VS_Snippets_CFX/servicecontractattribute/vb/client.vb#3)] - + [!code-vb[ServiceContractAttribute#3](~/snippets/visualbasic/VS_Snippets_CFX/servicecontractattribute/vb/client.vb#3)] + ]]> @@ -152,11 +152,11 @@ Initializes a new instance of the class. - @@ -203,22 +203,22 @@ Gets or sets the type of callback contract when the contract is a duplex contract. A that indicates the callback contract. The default is . - property that represents the required opposite contract in a two-way (or duplex) message exchange. This enables client applications to listen for inbound operation calls that the server-side service application can send independently of client activity. Callback contracts that have one-way operations represent calls from the service that the client can handle. - + property that represents the required opposite contract in a two-way (or duplex) message exchange. This enables client applications to listen for inbound operation calls that the server-side service application can send independently of client activity. Callback contracts that have one-way operations represent calls from the service that the client can handle. + > [!NOTE] -> The attribute is ignored on callback contracts. To configure runtime behavior of callback objects, use the . - - - -## Examples - The following code example shows a service that specifies a callback contract, which indicates that a service of type `IDuplexHello` must have a correspondent that implements a service of type `IHelloCallbackContract`. In addition, `IHelloCallbackContract` implements a one-way callback method, enabling the service to call the client without waiting for a reply to support a distributed, event-driven client. - +> The attribute is ignored on callback contracts. To configure runtime behavior of callback objects, use the . + + + +## Examples + The following code example shows a service that specifies a callback contract, which indicates that a service of type `IDuplexHello` must have a correspondent that implements a service of type `IHelloCallbackContract`. In addition, `IHelloCallbackContract` implements a one-way callback method, enabling the service to call the client without waiting for a reply to support a distributed, event-driven client. + [!code-csharp[SCA.CallbackContract#1](~/snippets/csharp/VS_Snippets_CFX/sca.callbackcontract/cs/services.cs#1)] - [!code-vb[SCA.CallbackContract#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb#1)] - + [!code-vb[SCA.CallbackContract#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.callbackcontract/vb/services.vb#1)] + ]]> @@ -261,11 +261,11 @@ Gets or sets the name used to locate the service in an application configuration file. The name used to locate the service element in an application configuration file. The default is the name of the service implementation class. - . - + . + ]]> The value is null. @@ -307,11 +307,11 @@ if the property is not ; otherwise, . The default is . - property indicates whether a protection level value other than `false` has been set for the contract. - + property indicates whether a protection level value other than `false` has been set for the contract. + ]]> @@ -354,24 +354,24 @@ Gets or sets the name for the element in Web Services Description Language (WSDL). The default value is the name of the class or interface to which the is applied. - and the properties to control the name and namespace of the `` element in WSDL. - - - -## Examples - The following code example shows how to use the and properties of the to set the corresponding values in WSDL. - + and the properties to control the name and namespace of the `` element in WSDL. + + + +## Examples + The following code example shows how to use the and properties of the to set the corresponding values in WSDL. + [!code-csharp[SCA.Names#1](~/snippets/csharp/VS_Snippets_CFX/sca.names/cs/services.cs#1)] - [!code-vb[SCA.Names#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/services.vb#1)] - - The following code example shows an Windows Communication Foundation (WCF) client for the preceding service that imported WSDL using the [ServiceModel Metadata Utility Tool (Svcutil.exe)](/dotnet/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe). This client uses a `HelloWorldProxy` client rather than a `SampleServiceProxy` client (as is the case with the sample in the Example section of ). - + [!code-vb[SCA.Names#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/services.vb#1)] + + The following code example shows an Windows Communication Foundation (WCF) client for the preceding service that imported WSDL using the [ServiceModel Metadata Utility Tool (Svcutil.exe)](/dotnet/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe). This client uses a `HelloWorldProxy` client rather than a `SampleServiceProxy` client (as is the case with the sample in the Example section of ). + [!code-csharp[SCA.Names#3](~/snippets/csharp/VS_Snippets_CFX/sca.names/cs/client.cs#3)] - [!code-vb[SCA.Names#3](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/client.vb#3)] - + [!code-vb[SCA.Names#3](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/client.vb#3)] + ]]> The value is null. @@ -416,19 +416,19 @@ Gets or sets the namespace of the element in Web Services Description Language (WSDL). The WSDL namespace of the element. The default value is "http://tempuri.org". - and properties of the to set the corresponding values in WSDL. - + and properties of the to set the corresponding values in WSDL. + [!code-csharp[SCA.Names#1](~/snippets/csharp/VS_Snippets_CFX/sca.names/cs/services.cs#1)] - [!code-vb[SCA.Names#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/services.vb#1)] - - The following code example shows an Windows Communication Foundation (WCF) client for the preceding service that imported WSDL using the [ServiceModel Metadata Utility Tool (Svcutil.exe)](/dotnet/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe). This client uses a `HelloWorldClient` client rather than a `SampleServiceClient` client (as is the case with the sample in the Example section of ). - + [!code-vb[SCA.Names#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/services.vb#1)] + + The following code example shows an Windows Communication Foundation (WCF) client for the preceding service that imported WSDL using the [ServiceModel Metadata Utility Tool (Svcutil.exe)](/dotnet/framework/wcf/servicemodel-metadata-utility-tool-svcutil-exe). This client uses a `HelloWorldClient` client rather than a `SampleServiceClient` client (as is the case with the sample in the Example section of ). + [!code-csharp[SCA.Names#3](~/snippets/csharp/VS_Snippets_CFX/sca.names/cs/client.cs#3)] - [!code-vb[SCA.Names#3](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/client.vb#3)] - + [!code-vb[SCA.Names#3](~/snippets/visualbasic/VS_Snippets_CFX/sca.names/vb/client.vb#3)] + ]]> @@ -467,33 +467,33 @@ Specifies whether the binding for the contract must support the value of the property. One of the values. The default is . - property to specify the degree to which the contract binding requires encryption, digital signatures, or both for endpoints that expose the contract. The value set here is the default value for all operation messages including faults. - - It is important to remember that the protection behavior at runtime is the combination of the protection-level values set on the following properties. These properties have a hierarchical structure. Setting the outermost value establishes the default setting for all narrower scopes unless a different value for a narrower scope is explicitly set. In this case, the outer value remains the default for all narrower scopes with the exception of that specifically set. - - For example, if is set to and no other narrower scopes have protection level settings, all messages in an operation contract are encrypted and signed. If, however, one of those operations has the set to , then the messages for that operation are signed but all other messages in the contract are encrypted and signed. - - For details about protection levels and their assumptions and scopes, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). - - The scopes at which these values are set are: - - - - - - - - - - The property on . - - The property on . - - When there is no protection level explicitly specified on the contract and the underlying binding supports security (whether at the transport or message level), the effective protection level for the whole contract is . If the binding does not support security (such as ), the effective is for the whole contract. The result is that depending upon the endpoint binding, clients can require different message or transport level security protection even when the contract specifies . - + property to specify the degree to which the contract binding requires encryption, digital signatures, or both for endpoints that expose the contract. The value set here is the default value for all operation messages including faults. + + It is important to remember that the protection behavior at runtime is the combination of the protection-level values set on the following properties. These properties have a hierarchical structure. Setting the outermost value establishes the default setting for all narrower scopes unless a different value for a narrower scope is explicitly set. In this case, the outer value remains the default for all narrower scopes with the exception of that specifically set. + + For example, if is set to and no other narrower scopes have protection level settings, all messages in an operation contract are encrypted and signed. If, however, one of those operations has the set to , then the messages for that operation are signed but all other messages in the contract are encrypted and signed. + + For details about protection levels and their assumptions and scopes, see [Understanding Protection Level](/dotnet/framework/wcf/understanding-protection-level). + + The scopes at which these values are set are: + + + + + + + + + + The property on . + + The property on . + + When there is no protection level explicitly specified on the contract and the underlying binding supports security (whether at the transport or message level), the effective protection level for the whole contract is . If the binding does not support security (such as ), the effective is for the whole contract. The result is that depending upon the endpoint binding, clients can require different message or transport level security protection even when the contract specifies . + ]]> The value is not one of the values. @@ -534,36 +534,36 @@ Gets or sets whether sessions are allowed, not allowed or required. A that indicates whether sessions are allowed, not allowed, or required. - property to require bindings that support sessions between endpoints. A session is a way of correlating a set of messages exchanged between two or more endpoints. If your service supports channel sessions, you can then use the property to specify the relationship between instances your service contract implementation and the channel session. If a binding does not support sessions, an exception is thrown. - - For example, if the property is set to and the property is set to , clients can use the same connection to make repeated calls to the same service object. - - For more information about sessions and service instances, see [Using Sessions](/dotnet/framework/wcf/using-sessions) and [Sessions, Instancing, and Concurrency](/dotnet/framework/wcf/feature-details/sessions-instancing-and-concurrency). - + property to require bindings that support sessions between endpoints. A session is a way of correlating a set of messages exchanged between two or more endpoints. If your service supports channel sessions, you can then use the property to specify the relationship between instances your service contract implementation and the channel session. If a binding does not support sessions, an exception is thrown. + + For example, if the property is set to and the property is set to , clients can use the same connection to make repeated calls to the same service object. + + For more information about sessions and service instances, see [Using Sessions](/dotnet/framework/wcf/using-sessions) and [Sessions, Instancing, and Concurrency](/dotnet/framework/wcf/feature-details/sessions-instancing-and-concurrency). + > [!NOTE] -> A channel that supports sessions supports the default association of a service instance with a particular session. However, different session implementations support different features in addition to session-based instancing control. WCF provides four types of sessions that you can use to provide sessionful application behavior; each type of session provides additional behavior specific to the type of session it is. - -1. The supports security sessions, in which both ends of communication have agreed upon an encryption and/or digital signature process; all messages are correlated with that specific secure conversation. For more information, see [Securing Services](/dotnet/framework/wcf/securing-services). For example, the , which contains support for both security sessions and reliable sessions, by default uses only a secure session which encrypts and digitally signs messages. - -2. The supports the sessions exposed by the TCP/IP connections to ensure that all messages are correlated by the connection session at the socket level. - -3. The , which implements the WS-ReliableMessaging specification, provides support for reliable sessions in which messages are delivered in order and exactly once, enabling confidence even when messages travel across multiple nodes during the conversation. For more information, see [Reliable Sessions](/dotnet/framework/wcf/feature-details/reliable-sessions). - -4. The provides MSMQ datagram sessions. For more information, see [Queues in WCF](/dotnet/framework/wcf/feature-details/queues-in-wcf). - - Remember that setting the property does not specify the type of session the contract requires, only that it requires one. - - - -## Examples - The following service contract requires that configured bindings use sessions when interacting with `SampleDuplexHello` service implementations. - +> A channel that supports sessions supports the default association of a service instance with a particular session. However, different session implementations support different features in addition to session-based instancing control. WCF provides four types of sessions that you can use to provide sessionful application behavior; each type of session provides additional behavior specific to the type of session it is. + +1. The supports security sessions, in which both ends of communication have agreed upon an encryption and/or digital signature process; all messages are correlated with that specific secure conversation. For more information, see [Securing Services](/dotnet/framework/wcf/securing-services). For example, the , which contains support for both security sessions and reliable sessions, by default uses only a secure session which encrypts and digitally signs messages. + +2. The supports the sessions exposed by the TCP/IP connections to ensure that all messages are correlated by the connection session at the socket level. + +3. The , which implements the WS-ReliableMessaging specification, provides support for reliable sessions in which messages are delivered in order and exactly once, enabling confidence even when messages travel across multiple nodes during the conversation. For more information, see [Reliable Sessions](/dotnet/framework/wcf/feature-details/reliable-sessions). + +4. The provides MSMQ datagram sessions. For more information, see [Queues in WCF](/dotnet/framework/wcf/feature-details/queues-in-wcf). + + Remember that setting the property does not specify the type of session the contract requires, only that it requires one. + + + +## Examples + The following service contract requires that configured bindings use sessions when interacting with `SampleDuplexHello` service implementations. + [!code-csharp[SCA.Session#1](~/snippets/csharp/VS_Snippets_CFX/sca.session/cs/services.cs#1)] - [!code-vb[SCA.Session#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.session/vb/services.vb#1)] - + [!code-vb[SCA.Session#1](~/snippets/visualbasic/VS_Snippets_CFX/sca.session/vb/services.vb#1)] + ]]> The value is not one of the values. diff --git a/xml/System.ServiceModel/ServiceSecurityContext.xml b/xml/System.ServiceModel/ServiceSecurityContext.xml index d0736166daf..426ec21ffbf 100644 --- a/xml/System.ServiceModel/ServiceSecurityContext.xml +++ b/xml/System.ServiceModel/ServiceSecurityContext.xml @@ -33,44 +33,44 @@ Represents the security context of a remote party. On the client, represents the service identity and, on the service, represents the client identity. - for a message. - - Use this class to obtain information about a remote *security context* at runtime. A security context is created when a client is successfully authenticated and authorized to access a method. When a message is successfully authenticated and authorized, the security information from the client and for the current service instance can be obtained from an instance of this class. - - You can retrieve an instance of the from the property of the class, or use it from within a service operation method, as shown in the following example. - -## Parsing a ClaimSet - A common use of the class is to retrieve the current set of claims for the purpose of identifying or authorizing a client when accessing a method. The class contains a collection of objects, and each can be parsed to determine whether a specific claim is present. If the specified claim is provided, authorization can be granted. This functionality is provided by overriding the method of the class. For a complete example, see the [Authorization Policy](/dotnet/framework/wcf/samples/authorization-policy). - -## Cookie Mode and IsAuthenticated - Note that under some circumstances, the property of the interface returns `true` even if the remote client is authenticated as an anonymous user. (The property returns an implementation of the interface.) The following circumstances must be true for this to occur: - -- The service uses Windows authentication. - -- The service allows anonymous logons. - -- The binding is a [<customBinding>](/dotnet/framework/configure-apps/file-schema/wcf/custombinding). - -- The custom binding includes a `` element. - -- The `` element includes a [<secureConversationBootstrap>](/dotnet/framework/configure-apps/file-schema/wcf/secureconversationbootstrap) with the `requireSecurityContextCancellation` attribute set to `false`. - - - -## Examples - The following example uses the class to provide information about the current security context. The code creates an instance of the class to write the information to a file. - + for a message. + + Use this class to obtain information about a remote *security context* at runtime. A security context is created when a client is successfully authenticated and authorized to access a method. When a message is successfully authenticated and authorized, the security information from the client and for the current service instance can be obtained from an instance of this class. + + You can retrieve an instance of the from the property of the class, or use it from within a service operation method, as shown in the following example. + +## Parsing a ClaimSet + A common use of the class is to retrieve the current set of claims for the purpose of identifying or authorizing a client when accessing a method. The class contains a collection of objects, and each can be parsed to determine whether a specific claim is present. If the specified claim is provided, authorization can be granted. This functionality is provided by overriding the method of the class. For a complete example, see the [Authorization Policy](/dotnet/framework/wcf/samples/authorization-policy). + +## Cookie Mode and IsAuthenticated + Note that under some circumstances, the property of the interface returns `true` even if the remote client is authenticated as an anonymous user. (The property returns an implementation of the interface.) The following circumstances must be true for this to occur: + +- The service uses Windows authentication. + +- The service allows anonymous logons. + +- The binding is a [<customBinding>](/dotnet/framework/configure-apps/file-schema/wcf/custombinding). + +- The custom binding includes a `` element. + +- The `` element includes a [<secureConversationBootstrap>](/dotnet/framework/configure-apps/file-schema/wcf/secureconversationbootstrap) with the `requireSecurityContextCancellation` attribute set to `false`. + + + +## Examples + The following example uses the class to provide information about the current security context. The code creates an instance of the class to write the information to a file. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicesecuritycontext/cs/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/servicesecuritycontext/vb/source.vb" id="Snippet1"::: - - The following example shows an implementation of the method that uses the to parse a set of claims. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/servicesecuritycontext/vb/source.vb" id="Snippet1"::: + + The following example shows an implementation of the method that uses the to parse a set of claims. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/servicesecuritycontext/cs/source.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/servicesecuritycontext/vb/source.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/servicesecuritycontext/vb/source.vb" id="Snippet2"::: + ]]> @@ -121,11 +121,11 @@ A of type that contains the authorization policies. Initializes a new instance of the class with the collection of policies object. - @@ -158,11 +158,11 @@ An that contains authorization information. Initializes a new instance of the class with the specified authorization parameters. - . For the default policy engine, use the constructors that take a collection of as parameter. - + . For the default policy engine, use the constructors that take a collection of as parameter. + ]]> @@ -301,11 +301,11 @@ Gets the collection of policies associated with an instance of this class. A of type that contains the policies. - @@ -394,20 +394,20 @@ Gets the primary identity associated with the current setting. An associated with the current setting. - is not used on the client. In a duplex scenario during callback, if the callback inspects this property, it gets an anonymous identity. - - - -## Examples - For an example of using the `PrimaryIdentity` property to authorize a client using a certificate, see [How to: Examine the Security Context](/dotnet/framework/wcf/how-to-examine-the-security-context). - + is not used on the client. In a duplex scenario during callback, if the callback inspects this property, it gets an anonymous identity. + + + +## Examples + For an example of using the `PrimaryIdentity` property to authorize a client using a certificate, see [How to: Examine the Security Context](/dotnet/framework/wcf/how-to-examine-the-security-context). + ]]> @@ -438,18 +438,18 @@ Gets the Windows identity of the current setting. A that represents the Windows domain user. - property is set to `true`. - - - -## Examples - - - - + property is set to `true`. + + + +## Examples + + + + ]]> diff --git a/xml/System.ServiceModel/SpnEndpointIdentity.xml b/xml/System.ServiceModel/SpnEndpointIdentity.xml index 19e832b5b36..7961e74edc0 100644 --- a/xml/System.ServiceModel/SpnEndpointIdentity.xml +++ b/xml/System.ServiceModel/SpnEndpointIdentity.xml @@ -51,29 +51,29 @@ Represents a service principal name (SPN) for an identity when the binding uses Kerberos. - . A check will be made that the message is intended for that service. - - The three authentication modes used under Kerberos are: - -- SSPINegotiate - -- Kerberos - -- KerberosOverTransport. - - - -## Examples - The following code shows one common way to create an instance of this class. - + . A check will be made that the message is intended for that service. + + The three authentication modes used under Kerberos are: + +- SSPINegotiate + +- Kerberos + +- KerberosOverTransport. + + + +## Examples + The following code shows one common way to create an instance of this class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uespnendpointidentity/cs/service.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uespnendpointidentity/vb/service.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uespnendpointidentity/vb/service.vb" id="Snippet1"::: + ]]> @@ -118,19 +118,19 @@ The identity for this service principal name (SPN). Initializes a new instance of with the specified identity claim. - property to 1 minute. - - - -## Examples - The following code shows how to create identities from a set of claims. - + property to 1 minute. + + + +## Examples + The following code shows how to create identities from a set of claims. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uespnendpointidentity/cs/service.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uespnendpointidentity/vb/service.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uespnendpointidentity/vb/service.vb" id="Snippet2"::: + ]]> @@ -178,19 +178,19 @@ The SPN. Initializes a new instance of with the specified service principal name (SPN). - property to 1 minute. - - - -## Examples - The following code shows how to create identities from a string representation of the SPN. - + property to 1 minute. + + + +## Examples + The following code shows how to create identities from a string representation of the SPN. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_CFX/s_uespnendpointidentity/cs/service.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uespnendpointidentity/vb/service.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CFX/s_uespnendpointidentity/vb/service.vb" id="Snippet3"::: + ]]> diff --git a/xml/System.ServiceModel/TransferMode.xml b/xml/System.ServiceModel/TransferMode.xml index a7bb918f1b4..bbd123d61bf 100644 --- a/xml/System.ServiceModel/TransferMode.xml +++ b/xml/System.ServiceModel/TransferMode.xml @@ -44,57 +44,57 @@ Indicates whether a channel uses streamed or buffered modes for the transfer of request and response messages. - , , and system-provided bindings using the transfer mode properties exposed on them. The mode can be set on the class, for example, by using the property. It can also be set in the configuration section for the binding. - - For bindings that do not expose the transfer mode property, the transfer mode can be set on the binding element of the transport and this element can then be added to a custom binding. For example, create an and use the property to set the transfer mode when creating a custom binding. The transfer mode can also be set in the configuration section for the custom binding. - - The decision to use either buffered or streamed transfers is a local decision of the endpoint for HTTP transports. For HTTP transports, the transfer mode does not propagate across a connection, or to proxy servers or other intermediaries. Setting the transfer mode is not reflected in the description of the service contract. After generating a proxy to a service, you can (it is allowed but not required) edit the configuration file for services intended to be used with streamed transfers to set the transfer mode. For TCP and named pipe transports, the transfer mode is propagated as a policy assertion. - - Using the `Streamed` transfer mode causes the WCF runtime to enforce some restrictions. - -- Operations that occur across a streamed transport can have a contract with at most one input and/or one output parameter at the programming model layer. That parameter corresponds to the entire body of the message and must be a , be a subtype of , or implement the interface. Having a return value for an operation is equivalent to having an output parameter. - -- Some WCF features such as Reliable Messaging and SOAP message-level security rely on buffering messages for transmissions. Using these features may reduce or eliminate the performance benefits gained by using streaming. To secure a streamed transport, use transport level security only or use mixed-mode security, which combines WS-Security claims with transport security. - -- SOAP headers are always buffered, even when the transfer mode is set to `Streamed`. The headers for a message must not exceed the size of the MaxBufferSize transport quota which is exposed on the various bindings and binding elements. - - Changing the transfer mode from `Buffered` to `Streamed` also changes the native channel shape of the TCP and named pipe transports. For buffered transfers, the native channel shape is . For streamed transfers, the native channels are and . A consequence of this is that sessionful service contracts cannot be used with transport streaming. - + , , and system-provided bindings using the transfer mode properties exposed on them. The mode can be set on the class, for example, by using the property. It can also be set in the configuration section for the binding. + + For bindings that do not expose the transfer mode property, the transfer mode can be set on the binding element of the transport and this element can then be added to a custom binding. For example, create an and use the property to set the transfer mode when creating a custom binding. The transfer mode can also be set in the configuration section for the custom binding. + + The decision to use either buffered or streamed transfers is a local decision of the endpoint for HTTP transports. For HTTP transports, the transfer mode does not propagate across a connection, or to proxy servers or other intermediaries. Setting the transfer mode is not reflected in the description of the service contract. After generating a proxy to a service, you can (it is allowed but not required) edit the configuration file for services intended to be used with streamed transfers to set the transfer mode. For TCP and named pipe transports, the transfer mode is propagated as a policy assertion. + + Using the `Streamed` transfer mode causes the WCF runtime to enforce some restrictions. + +- Operations that occur across a streamed transport can have a contract with at most one input and/or one output parameter at the programming model layer. That parameter corresponds to the entire body of the message and must be a , be a subtype of , or implement the interface. Having a return value for an operation is equivalent to having an output parameter. + +- Some WCF features such as Reliable Messaging and SOAP message-level security rely on buffering messages for transmissions. Using these features may reduce or eliminate the performance benefits gained by using streaming. To secure a streamed transport, use transport level security only or use mixed-mode security, which combines WS-Security claims with transport security. + +- SOAP headers are always buffered, even when the transfer mode is set to `Streamed`. The headers for a message must not exceed the size of the MaxBufferSize transport quota which is exposed on the various bindings and binding elements. + + Changing the transfer mode from `Buffered` to `Streamed` also changes the native channel shape of the TCP and named pipe transports. For buffered transfers, the native channel shape is . For streamed transfers, the native channels are and . A consequence of this is that sessionful service contracts cannot be used with transport streaming. + ## Examples -The following example sets the [TcpTransportBindingElement.TransferMode](xref:System.ServiceModel.Channels.ConnectionOrientedTransportBindingElement.TransferMode) property to `Streamed` through code: - -```csharp -TcpTransportBindingElement transport = new TcpTransportBindingElement(); -transport.TransferMode = TransferMode.Streamed; -BinaryMessageEncodingBindingElement encoder = new BinaryMessageEncodingBindingElement(); -CustomBinding binding = new CustomBinding(encoder, transport); -``` - -The following example sets the [TcpTransportBindingElement.TransferMode](xref:System.ServiceModel.Channels.ConnectionOrientedTransportBindingElement.TransferMode) property to `Streamed` through configuration: - +The following example sets the [TcpTransportBindingElement.TransferMode](xref:System.ServiceModel.Channels.ConnectionOrientedTransportBindingElement.TransferMode) property to `Streamed` through code: + +```csharp +TcpTransportBindingElement transport = new TcpTransportBindingElement(); +transport.TransferMode = TransferMode.Streamed; +BinaryMessageEncodingBindingElement encoder = new BinaryMessageEncodingBindingElement(); +CustomBinding binding = new CustomBinding(encoder, transport); +``` + +The following example sets the [TcpTransportBindingElement.TransferMode](xref:System.ServiceModel.Channels.ConnectionOrientedTransportBindingElement.TransferMode) property to `Streamed` through configuration: + ```xml - - - - - - -``` - + + + + + + +``` + ]]> diff --git a/xml/System.Speech.AudioFormat/SpeechAudioFormatInfo.xml b/xml/System.Speech.AudioFormat/SpeechAudioFormatInfo.xml index abc06cae2d3..6b027f18d01 100644 --- a/xml/System.Speech.AudioFormat/SpeechAudioFormatInfo.xml +++ b/xml/System.Speech.AudioFormat/SpeechAudioFormatInfo.xml @@ -65,53 +65,53 @@ A member of the enumeration (indicating Mono or Stereo). Initializes a new instance of the class and specifies the samples per second, bits per sample, and the number of channels. - to specify the format of audio to output to a WAV file. The instance is an argument to the method. - -```csharp -using System; -using System.IO; -using System.Speech.Synthesis; -using System.Speech.AudioFormat; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToWaveFile(@"C:\temp\test.wav", - new SpeechAudioFormatInfo(32000, AudioBitsPerSample.Sixteen, AudioChannel.Mono)); - - // Create a SoundPlayer instance to play output audio file. - System.Media.SoundPlayer m_SoundPlayer = - new System.Media.SoundPlayer(@"C:\temp\test.wav"); - - // Build a prompt. - PromptBuilder builder = new PromptBuilder(); - builder.AppendText("This is sample output to a WAVE file."); - - // Speak the prompt. - synth.Speak(builder); - m_SoundPlayer.Play(); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} -``` - + to specify the format of audio to output to a WAV file. The instance is an argument to the method. + +```csharp +using System; +using System.IO; +using System.Speech.Synthesis; +using System.Speech.AudioFormat; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToWaveFile(@"C:\temp\test.wav", + new SpeechAudioFormatInfo(32000, AudioBitsPerSample.Sixteen, AudioChannel.Mono)); + + // Create a SoundPlayer instance to play output audio file. + System.Media.SoundPlayer m_SoundPlayer = + new System.Media.SoundPlayer(@"C:\temp\test.wav"); + + // Build a prompt. + PromptBuilder builder = new PromptBuilder(); + builder.AppendText("This is sample output to a WAVE file."); + + // Speak the prompt. + synth.Speak(builder); + m_SoundPlayer.Play(); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} +``` + ]]> @@ -258,17 +258,17 @@ namespace SampleSynthesis Gets or sets the block alignment in bytes. The value for the block alignment. - property. Block alignment value is the number of bytes in an atomic unit (that is, a block) of audio for a particular format. For Pulse Code Modulation (PCM) formats, the formula for calculating block alignment is as follows: - -- Block Alignment = Bytes per Sample x Number of Channels - - For example, the block alignment value for 16-bit PCM format mono audio is 2 (2 bytes per sample x 1 channel). For 16-bit PCM format stereo audio, the block alignment value is 4. - - Data written and read from a device must always start at the beginning of a block. For example, it is illegal to start playback of PCM data in the middle of a sample (meaning on a boundary that is not block-aligned). - + property. Block alignment value is the number of bytes in an atomic unit (that is, a block) of audio for a particular format. For Pulse Code Modulation (PCM) formats, the formula for calculating block alignment is as follows: + +- Block Alignment = Bytes per Sample x Number of Channels + + For example, the block alignment value for 16-bit PCM format mono audio is 2 (2 bytes per sample x 1 channel). For 16-bit PCM format stereo audio, the block alignment value is 4. + + Data written and read from a device must always start at the beginning of a block. For example, it is illegal to start playback of PCM data in the middle of a sample (meaning on a boundary that is not block-aligned). + ]]> @@ -356,11 +356,11 @@ namespace SampleSynthesis Returns whether a given object is an instance of and equal to the current instance of . Returns if the current instance of and that obtained from the argument are equal, otherwise returns . - provided by the `obj` argument cannot be cast to . - + provided by the `obj` argument cannot be cast to . + ]]> diff --git a/xml/System.Speech.Recognition.SrgsGrammar/SrgsDocument.xml b/xml/System.Speech.Recognition.SrgsGrammar/SrgsDocument.xml index 22d8dbd8398..d7654525f04 100644 --- a/xml/System.Speech.Recognition.SrgsGrammar/SrgsDocument.xml +++ b/xml/System.Speech.Recognition.SrgsGrammar/SrgsDocument.xml @@ -419,21 +419,21 @@ if (File.Exists(srgsDocumentFile)) ## Remarks Microsoft Windows and the System.Speech API accept all valid language-country codes. To perform speech recognition using the language specified in the property, a speech recognition engine that supports that language-country code must be installed. The speech recognition engines that shipped with Microsoft Windows 7 work with the following language-country codes. -- en-GB. English (United Kingdom) +- en-GB. English (United Kingdom) -- en-US. English (United States) +- en-US. English (United States) -- de-DE. German (Germany) +- de-DE. German (Germany) -- es-ES. Spanish (Spain) +- es-ES. Spanish (Spain) -- fr-FR. French (France) +- fr-FR. French (France) -- ja-JP. Japanese (Japan) +- ja-JP. Japanese (Japan) -- zh-CN. Chinese (China) +- zh-CN. Chinese (China) -- zh-TW. Chinese (Taiwan) +- zh-TW. Chinese (Taiwan) Two-letter language codes such as "en", "fr", or "es" are also permitted. diff --git a/xml/System.Speech.Recognition.SrgsGrammar/SrgsRuleRef.xml b/xml/System.Speech.Recognition.SrgsGrammar/SrgsRuleRef.xml index 123c701fe1f..c26f74e6bb1 100644 --- a/xml/System.Speech.Recognition.SrgsGrammar/SrgsRuleRef.xml +++ b/xml/System.Speech.Recognition.SrgsGrammar/SrgsRuleRef.xml @@ -44,11 +44,11 @@ You can use one of the constructors of the class to reference an object or a `rule` element if the following is true: -- The object is in the containing grammar and the value of its property is or . +- The object is in the containing grammar and the value of its property is or . -- The `rule` element is in an external grammar and the value of its `scope` attribute is `public`. +- The `rule` element is in an external grammar and the value of its `scope` attribute is `public`. -- The `rule` element is in an external grammar, the value of its `scope` attribute is `private`, and it is declared as the `root rule` of the external grammar. +- The `rule` element is in an external grammar, the value of its `scope` attribute is `private`, and it is declared as the `root rule` of the external grammar. This class represents the `ruleref` element as defined in the World Wide Web Consortium (W3C) [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761). For information about the SRGS `ruleref` element and details about its support by System.Speech, see [ruleref Element](https://msdn.microsoft.com/library/56eb0031-4908-4788-83ab-7c5e19aa4ac0). diff --git a/xml/System.Speech.Recognition/Choices.xml b/xml/System.Speech.Recognition/Choices.xml index 941957b4fd6..49d944091a6 100644 --- a/xml/System.Speech.Recognition/Choices.xml +++ b/xml/System.Speech.Recognition/Choices.xml @@ -541,9 +541,9 @@ public Grammar CreatePhonePhrase() ## Remarks The returned by this method is equivalent to one returned by either of the following. -- Calling the constructor with this object as the parameter. +- Calling the constructor with this object as the parameter. -- Using the implicit or explicit cast of this object to a . +- Using the implicit or explicit cast of this object to a . diff --git a/xml/System.Speech.Recognition/Grammar.xml b/xml/System.Speech.Recognition/Grammar.xml index d14c215269a..a62251aac05 100644 --- a/xml/System.Speech.Recognition/Grammar.xml +++ b/xml/System.Speech.Recognition/Grammar.xml @@ -35,9 +35,9 @@ After you author a grammar, you must build it into a object that a speech recognition engine can load and that your application can use at runtime to manage speech recognition. You can use a constructor to create a instance from a or a object, or from a file or a that contains a description of a grammar in a supported format. Supported formats include the following: -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Grammars that have been compiled to a binary file with a .cfg file extension +- Grammars that have been compiled to a binary file with a .cfg file extension Grammar constructors that accept XML-format grammar files in their arguments compile the XML grammars to a binary format to optimize them for loading and consumption by a speech recognition engine. You can reduce the amount of time required to construct a object from an XML-format grammar by compiling the grammar in advance, using one of the methods. @@ -118,9 +118,9 @@ private static Grammar CreateGrammarFromFile() ## Remarks You can use a constructor to create a instance from a or object, or from a file or a that contains a description of a grammar in a supported format. Supported formats include the following: -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Grammars that have been compiled to a binary file with a .cfg file extension +- Grammars that have been compiled to a binary file with a .cfg file extension Grammar constructors that accept XML-format grammar files in their arguments compile the XML grammars to a binary format to optimize them for loading and consumption by a speech recognition engine. You can reduce the amount of time required to construct a object from an XML-format grammar by compiling the grammar in advance, using one of the methods. @@ -185,9 +185,9 @@ private static Grammar CreateGrammarFromFile() This constructor can create a instance from the following formats: -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Grammars that have been compiled to a binary file with a .cfg file extension +- Grammars that have been compiled to a binary file with a .cfg file extension This constructor compiles XML-format grammar files to a binary format to optimize them for loading and consumption by a speech recognition engine. You can reduce the amount of time required to construct a object from an XML-format grammar by compiling the grammar in advance, using one of the methods. @@ -440,9 +440,9 @@ private static Grammar CreateSrgsDocumentGrammar() This constructor can create a instance from the following formats: -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Grammars that have been compiled to a binary file with a .cfg file extension +- Grammars that have been compiled to a binary file with a .cfg file extension This constructor compiles XML-format grammar files to a binary format to optimize them for loading and consumption by a speech recognition engine. You can reduce the amount of time required to construct a object from an XML-format grammar by compiling the grammar in advance, using one of the methods. @@ -543,9 +543,9 @@ private static Grammar CreateGrammarFromFile() This constructor can create a instance from the following formats: -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Grammars that have been compiled to a binary file with a .cfg file extension +- Grammars that have been compiled to a binary file with a .cfg file extension This constructor compiles XML-format grammar files to a binary format to optimize them for loading and consumption by a speech recognition engine. You can reduce the amount of time required to construct a object from an XML-format grammar by compiling the grammar in advance, using one of the methods. @@ -777,9 +777,9 @@ namespace SampleRecognition This constructor can create a instance from the following formats: -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Grammars that have been compiled to a binary file with a .cfg file extension +- Grammars that have been compiled to a binary file with a .cfg file extension This constructor compiles XML-format grammar files to a binary format to optimize them for loading and consumption by a speech recognition engine. You can reduce the amount of time required to construct a object from an XML-format grammar by compiling the grammar in advance, using one of the methods. @@ -883,11 +883,11 @@ private static Grammar CreateGrammarFromFile2() is connected to a grammar that: -- Does not contain the rule specified in +- Does not contain the rule specified in -- Requires initialization parameters different from those specified in +- Requires initialization parameters different from those specified in -- Contains a relative rule reference that cannot be resolved by the default base rule for grammars. +- Contains a relative rule reference that cannot be resolved by the default base rule for grammars. @@ -936,9 +936,9 @@ private static Grammar CreateGrammarFromFile2() This constructor can create a instance from the following formats: -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Grammars that have been compiled to a binary file with a .cfg file extension +- Grammars that have been compiled to a binary file with a .cfg file extension This constructor compiles XML-format grammar files to a binary format to optimize them for loading and consumption by a speech recognition engine. You can reduce the amount of time required to construct a object from an XML-format grammar by compiling the grammar in advance, using one of the methods. @@ -1061,9 +1061,9 @@ private static Grammar CreateGrammarFromStream3() - Any of the parameters contain an invalid value. -- The specified by does not contain the rule specified by . +- The specified by does not contain the rule specified by . -- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. +- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. @@ -1227,11 +1227,11 @@ private static Grammar CreateSrgsDocumentGrammar3() - Any of the parameters contain an invalid value. -- The file specified by does not contain a valid grammar or the rule specified in . +- The file specified by does not contain a valid grammar or the rule specified in . -- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. +- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. -- The grammar has a relative rule reference that cannot be resolved by the default base rule for grammars. +- The grammar has a relative rule reference that cannot be resolved by the default base rule for grammars. @@ -1280,11 +1280,11 @@ private static Grammar CreateSrgsDocumentGrammar3() - Any of the parameters contain an invalid value. -- The is connected to a grammar that does not contain the rule specified by . +- The is connected to a grammar that does not contain the rule specified by . -- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. +- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. -- The grammar contains a relative rule reference that cannot be resolved by the default base rule for grammars or the URI supplied by . +- The grammar contains a relative rule reference that cannot be resolved by the default base rule for grammars or the URI supplied by . @@ -1333,11 +1333,11 @@ private static Grammar CreateSrgsDocumentGrammar3() - Any of the parameters contain an invalid value. -- The specified by does not contain the rule specified in . +- The specified by does not contain the rule specified in . -- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. +- The contents of the array parameters do not match the arguments of any of the rule's initialization handlers. -- The grammar has a relative rule reference that cannot be resolved by the default base rule for grammars or the URI supplied by . +- The grammar has a relative rule reference that cannot be resolved by the default base rule for grammars or the URI supplied by . diff --git a/xml/System.Speech.Recognition/GrammarBuilder.xml b/xml/System.Speech.Recognition/GrammarBuilder.xml index 3dd828b8e1a..55d51b26a41 100644 --- a/xml/System.Speech.Recognition/GrammarBuilder.xml +++ b/xml/System.Speech.Recognition/GrammarBuilder.xml @@ -1966,9 +1966,9 @@ grammarWithDictation.Name = "Grammar with Dictation"; These methods can read a speech recognition grammar from the following formats. -- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) +- XML-format files that conform to the W3C [Speech Recognition Grammar Specification (SRGS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201761) -- Binary files that conform to the Microsoft Speech Recognition Grammar Binary Format (.cfg file extension) +- Binary files that conform to the Microsoft Speech Recognition Grammar Binary Format (.cfg file extension) Compiling an XML-format SRGS grammar file to a binary grammar file with the .cfg extension can reduce the time consumed by searches for a match, especially if the grammar requires recognition of a large number of words and phrases. For information about compiling SRGS grammars to the CFG binary format, see . @@ -2286,21 +2286,21 @@ private bool IsValidPassword(RecognizedAudio passwordAudio) Microsoft Windows and the System.Speech API accept all valid language-country codes. To perform speech recognition using the language specified in the `Culture` property, a speech recognition engine that supports that language-country code must be installed. The speech recognition engines that shipped with Microsoft Windows 7 work with the following language-country codes. -- en-GB. English (United Kingdom) +- en-GB. English (United Kingdom) -- en-US. English (United States) +- en-US. English (United States) -- de-DE. German (Germany) +- de-DE. German (Germany) -- es-ES. Spanish (Spain) +- es-ES. Spanish (Spain) -- fr-FR. French (France) +- fr-FR. French (France) -- ja-JP. Japanese (Japan) +- ja-JP. Japanese (Japan) -- zh-CN. Chinese (China) +- zh-CN. Chinese (China) -- zh-TW. Chinese (Taiwan) +- zh-TW. Chinese (Taiwan) Two-letter language codes such as "en", "fr", or "es" are also permitted. diff --git a/xml/System.Speech.Recognition/RecognitionResult.xml b/xml/System.Speech.Recognition/RecognitionResult.xml index 07c760b8a01..ea38a01e667 100644 --- a/xml/System.Speech.Recognition/RecognitionResult.xml +++ b/xml/System.Speech.Recognition/RecognitionResult.xml @@ -37,95 +37,95 @@ Contains detailed information about input that was recognized by instances of or . - and provides detailed information about speech recognition, including the following: - -- The property references the that the recognizer used to identify the speech. - -- The property contains the normalized text for the phrase. For more information about text normalization, see . - -- The property references the semantic information contained in the result. The semantic information is a dictionary of the key names and associated semantic data. - -- The property contains a collection of objects that represent other candidate interpretations of the audio input. See for additional information. - -- The property contains an ordered collection of objects that represent each recognized word in the input. Each contains display format, lexical format, and pronunciation information for the corresponding word. - - Certain members of the , , and classes can generate a . For more information, see the following methods and events. - -- Methods and events of the class: - - - - - - - - - - - - - - - - -- Methods and events of the class: - - - - - - - - - - - - - - - - -- The event of the class. - - For more information about recognition events, see [Using Speech Recognition Events](https://msdn.microsoft.com/library/01c598ca-2e0e-4e89-b303-cd1cef9e8482). - - - -## Examples - The following example shows a handler for the `SpeechRecognized` event of a or object, and some of the information about the associated . - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - // Add event handler code here. - - // The following code illustrates some of the information available - // in the recognition result. - Console.WriteLine("Grammar({0}), {1}: {2}", - e.Result.Grammar.Name, e.Result.Audio.Duration, e.Result.Text); - - // Display the semantic values in the recognition result. - foreach (KeyValuePair child in e.Result.Semantics) - { - Console.WriteLine(" {0} key: {1}", - child.Key, child.Value.Value ?? "null"); - } - Console.WriteLine(); - - // Display information about the words in the recognition result. - foreach (RecognizedWordUnit word in e.Result.Words) - { - RecognizedAudio audio = e.Result.GetAudioForWordRange(word, word); - Console.WriteLine(" {0,-10} {1,-10} {2,-10} {3} ({4})", - word.Text, word.LexicalForm, word.Pronunciation, - audio.Duration, word.DisplayAttributes); - } - - // Display the recognition alternates for the result. - foreach (RecognizedPhrase phrase in e.Result.Alternates) - { - Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text); - } -} -``` - + and provides detailed information about speech recognition, including the following: + +- The property references the that the recognizer used to identify the speech. + +- The property contains the normalized text for the phrase. For more information about text normalization, see . + +- The property references the semantic information contained in the result. The semantic information is a dictionary of the key names and associated semantic data. + +- The property contains a collection of objects that represent other candidate interpretations of the audio input. See for additional information. + +- The property contains an ordered collection of objects that represent each recognized word in the input. Each contains display format, lexical format, and pronunciation information for the corresponding word. + + Certain members of the , , and classes can generate a . For more information, see the following methods and events. + +- Methods and events of the class: + + - + + - + + - + + - + + - + +- Methods and events of the class: + + - + + - + + - + + - + + - + +- The event of the class. + + For more information about recognition events, see [Using Speech Recognition Events](https://msdn.microsoft.com/library/01c598ca-2e0e-4e89-b303-cd1cef9e8482). + + + +## Examples + The following example shows a handler for the `SpeechRecognized` event of a or object, and some of the information about the associated . + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + // Add event handler code here. + + // The following code illustrates some of the information available + // in the recognition result. + Console.WriteLine("Grammar({0}), {1}: {2}", + e.Result.Grammar.Name, e.Result.Audio.Duration, e.Result.Text); + + // Display the semantic values in the recognition result. + foreach (KeyValuePair child in e.Result.Semantics) + { + Console.WriteLine(" {0} key: {1}", + child.Key, child.Value.Value ?? "null"); + } + Console.WriteLine(); + + // Display information about the words in the recognition result. + foreach (RecognizedWordUnit word in e.Result.Words) + { + RecognizedAudio audio = e.Result.GetAudioForWordRange(word, word); + Console.WriteLine(" {0,-10} {1,-10} {2,-10} {3} ({4})", + word.Text, word.LexicalForm, word.Pronunciation, + audio.Duration, word.DisplayAttributes); + } + + // Display the recognition alternates for the result. + foreach (RecognizedPhrase phrase in e.Result.Alternates) + { + Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text); + } +} +``` + ]]> @@ -160,61 +160,61 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Gets the collection of possible matches for input to the speech recognizer. A read-only collection of the recognition alternates. - are ordered by the values of their properties. The confidence value of a given phrase indicates the probability that the phrase matches the input. The phrase with the highest confidence value is the phrase that most likely matches the input. - - Each value should be evaluated individually and without reference to the confidence values of other . The properties that the inherits from provide detailed information about the phrase with the highest confidence score. - - One use for the collection is for automated error correction. For example, when designing a directory dialog, an application could prompt the user to check if the application has the correct information from a recognition event, as in, "Did you say 'Anna'?" If the user says "no", then the application could query the user about any alternates that had a high enough score. - - For more information about speech recognition and the use of recognition alternates, see [Speech Recognition](https://learn.microsoft.com/previous-versions/office/developer/speech-technologies/hh361633(v=office.14)) and [Using Speech Recognition Events](https://msdn.microsoft.com/library/01c598ca-2e0e-4e89-b303-cd1cef9e8482). - - - -## Examples - The following example shows a handler for the `SpeechRecognized` event and some of the information about the associated . - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - // Add event handler code here. - - // The following code illustrates some of the information available - // in the recognition result. - Console.WriteLine("Grammar({0}), {1}: {2}", - e.Result.Grammar.Name, e.Result.Audio.Duration, e.Result.Text); - - // Display the semantic values in the recognition result. - foreach (KeyValuePair child in e.Result.Semantics) - { - Console.WriteLine(" {0} key: {1}", - child.Key, child.Value.Value ?? "null"); - } - Console.WriteLine(); - - // Display information about the words in the recognition result. - foreach (RecognizedWordUnit word in e.Result.Words) - { - RecognizedAudio audio = e.Result.GetAudioForWordRange(word, word); - Console.WriteLine(" {0,-10} {1,-10} {2,-10} {3} ({4})", - word.Text, word.LexicalForm, word.Pronunciation, - audio.Duration, word.DisplayAttributes); - } - - // Display the recognition alternates for the result. - foreach (RecognizedPhrase phrase in e.Result.Alternates) - { - Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text); - } -} -``` - + are ordered by the values of their properties. The confidence value of a given phrase indicates the probability that the phrase matches the input. The phrase with the highest confidence value is the phrase that most likely matches the input. + + Each value should be evaluated individually and without reference to the confidence values of other . The properties that the inherits from provide detailed information about the phrase with the highest confidence score. + + One use for the collection is for automated error correction. For example, when designing a directory dialog, an application could prompt the user to check if the application has the correct information from a recognition event, as in, "Did you say 'Anna'?" If the user says "no", then the application could query the user about any alternates that had a high enough score. + + For more information about speech recognition and the use of recognition alternates, see [Speech Recognition](https://learn.microsoft.com/previous-versions/office/developer/speech-technologies/hh361633(v=office.14)) and [Using Speech Recognition Events](https://msdn.microsoft.com/library/01c598ca-2e0e-4e89-b303-cd1cef9e8482). + + + +## Examples + The following example shows a handler for the `SpeechRecognized` event and some of the information about the associated . + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + // Add event handler code here. + + // The following code illustrates some of the information available + // in the recognition result. + Console.WriteLine("Grammar({0}), {1}: {2}", + e.Result.Grammar.Name, e.Result.Audio.Duration, e.Result.Text); + + // Display the semantic values in the recognition result. + foreach (KeyValuePair child in e.Result.Semantics) + { + Console.WriteLine(" {0} key: {1}", + child.Key, child.Value.Value ?? "null"); + } + Console.WriteLine(); + + // Display information about the words in the recognition result. + foreach (RecognizedWordUnit word in e.Result.Words) + { + RecognizedAudio audio = e.Result.GetAudioForWordRange(word, word); + Console.WriteLine(" {0,-10} {1,-10} {2,-10} {3} ({4})", + word.Text, word.LexicalForm, word.Pronunciation, + audio.Duration, word.DisplayAttributes); + } + + // Display the recognition alternates for the result. + foreach (RecognizedPhrase phrase in e.Result.Alternates) + { + Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text); + } +} +``` + ]]> @@ -242,58 +242,58 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Gets the audio associated with the recognition result. The audio associated with the recognition result or if the recognizer generated the result from a call to the or methods of a or instance. - method. - - - -## Examples - The following example shows a handler for the **SpeechRecognized** event and some of the information about the associated . - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - // Add event handler code here. - - // The following code illustrates some of the information available - // in the recognition result. - Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); - Console.WriteLine("Audio for result:"); - Console.WriteLine(" Start time: "+ e.Result.Audio.StartTime); - Console.WriteLine(" Duration: " + e.Result.Audio.Duration); - Console.WriteLine(" Format: " + e.Result.Audio.Format.EncodingFormat); - - // Display the semantic values in the recognition result. - foreach (KeyValuePair child in e.Result.Semantics) - { - Console.WriteLine(" {0} key: {1}", - child.Key, child.Value.Value ?? "null"); - } - Console.WriteLine(); - - // Display information about the words in the recognition result. - foreach (RecognizedWordUnit word in e.Result.Words) - { - RecognizedAudio audio = e.Result.GetAudioForWordRange(word, word); - Console.WriteLine(" {0,-10} {1,-10} {2,-10} {3} ({4})", - word.Text, word.LexicalForm, word.Pronunciation, - audio.Duration, word.DisplayAttributes); - } - - // Display the recognition alternates for the result. - foreach (RecognizedPhrase phrase in e.Result.Alternates) - { - Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text); - } -} -``` - + method. + + + +## Examples + The following example shows a handler for the **SpeechRecognized** event and some of the information about the associated . + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + // Add event handler code here. + + // The following code illustrates some of the information available + // in the recognition result. + Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); + Console.WriteLine("Audio for result:"); + Console.WriteLine(" Start time: "+ e.Result.Audio.StartTime); + Console.WriteLine(" Duration: " + e.Result.Audio.Duration); + Console.WriteLine(" Format: " + e.Result.Audio.Format.EncodingFormat); + + // Display the semantic values in the recognition result. + foreach (KeyValuePair child in e.Result.Semantics) + { + Console.WriteLine(" {0} key: {1}", + child.Key, child.Value.Value ?? "null"); + } + Console.WriteLine(); + + // Display information about the words in the recognition result. + foreach (RecognizedWordUnit word in e.Result.Words) + { + RecognizedAudio audio = e.Result.GetAudioForWordRange(word, word); + Console.WriteLine(" {0,-10} {1,-10} {2,-10} {3} ({4})", + word.Text, word.LexicalForm, word.Pronunciation, + audio.Duration, word.DisplayAttributes); + } + + // Display the recognition alternates for the result. + foreach (RecognizedPhrase phrase in e.Result.Alternates) + { + Console.WriteLine(" alt({0}) {1}", phrase.Confidence, phrase.Text); + } +} +``` + ]]> @@ -328,73 +328,73 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Gets a section of the audio that is associated with a specific range of words in the recognition result. The section of audio associated with the word range. - property. - - - -## Examples - The following example creates a grammar to accept name input and attaches to it a handler for the `SpeechRecognized` event. The grammar uses a wildcard for the name element of the phrase. The event handler uses the audio from the wildcard to create and play a greeting prompt. - -```csharp - -private Grammar CreateNameInputGrammar() -{ - GrammarBuilder wildcardBuilder = new GrammarBuilder(); - wildcardBuilder.AppendWildcard(); - SemanticResultKey nameKey = - new SemanticResultKey("Name", wildcardBuilder); - - GrammarBuilder nameBuilder = - new GrammarBuilder("My name is"); - nameBuilder.Append(nameKey); - - Grammar nameGrammar = new Grammar(nameBuilder); - nameGrammar.Name = "Name input"; - - nameGrammar.SpeechRecognized += - new EventHandler( - NameInputHandler); - - return nameGrammar; -} - -// Handle the SpeechRecognized event for the name grammar. -private void NameInputHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - RecognitionResult result = e.Result; - SemanticValue semantics = e.Result.Semantics; - - if (semantics.ContainsKey("Name")) - { - RecognizedAudio nameAudio = - result.GetAudioForWordRange( - result.Words[3], result.Words[result.Words.Count - 1]); - - // Save the audio. Create a directory and file as necessary. - FileInfo fi = new FileInfo(@"C:\temp\temp.wav"); - if (!fi.Directory.Exists) - { - fi.Directory.Create(); - } - FileStream stream = new FileStream(fi.FullName, FileMode.Create); - nameAudio.WriteToWaveStream(stream); - stream.Close(); - - // Greet the person using the saved audio. - SpeechSynthesizer synthesizer = new SpeechSynthesizer(); - PromptBuilder builder = new PromptBuilder(); - builder.AppendText("Hello"); - builder.AppendAudio(fi.FullName); - synthesizer.Speak(builder); - } -} -``` - + property. + + + +## Examples + The following example creates a grammar to accept name input and attaches to it a handler for the `SpeechRecognized` event. The grammar uses a wildcard for the name element of the phrase. The event handler uses the audio from the wildcard to create and play a greeting prompt. + +```csharp + +private Grammar CreateNameInputGrammar() +{ + GrammarBuilder wildcardBuilder = new GrammarBuilder(); + wildcardBuilder.AppendWildcard(); + SemanticResultKey nameKey = + new SemanticResultKey("Name", wildcardBuilder); + + GrammarBuilder nameBuilder = + new GrammarBuilder("My name is"); + nameBuilder.Append(nameKey); + + Grammar nameGrammar = new Grammar(nameBuilder); + nameGrammar.Name = "Name input"; + + nameGrammar.SpeechRecognized += + new EventHandler( + NameInputHandler); + + return nameGrammar; +} + +// Handle the SpeechRecognized event for the name grammar. +private void NameInputHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + RecognitionResult result = e.Result; + SemanticValue semantics = e.Result.Semantics; + + if (semantics.ContainsKey("Name")) + { + RecognizedAudio nameAudio = + result.GetAudioForWordRange( + result.Words[3], result.Words[result.Words.Count - 1]); + + // Save the audio. Create a directory and file as necessary. + FileInfo fi = new FileInfo(@"C:\temp\temp.wav"); + if (!fi.Directory.Exists) + { + fi.Directory.Create(); + } + FileStream stream = new FileStream(fi.FullName, FileMode.Create); + nameAudio.WriteToWaveStream(stream); + stream.Close(); + + // Greet the person using the saved audio. + SpeechSynthesizer synthesizer = new SpeechSynthesizer(); + PromptBuilder builder = new PromptBuilder(); + builder.AppendText("Hello"); + builder.AppendAudio(fi.FullName); + synthesizer.Speak(builder); + } +} +``` + ]]> The recognizer generated the result from a call to or methods of the or objects. @@ -434,11 +434,11 @@ private void NameInputHandler(object sender, SpeechRecognizedEventArgs e) The destination for the serialization. Populates a instance with the data needed to serialize the target object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> diff --git a/xml/System.Speech.Recognition/RecognizedAudio.xml b/xml/System.Speech.Recognition/RecognizedAudio.xml index 1443df47e7b..519887b7310 100644 --- a/xml/System.Speech.Recognition/RecognizedAudio.xml +++ b/xml/System.Speech.Recognition/RecognizedAudio.xml @@ -29,69 +29,69 @@ Represents audio input that is associated with a . - property or the method of the . - - A recognition result can be produced by the following events and methods of the and classes: - -- Events: - - - and - - - and - - - and - - - and - - - - -- Methods: - - - and - - - and - - - - - - - + property or the method of the . + + A recognition result can be produced by the following events and methods of the and classes: + +- Events: + + - and + + - and + + - and + + - and + + - + +- Methods: + + - and + + - and + + - + + - + > [!IMPORTANT] -> A recognition result produced by emulated speech recognition does not contain recognized audio. For such a recognition result, its property returns `null` and its method throws an exception. For more information about emulated speech recognition, see the `EmulateRecognize` and `EmulateRecognizeAsync` methods of the and classes. - - - -## Examples - The following example handles the , , or event and outputs to the console information about the recognized audio that is associated with the recognition result. - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - RecognitionResult result = e.Result; - - Console.WriteLine("Grammar({0}): {1}", - result.Grammar.Name, result.Text); - - if (e.Result.Audio != null) - { - RecognizedAudio audio = e.Result.Audio; - - Console.WriteLine(" start time: {0}", audio.StartTime); - Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); - Console.WriteLine(" position: {0}, duration: {1}", - audio.AudioPosition, audio.Duration); - } - - // Add event handler code here. -} -``` - +> A recognition result produced by emulated speech recognition does not contain recognized audio. For such a recognition result, its property returns `null` and its method throws an exception. For more information about emulated speech recognition, see the `EmulateRecognize` and `EmulateRecognizeAsync` methods of the and classes. + + + +## Examples + The following example handles the , , or event and outputs to the console information about the recognized audio that is associated with the recognition result. + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + RecognitionResult result = e.Result; + + Console.WriteLine("Grammar({0}): {1}", + result.Grammar.Name, result.Text); + + if (e.Result.Audio != null) + { + RecognizedAudio audio = e.Result.Audio; + + Console.WriteLine(" start time: {0}", audio.StartTime); + Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); + Console.WriteLine(" position: {0}, duration: {1}", + audio.AudioPosition, audio.Duration); + } + + // Add event handler code here. +} +``` + ]]> @@ -127,44 +127,44 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Gets the location in the input audio stream for the start of the recognized audio. The location in the input audio stream for the start of the recognized audio. - and classes reference the recognizer's position within its audio input. These positions can be different. For more information, see [Using Speech Recognition Events](https://msdn.microsoft.com/library/01c598ca-2e0e-4e89-b303-cd1cef9e8482). - - The property gets the system time at the start of the recognition operation. - - - -## Examples - The following example handles the or event and outputs to the console information about the recognized audio that is associated with the recognition result. - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - RecognitionResult result = e.Result; - - Console.WriteLine("Grammar({0}): {1}", - result.Grammar.Name, result.Text); - - if (e.Result.Audio != null) - { - RecognizedAudio audio = e.Result.Audio; - - Console.WriteLine(" start time: {0}", audio.StartTime); - Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); - Console.WriteLine(" position: {0}, duration: {1}", - audio.AudioPosition, audio.Duration); - } - - // Add event handler code here. -} -``` - + and classes reference the recognizer's position within its audio input. These positions can be different. For more information, see [Using Speech Recognition Events](https://msdn.microsoft.com/library/01c598ca-2e0e-4e89-b303-cd1cef9e8482). + + The property gets the system time at the start of the recognition operation. + + + +## Examples + The following example handles the or event and outputs to the console information about the recognized audio that is associated with the recognition result. + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + RecognitionResult result = e.Result; + + Console.WriteLine("Grammar({0}): {1}", + result.Grammar.Name, result.Text); + + if (e.Result.Audio != null) + { + RecognizedAudio audio = e.Result.Audio; + + Console.WriteLine(" start time: {0}", audio.StartTime); + Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); + Console.WriteLine(" position: {0}, duration: {1}", + audio.AudioPosition, audio.Duration); + } + + // Add event handler code here. +} +``` + ]]> @@ -199,37 +199,37 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Gets the duration of the input audio stream for the recognized audio. The duration within the input audio stream for the recognized audio. - or event and outputs to the console information about the recognized audio that is associated with the recognition result. - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - RecognitionResult result = e.Result; - - Console.WriteLine("Grammar({0}): {1}", - result.Grammar.Name, result.Text); - - if (e.Result.Audio != null) - { - RecognizedAudio audio = e.Result.Audio; - - Console.WriteLine(" start time: {0}", audio.StartTime); - Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); - Console.WriteLine(" position: {0}, duration: {1}", - audio.AudioPosition, audio.Duration); - } - - // Add event handler code here. -} -``` - + or event and outputs to the console information about the recognized audio that is associated with the recognition result. + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + RecognitionResult result = e.Result; + + Console.WriteLine("Grammar({0}): {1}", + result.Grammar.Name, result.Text); + + if (e.Result.Audio != null) + { + RecognizedAudio audio = e.Result.Audio; + + Console.WriteLine(" start time: {0}", audio.StartTime); + Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); + Console.WriteLine(" position: {0}, duration: {1}", + audio.AudioPosition, audio.Duration); + } + + // Add event handler code here. +} +``` + ]]> @@ -263,37 +263,37 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Gets the format of the audio processed by a recognition engine. The format of the audio processed by the speech recognizer. - or event and outputs to the console information about the recognized audio that is associated with the recognition result. - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - RecognitionResult result = e.Result; - - Console.WriteLine("Grammar({0}): {1}", - result.Grammar.Name, result.Text); - - if (e.Result.Audio != null) - { - RecognizedAudio audio = e.Result.Audio; - - Console.WriteLine(" start time: {0}", audio.StartTime); - Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); - Console.WriteLine(" position: {0}, duration: {1}", - audio.AudioPosition, audio.Duration); - } - - // Add event handler code here. -} -``` - + or event and outputs to the console information about the recognized audio that is associated with the recognition result. + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + RecognitionResult result = e.Result; + + Console.WriteLine("Grammar({0}): {1}", + result.Grammar.Name, result.Text); + + if (e.Result.Audio != null) + { + RecognizedAudio audio = e.Result.Audio; + + Console.WriteLine(" start time: {0}", audio.StartTime); + Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); + Console.WriteLine(" position: {0}, duration: {1}", + audio.AudioPosition, audio.Duration); + } + + // Add event handler code here. +} +``` + ]]> @@ -326,86 +326,86 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Selects and returns a section of the current recognized audio as binary data. Returns a subsection of the recognized audio, as defined by and . - event, and loads the grammar into an in-process speech recognizer. Then it writes the audio information for the name portion of the input to an audio file. The audio file is used as input to a object, which speaks a phrase that includes the recorded audio. - -``` -private static void AddNameGrammar(SpeechRecognitionEngine recognizer) -{ - GrammarBuilder builder = new GrammarBuilder(); - builder.Append("My name is"); - builder.AppendWildcard(); - - Grammar nameGrammar = new Grammar(builder); - nameGrammar.Name = "Name Grammar"; - nameGrammar.SpeechRecognized += - new EventHandler( - NameSpeechRecognized); - - recognizer.LoadGrammar(nameGrammar); -} - -// Handle the SpeechRecognized event of the name grammar. -private static void NameSpeechRecognized( - object sender, SpeechRecognizedEventArgs e) -{ - Console.WriteLine("Grammar ({0}) recognized speech: {1}", - e.Result.Grammar.Name, e.Result.Text); - - try - { - - // The name phrase starts after the first three words. - if (e.Result.Words.Count < 4) - { - - // Add code to check for an alternate that contains the wildcard. - return; - } - - RecognizedAudio audio = e.Result.Audio; - TimeSpan start = e.Result.Words[3].AudioPosition; - TimeSpan duration = audio.Duration - start; - - // Add code to verify and persist the audio. - string path = @"C:\temp\nameAudio.wav"; - using (Stream outputStream = new FileStream(path, FileMode.Create)) - { - RecognizedAudio nameAudio = audio.GetRange(start, duration); - nameAudio.WriteToWaveStream(outputStream); - outputStream.Close(); - } - - Thread testThread = - new Thread(new ParameterizedThreadStart(TestAudio)); - testThread.Start(path); - } - catch (Exception ex) - { - Console.WriteLine("Exception thrown while processing audio:"); - Console.WriteLine(ex.ToString()); - } -} - -// Use the speech synthesizer to play back the .wav file -// that was created in the SpeechRecognized event handler. - -private static void TestAudio(object item) -{ - string path = item as string; - if (path != null && File.Exists(path)) - { - SpeechSynthesizer synthesizer = new SpeechSynthesizer(); - PromptBuilder builder = new PromptBuilder(); - builder.AppendText("Hello"); - builder.AppendAudio(path); - synthesizer.Speak(builder); - } -} -``` - + event, and loads the grammar into an in-process speech recognizer. Then it writes the audio information for the name portion of the input to an audio file. The audio file is used as input to a object, which speaks a phrase that includes the recorded audio. + +``` +private static void AddNameGrammar(SpeechRecognitionEngine recognizer) +{ + GrammarBuilder builder = new GrammarBuilder(); + builder.Append("My name is"); + builder.AppendWildcard(); + + Grammar nameGrammar = new Grammar(builder); + nameGrammar.Name = "Name Grammar"; + nameGrammar.SpeechRecognized += + new EventHandler( + NameSpeechRecognized); + + recognizer.LoadGrammar(nameGrammar); +} + +// Handle the SpeechRecognized event of the name grammar. +private static void NameSpeechRecognized( + object sender, SpeechRecognizedEventArgs e) +{ + Console.WriteLine("Grammar ({0}) recognized speech: {1}", + e.Result.Grammar.Name, e.Result.Text); + + try + { + + // The name phrase starts after the first three words. + if (e.Result.Words.Count < 4) + { + + // Add code to check for an alternate that contains the wildcard. + return; + } + + RecognizedAudio audio = e.Result.Audio; + TimeSpan start = e.Result.Words[3].AudioPosition; + TimeSpan duration = audio.Duration - start; + + // Add code to verify and persist the audio. + string path = @"C:\temp\nameAudio.wav"; + using (Stream outputStream = new FileStream(path, FileMode.Create)) + { + RecognizedAudio nameAudio = audio.GetRange(start, duration); + nameAudio.WriteToWaveStream(outputStream); + outputStream.Close(); + } + + Thread testThread = + new Thread(new ParameterizedThreadStart(TestAudio)); + testThread.Start(path); + } + catch (Exception ex) + { + Console.WriteLine("Exception thrown while processing audio:"); + Console.WriteLine(ex.ToString()); + } +} + +// Use the speech synthesizer to play back the .wav file +// that was created in the SpeechRecognized event handler. + +private static void TestAudio(object item) +{ + string path = item as string; + if (path != null && File.Exists(path)) + { + SpeechSynthesizer synthesizer = new SpeechSynthesizer(); + PromptBuilder builder = new PromptBuilder(); + builder.AppendText("Hello"); + builder.AppendAudio(path); + synthesizer.Speak(builder); + } +} +``` + ]]> @@ -442,44 +442,44 @@ private static void TestAudio(object item) Gets the system time at the start of the recognition operation. The system time at the start of the recognition operation. - property gets the system time at the start of the recognition operation, which can be useful for latency and performance calculations. - - The property gets the location in the input device's generated audio stream. - - - -## Examples - The following example handles the or event and outputs to the console information about the recognized audio that is associated with the recognition result. - -```csharp - -// Handle the SpeechRecognized event. -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - RecognitionResult result = e.Result; - - Console.WriteLine("Grammar({0}): {1}", - result.Grammar.Name, result.Text); - - if (e.Result.Audio != null) - { - RecognizedAudio audio = e.Result.Audio; - - Console.WriteLine(" start time: {0}", audio.StartTime); - Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); - Console.WriteLine(" position: {0}, duration: {1}", - audio.AudioPosition, audio.Duration); - } - - // Add event handler code here. -} -``` - + property gets the system time at the start of the recognition operation, which can be useful for latency and performance calculations. + + The property gets the location in the input device's generated audio stream. + + + +## Examples + The following example handles the or event and outputs to the console information about the recognized audio that is associated with the recognition result. + +```csharp + +// Handle the SpeechRecognized event. +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + RecognitionResult result = e.Result; + + Console.WriteLine("Grammar({0}): {1}", + result.Grammar.Name, result.Text); + + if (e.Result.Audio != null) + { + RecognizedAudio audio = e.Result.Audio; + + Console.WriteLine(" start time: {0}", audio.StartTime); + Console.WriteLine(" encoding format: {0}", audio.Format.EncodingFormat); + Console.WriteLine(" position: {0}, duration: {1}", + audio.AudioPosition, audio.Duration); + } + + // Add event handler code here. +} +``` + ]]> @@ -509,13 +509,13 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) The stream that will receive the audio data. Writes the entire audio to a stream as raw data. - method uses the Wave format, but does not include the Wave header. To include the Wave header, use the method. - + method uses the Wave format, but does not include the Wave header. To include the Wave header, use the method. + ]]> @@ -546,93 +546,93 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) The stream that will receive the audio data. Writes audio to a stream in Wave format. - method uses the same binary format, but does not include the Wave header. - - - -## Examples - The following example creates a speech recognition grammar for name input, adds a handler for the event, and loads the grammar into an in-process speech recognizer. Then it writes the audio information for the name portion of the input to an audio file. The audio file is used as input to a object, which speaks a phrase that includes the recorded audio. - -``` -private static void AddNameGrammar(SpeechRecognitionEngine recognizer) -{ - GrammarBuilder builder = new GrammarBuilder(); - builder.Append("My name is"); - builder.AppendWildcard(); - - Grammar nameGrammar = new Grammar(builder); - nameGrammar.Name = "Name Grammar"; - nameGrammar.SpeechRecognized += - new EventHandler( - NameSpeechRecognized); - - recognizer.LoadGrammar(nameGrammar); -} - -// Handle the SpeechRecognized event of the name grammar. -private static void NameSpeechRecognized( - object sender, SpeechRecognizedEventArgs e) -{ - Console.WriteLine("Grammar ({0}) recognized speech: {1}", - e.Result.Grammar.Name, e.Result.Text); - - try - { - // The name phrase starts after the first three words. - if (e.Result.Words.Count < 4) - { - - // Add code to check for an alternate that contains the -wildcard. - return; - } - - RecognizedAudio audio = e.Result.Audio; - TimeSpan start = e.Result.Words[3].AudioPosition; - TimeSpan duration = audio.Duration - start; - - // Add code to verify and persist the audio. - string path = @"C:\temp\nameAudio.wav"; - using (Stream outputStream = new FileStream(path, FileMode.Create)) - { - RecognizedAudio nameAudio = audio.GetRange(start, duration); - nameAudio.WriteToWaveStream(outputStream); - outputStream.Close(); - } - - Thread testThread = - new Thread(new ParameterizedThreadStart(TestAudio)); - testThread.Start(path); - } - catch (Exception ex) - { - Console.WriteLine("Exception thrown while processing audio:"); - Console.WriteLine(ex.ToString()); - } -} - -// Use the speech synthesizer to play back the .wav file -// that was created in the SpeechRecognized event handler. - -private static void TestAudio(object item) -{ - string path = item as string; - if (path != null && File.Exists(path)) - { - SpeechSynthesizer synthesizer = new SpeechSynthesizer(); - PromptBuilder builder = new PromptBuilder(); - builder.AppendText("Hello"); - builder.AppendAudio(path); - synthesizer.Speak(builder); - } -} -``` - + method uses the same binary format, but does not include the Wave header. + + + +## Examples + The following example creates a speech recognition grammar for name input, adds a handler for the event, and loads the grammar into an in-process speech recognizer. Then it writes the audio information for the name portion of the input to an audio file. The audio file is used as input to a object, which speaks a phrase that includes the recorded audio. + +``` +private static void AddNameGrammar(SpeechRecognitionEngine recognizer) +{ + GrammarBuilder builder = new GrammarBuilder(); + builder.Append("My name is"); + builder.AppendWildcard(); + + Grammar nameGrammar = new Grammar(builder); + nameGrammar.Name = "Name Grammar"; + nameGrammar.SpeechRecognized += + new EventHandler( + NameSpeechRecognized); + + recognizer.LoadGrammar(nameGrammar); +} + +// Handle the SpeechRecognized event of the name grammar. +private static void NameSpeechRecognized( + object sender, SpeechRecognizedEventArgs e) +{ + Console.WriteLine("Grammar ({0}) recognized speech: {1}", + e.Result.Grammar.Name, e.Result.Text); + + try + { + // The name phrase starts after the first three words. + if (e.Result.Words.Count < 4) + { + + // Add code to check for an alternate that contains the +wildcard. + return; + } + + RecognizedAudio audio = e.Result.Audio; + TimeSpan start = e.Result.Words[3].AudioPosition; + TimeSpan duration = audio.Duration - start; + + // Add code to verify and persist the audio. + string path = @"C:\temp\nameAudio.wav"; + using (Stream outputStream = new FileStream(path, FileMode.Create)) + { + RecognizedAudio nameAudio = audio.GetRange(start, duration); + nameAudio.WriteToWaveStream(outputStream); + outputStream.Close(); + } + + Thread testThread = + new Thread(new ParameterizedThreadStart(TestAudio)); + testThread.Start(path); + } + catch (Exception ex) + { + Console.WriteLine("Exception thrown while processing audio:"); + Console.WriteLine(ex.ToString()); + } +} + +// Use the speech synthesizer to play back the .wav file +// that was created in the SpeechRecognized event handler. + +private static void TestAudio(object item) +{ + string path = item as string; + if (path != null && File.Exists(path)) + { + SpeechSynthesizer synthesizer = new SpeechSynthesizer(); + PromptBuilder builder = new PromptBuilder(); + builder.AppendText("Hello"); + builder.AppendAudio(path); + synthesizer.Speak(builder); + } +} +``` + ]]> diff --git a/xml/System.Speech.Recognition/RecognizedPhrase.xml b/xml/System.Speech.Recognition/RecognizedPhrase.xml index e22cd8808e6..3150a213ab8 100644 --- a/xml/System.Speech.Recognition/RecognizedPhrase.xml +++ b/xml/System.Speech.Recognition/RecognizedPhrase.xml @@ -33,89 +33,89 @@ Contains detailed information, generated by the speech recognizer, about the recognized input. - property references the that the recognizer used to identify the input. - -- The property contains the normalized text for the phrase. - -- The property references the semantic information contained in the result. The semantic information is a dictionary of the key names and associated semantic data. - -- The property contains an ordered collection of objects that represent each recognized word in the input. Each word unit contains display format, lexical format, and pronunciation information for the corresponding word. - -- The property contains information about specialized word substitution. - -- The and properties contain information about recognition alternates that have the same or similar pronunciation. - -- The value of the property indicates the degree of certainty, assigned by the speech recognizer, that a recognized phrase matches the input. - - The speech recognizer returns recognition results in a object, which inherits from . The recognition result property contains an ordered collection of objects, each of which is a possible match for the input to the recognizer. - - - -## Examples - The following example shows a handler for a , , or event and some of the information associated with the object. The class derives from the class. - -```csharp -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - // Add event handler code here. - - // The following code illustrates some of the information available - // in the recognition result. - Console.WriteLine("Recognition result summary:"); - Console.WriteLine( - " Recognized phrase: {0}\n" + - " Confidence score {1}\n" + - " Grammar used: {2}\n", - e.Result.Text, e.Result.Confidence, e.Result.Grammar.Name); - - // Display the semantic values in the recognition result. - Console.WriteLine(" Semantic results:"); - foreach (KeyValuePair child in e.Result.Semantics) - { - Console.WriteLine(" The {0} city is {1}", - child.Key, child.Value.Value ?? "null"); - } - Console.WriteLine(); - - // Display information about the words in the recognition result. - Console.WriteLine(" Word summary: "); - foreach (RecognizedWordUnit word in e.Result.Words) - { - Console.WriteLine( - " Lexical form ({1})" + - " Pronunciation ({0})" + - " Display form ({2})", - word.Pronunciation, word.LexicalForm, word.DisplayAttributes); - } - - // Display information about the audio in the recognition result. - Console.WriteLine(" Input audio summary:\n" + - " Candidate Phrase at: {0} mSec\n" + - " Phrase Length: {1} mSec\n" + - " Input State Time: {2}\n" + - " Input Format: {3}\n", - e.Result.Audio.AudioPosition, - e.Result.Audio.Duration, - e.Result.Audio.StartTime, - e.Result.Audio.Format.EncodingFormat); - - // Display information about the alternate recognitions in the recognition result. - Console.WriteLine(" Alternate phrase collection:"); - foreach (RecognizedPhrase phrase in e.Result.Alternates) - { - Console.WriteLine(" Phrase: " + phrase.Text); - Console.WriteLine(" Confidence score: " + phrase.Confidence); - } -} -``` - + property references the that the recognizer used to identify the input. + +- The property contains the normalized text for the phrase. + +- The property references the semantic information contained in the result. The semantic information is a dictionary of the key names and associated semantic data. + +- The property contains an ordered collection of objects that represent each recognized word in the input. Each word unit contains display format, lexical format, and pronunciation information for the corresponding word. + +- The property contains information about specialized word substitution. + +- The and properties contain information about recognition alternates that have the same or similar pronunciation. + +- The value of the property indicates the degree of certainty, assigned by the speech recognizer, that a recognized phrase matches the input. + + The speech recognizer returns recognition results in a object, which inherits from . The recognition result property contains an ordered collection of objects, each of which is a possible match for the input to the recognizer. + + + +## Examples + The following example shows a handler for a , , or event and some of the information associated with the object. The class derives from the class. + +```csharp +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + // Add event handler code here. + + // The following code illustrates some of the information available + // in the recognition result. + Console.WriteLine("Recognition result summary:"); + Console.WriteLine( + " Recognized phrase: {0}\n" + + " Confidence score {1}\n" + + " Grammar used: {2}\n", + e.Result.Text, e.Result.Confidence, e.Result.Grammar.Name); + + // Display the semantic values in the recognition result. + Console.WriteLine(" Semantic results:"); + foreach (KeyValuePair child in e.Result.Semantics) + { + Console.WriteLine(" The {0} city is {1}", + child.Key, child.Value.Value ?? "null"); + } + Console.WriteLine(); + + // Display information about the words in the recognition result. + Console.WriteLine(" Word summary: "); + foreach (RecognizedWordUnit word in e.Result.Words) + { + Console.WriteLine( + " Lexical form ({1})" + + " Pronunciation ({0})" + + " Display form ({2})", + word.Pronunciation, word.LexicalForm, word.DisplayAttributes); + } + + // Display information about the audio in the recognition result. + Console.WriteLine(" Input audio summary:\n" + + " Candidate Phrase at: {0} mSec\n" + + " Phrase Length: {1} mSec\n" + + " Input State Time: {2}\n" + + " Input Format: {3}\n", + e.Result.Audio.AudioPosition, + e.Result.Audio.Duration, + e.Result.Audio.StartTime, + e.Result.Audio.Format.EncodingFormat); + + // Display information about the alternate recognitions in the recognition result. + Console.WriteLine(" Alternate phrase collection:"); + foreach (RecognizedPhrase phrase in e.Result.Alternates) + { + Console.WriteLine(" Phrase: " + phrase.Text); + Console.WriteLine(" Confidence score: " + phrase.Confidence); + } +} +``` + ]]> @@ -149,82 +149,82 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Gets a value, assigned by the recognizer, that represents the likelihood that a matches a given input. A relative measure of the certainty of correct recognition of a phrase. The value is from 0.0 to 1.0, for low to high confidence, respectively. - property on objects. - - Confidence values are relative and unique to each recognition engine. Confidence values returned by two different recognition engines cannot be meaningfully compared. - - A speech recognition engine may assign a low confidence score to spoken input for various reasons, including background interference, inarticulate speech, or unanticipated words or word sequences. If your application is using a instance, you can modify the confidence level at which speech input is accepted or rejected with one of the methods. Confidence thresholds for the shared recognizer, managed by , are associated with a user profile and stored in the Windows registry. Applications should not write changes to the registry for the properties of the shared recognizer. - - The property of the object contains an ordered collection of objects, each of which is a possible match for the input to the recognizer. The alternates are ordered from highest to lowest confidence. - - - -## Examples - The following example shows a handler for a , , or event. The example shows information associated with the object, some of which is derived from . The handler displays confidence scores for a recognized phrase as well as for recognition alternates. - -```csharp -void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) -{ - if (e.Result == null) return; - - // Add event handler code here. - - // The following code illustrates some of the information available - // in the recognition result. - Console.WriteLine("Recognition result summary:"); - Console.WriteLine( - " Recognized phrase: {0}\n" + - " Confidence score {1}\n" + - " Grammar used: {2}\n", - e.Result.Text, e.Result.Confidence, e.Result.Grammar.Name); - - // Display the semantic values in the recognition result. - Console.WriteLine(" Semantic results:"); - foreach (KeyValuePair child in e.Result.Semantics) - { - Console.WriteLine(" The {0} city is {1}", - child.Key, child.Value.Value ?? "null"); - } - Console.WriteLine(); - - // Display information about the words in the recognition result. - Console.WriteLine(" Word summary: "); - foreach (RecognizedWordUnit word in e.Result.Words) - { - Console.WriteLine( - " Lexical form ({1})" + - " Pronunciation ({0})" + - " Display form ({2})", - word.Pronunciation, word.LexicalForm, word.DisplayAttributes); - } - - // Display information about the audio in the recognition result. - Console.WriteLine(" Input audio summary:\n" + - " Candidate Phrase at: {0} mSec\n" + - " Phrase Length: {1} mSec\n" + - " Input State Time: {2}\n" + - " Input Format: {3}\n", - e.Result.Audio.AudioPosition, - e.Result.Audio.Duration, - e.Result.Audio.StartTime, - e.Result.Audio.Format.EncodingFormat); - - // Display information about the alternate recognitions in the recognition result. - Console.WriteLine(" Alternate phrase collection:"); - foreach (RecognizedPhrase phrase in e.Result.Alternates) - { - Console.WriteLine(" Phrase: " + phrase.Text); - Console.WriteLine(" Confidence score: " + phrase.Confidence); - } -} - -``` - + property on objects. + + Confidence values are relative and unique to each recognition engine. Confidence values returned by two different recognition engines cannot be meaningfully compared. + + A speech recognition engine may assign a low confidence score to spoken input for various reasons, including background interference, inarticulate speech, or unanticipated words or word sequences. If your application is using a instance, you can modify the confidence level at which speech input is accepted or rejected with one of the methods. Confidence thresholds for the shared recognizer, managed by , are associated with a user profile and stored in the Windows registry. Applications should not write changes to the registry for the properties of the shared recognizer. + + The property of the object contains an ordered collection of objects, each of which is a possible match for the input to the recognizer. The alternates are ordered from highest to lowest confidence. + + + +## Examples + The following example shows a handler for a , , or event. The example shows information associated with the object, some of which is derived from . The handler displays confidence scores for a recognized phrase as well as for recognition alternates. + +```csharp +void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) +{ + if (e.Result == null) return; + + // Add event handler code here. + + // The following code illustrates some of the information available + // in the recognition result. + Console.WriteLine("Recognition result summary:"); + Console.WriteLine( + " Recognized phrase: {0}\n" + + " Confidence score {1}\n" + + " Grammar used: {2}\n", + e.Result.Text, e.Result.Confidence, e.Result.Grammar.Name); + + // Display the semantic values in the recognition result. + Console.WriteLine(" Semantic results:"); + foreach (KeyValuePair child in e.Result.Semantics) + { + Console.WriteLine(" The {0} city is {1}", + child.Key, child.Value.Value ?? "null"); + } + Console.WriteLine(); + + // Display information about the words in the recognition result. + Console.WriteLine(" Word summary: "); + foreach (RecognizedWordUnit word in e.Result.Words) + { + Console.WriteLine( + " Lexical form ({1})" + + " Pronunciation ({0})" + + " Display form ({2})", + word.Pronunciation, word.LexicalForm, word.DisplayAttributes); + } + + // Display information about the audio in the recognition result. + Console.WriteLine(" Input audio summary:\n" + + " Candidate Phrase at: {0} mSec\n" + + " Phrase Length: {1} mSec\n" + + " Input State Time: {2}\n" + + " Input Format: {3}\n", + e.Result.Audio.AudioPosition, + e.Result.Audio.Duration, + e.Result.Audio.StartTime, + e.Result.Audio.Format.EncodingFormat); + + // Display information about the alternate recognitions in the recognition result. + Console.WriteLine(" Alternate phrase collection:"); + foreach (RecognizedPhrase phrase in e.Result.Alternates) + { + Console.WriteLine(" Phrase: " + phrase.Text); + Console.WriteLine(" Confidence score: " + phrase.Confidence); + } +} + +``` + ]]> @@ -255,30 +255,30 @@ void SpeechRecognizedHandler(object sender, SpeechRecognizedEventArgs e) Returns a semantic markup language (SML) document for the semantic information in the object. Returns an SML description of the semantics of the as an XPath navigable object. - 0) - { - return result.ConstructSmlFromSemantics().CreateNavigator().OuterXml; - } - else - { - return null; - } -} -``` - + 0) + { + return result.ConstructSmlFromSemantics().CreateNavigator().OuterXml; + } + else + { + return null; + } +} +``` + ]]> @@ -337,13 +337,13 @@ private string GetSemanticsSML(RecognizedPhrase result) Gets the identifier for the homophone group for the phrase. The identifier for the homophone group for the phrase. - @@ -371,13 +371,13 @@ private string GetSemanticsSML(RecognizedPhrase result) Gets a collection of the recognition alternates that have the same pronunciation as this recognized phrase. A read-only collection of the recognition alternates that have the same pronunciation as this recognized phrase. - @@ -405,13 +405,13 @@ private string GetSemanticsSML(RecognizedPhrase result) Gets information about the text that the speech recognizer changed as part of speech-to-text normalization. A collection of objects that describe sections of text that the speech recognizer replaced when it normalized the recognized input. - property contains the words, "twenty", "five", and "dollars", and the property contains the phrase, "$25.00". For more information about text normalization, see the class. - + property contains the words, "twenty", "five", and "dollars", and the property contains the phrase, "$25.00". For more information about text normalization, see the class. + ]]> @@ -441,31 +441,31 @@ private string GetSemanticsSML(RecognizedPhrase result) Gets the semantic information that is associated with the recognized phrase. The semantic information associated with the recognized phrase. - and classes. - - - -## Examples - The following example defines a method that gets specific semantic information from a recognized phrase. When this method returns, it contains the value for the semantic key, or null if the value was not retrieved. This method checks only for top-level keys. Since the semantic information is contained in a tree of values, lower-level keys must be accessed through the returned semantic value. - -``` -static bool TryGetSemanticValue( - RecognizedPhrase phrase, string key, out SemanticValue value) -{ - value = null; - bool found = phrase.Semantics.ContainsKey(key); - if (found) - { - value = phrase.Semantics[key]; - } - - return found; -} -``` - + and classes. + + + +## Examples + The following example defines a method that gets specific semantic information from a recognized phrase. When this method returns, it contains the value for the semantic key, or null if the value was not retrieved. This method checks only for top-level keys. Since the semantic information is contained in a tree of values, lower-level keys must be accessed through the returned semantic value. + +``` +static bool TryGetSemanticValue( + RecognizedPhrase phrase, string key, out SemanticValue value) +{ + value = null; + bool found = phrase.Semantics.ContainsKey(key); + if (found) + { + value = phrase.Semantics[key]; + } + + return found; +} +``` + ]]> @@ -494,13 +494,13 @@ static bool TryGetSemanticValue( Gets the normalized text generated by a speech recognizer from recognized input. The normalized text generated by a speech recognizer from recognized input. - property contains the words, "twenty", "five", and "dollars", and the property contains the phrase, "$25.00". For more information about text normalization, see . - + property contains the words, "twenty", "five", and "dollars", and the property contains the phrase, "$25.00". For more information about text normalization, see . + ]]> @@ -528,13 +528,13 @@ static bool TryGetSemanticValue( Gets the words generated by a speech recognizer from recognized input. The collection of objects generated by a speech recognizer for recognized input. - property contains the words, "twenty", "five", and "dollars", and the property contains the phrase, "$25.00". For more information about text normalization, see . - + property contains the words, "twenty", "five", and "dollars", and the property contains the phrase, "$25.00". For more information about text normalization, see . + ]]> diff --git a/xml/System.Speech.Recognition/RecognizedWordUnit.xml b/xml/System.Speech.Recognition/RecognizedWordUnit.xml index cb5a9c45d7a..05d64e9208a 100644 --- a/xml/System.Speech.Recognition/RecognizedWordUnit.xml +++ b/xml/System.Speech.Recognition/RecognizedWordUnit.xml @@ -42,11 +42,11 @@ In addition to providing a measure of recognition certainty () a instance provides: -- Normalized and exact (or lexical) text representations for a recognized word. For more information, see , , and . +- Normalized and exact (or lexical) text representations for a recognized word. For more information, see , , and . -- Pronunciation information using characters from a supported phonetic alphabet, such as the International Phonetic Alphabet (IPA) or the Universal Phone Set (UPS). For more information see . +- Pronunciation information using characters from a supported phonetic alphabet, such as the International Phonetic Alphabet (IPA) or the Universal Phone Set (UPS). For more information see . -- Formatting for printing. For more information see the class and its property. +- Formatting for printing. For more information see the class and its property. diff --git a/xml/System.Speech.Recognition/ReplacementText.xml b/xml/System.Speech.Recognition/ReplacementText.xml index c1011340ee7..42e9a896a7d 100644 --- a/xml/System.Speech.Recognition/ReplacementText.xml +++ b/xml/System.Speech.Recognition/ReplacementText.xml @@ -29,123 +29,123 @@ Contains information about a speech normalization procedure that has been performed on recognition results. - . - - Using the object, an application can determine: - -- The location and number of words replaced by normalization. For more information, see or . - -- The replaced text and its display attributes. For more information, see , and . - - Instances of are typically obtained as members of the object returned by the property on (or classes that inherit from , such as ) when returned text has been normalized. - - - -## Examples - The example below displays information in a user interface about a object returned by a recognition engine. - -```csharp -internal static void DisplayBasicPhraseInfo( - Label label, - RecognizedPhrase result, - SpeechRecognizer rec) -{ - if (result != null && label != null) - { - // Blank - if (rec != null) - { - // Clear - label.Text += String.Format( - " Recognizer currently at: {0} mSec\n" + - " Audio Device currently at: {1} mSec\n", - rec.RecognizerAudioPosition.TotalMilliseconds, - rec.AudioPosition.TotalMilliseconds); - } - - if (result != null) - { // Clear - RecognitionResult recResult = result as RecognitionResult; - if (recResult != null) - { - RecognizedAudio resultAudio = recResult.Audio; - if (resultAudio == null) - { - label.Text += String.Format(" Emulated input\n"); - } - else - { - label.Text += String.Format( - " Candidate Phrase at: {0} mSec\n" + - " Phrase Length: {1} mSec\n" + - " Input State Time: {2}\n" + - " Input Format: {3}\n", - resultAudio.AudioPosition.TotalMilliseconds, - resultAudio.Duration.TotalMilliseconds, - resultAudio.StartTime.ToShortTimeString(), - resultAudio.Format.EncodingFormat.ToString()); - } - } - - label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); - if (result.Grammar != null) - { - label.Text += String.Format( - " Recognizing Grammar: {0}\n" + - " Recognizing Rule: {1}\n", - ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), - ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); - } - - if (result.ReplacementWordUnits.Count != 0) - { - label.Text += String.Format(" Replacement text:\n"); - foreach (ReplacementText rep in result.ReplacementWordUnits) - { - string repText = rep.Text; - // Add trailing spaces - - if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) - { - repText=repText.TrimStart(); - } - if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) - { - repText = repText.TrimEnd(); - } - label.Text += String.Format( - " At index {0} for {1} words. Text: \"{2}\"\n", - rep.FirstWordIndex, rep.CountOfWords, repText); - - } - label.Text += String.Format("\n\n"); - } - } - } -} -``` - + . + + Using the object, an application can determine: + +- The location and number of words replaced by normalization. For more information, see or . + +- The replaced text and its display attributes. For more information, see , and . + + Instances of are typically obtained as members of the object returned by the property on (or classes that inherit from , such as ) when returned text has been normalized. + + + +## Examples + The example below displays information in a user interface about a object returned by a recognition engine. + +```csharp +internal static void DisplayBasicPhraseInfo( + Label label, + RecognizedPhrase result, + SpeechRecognizer rec) +{ + if (result != null && label != null) + { + // Blank + if (rec != null) + { + // Clear + label.Text += String.Format( + " Recognizer currently at: {0} mSec\n" + + " Audio Device currently at: {1} mSec\n", + rec.RecognizerAudioPosition.TotalMilliseconds, + rec.AudioPosition.TotalMilliseconds); + } + + if (result != null) + { // Clear + RecognitionResult recResult = result as RecognitionResult; + if (recResult != null) + { + RecognizedAudio resultAudio = recResult.Audio; + if (resultAudio == null) + { + label.Text += String.Format(" Emulated input\n"); + } + else + { + label.Text += String.Format( + " Candidate Phrase at: {0} mSec\n" + + " Phrase Length: {1} mSec\n" + + " Input State Time: {2}\n" + + " Input Format: {3}\n", + resultAudio.AudioPosition.TotalMilliseconds, + resultAudio.Duration.TotalMilliseconds, + resultAudio.StartTime.ToShortTimeString(), + resultAudio.Format.EncodingFormat.ToString()); + } + } + + label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); + if (result.Grammar != null) + { + label.Text += String.Format( + " Recognizing Grammar: {0}\n" + + " Recognizing Rule: {1}\n", + ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), + ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); + } + + if (result.ReplacementWordUnits.Count != 0) + { + label.Text += String.Format(" Replacement text:\n"); + foreach (ReplacementText rep in result.ReplacementWordUnits) + { + string repText = rep.Text; + // Add trailing spaces + + if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) + { + repText=repText.TrimStart(); + } + if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) + { + repText = repText.TrimEnd(); + } + label.Text += String.Format( + " At index {0} for {1} words. Text: \"{2}\"\n", + rep.FirstWordIndex, rep.CountOfWords, repText); + + } + label.Text += String.Format("\n\n"); + } + } + } +} +``` + ]]> @@ -177,100 +177,100 @@ internal static void DisplayBasicPhraseInfo( Gets the number of recognized words replaced by the speech normalization procedure. Returns the number of recognized words replaced by the speech normalization procedure. - object returned by a recognition engine. - -```csharp -internal static void DisplayBasicPhraseInfo( - Label label, - RecognizedPhrase result, - SpeechRecognizer rec) -{ - if (result != null && label != null) - { - // Blank - if (rec != null) - { - // Clear - label.Text += String.Format( - " Recognizer currently at: {0} mSec\n" + - " Audio Device currently at: {1} mSec\n", - rec.RecognizerAudioPosition.TotalMilliseconds, - rec.AudioPosition.TotalMilliseconds); - } - - if (result != null) - { // Clear - RecognitionResult recResult = result as RecognitionResult; - if (recResult != null) - { - RecognizedAudio resultAudio = recResult.Audio; - if (resultAudio == null) - { - label.Text += String.Format(" Emulated input\n"); - } - else - { - label.Text += String.Format( - " Candidate Phrase at: {0} mSec\n" + - " Phrase Length: {1} mSec\n" + - " Input State Time: {2}\n" + - " Input Format: {3}\n", - resultAudio.AudioPosition.TotalMilliseconds, - resultAudio.Duration.TotalMilliseconds, - resultAudio.StartTime.ToShortTimeString(), - resultAudio.Format.EncodingFormat.ToString()); - } - } - - label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); - if (result.Grammar != null) - { - label.Text += String.Format( - " Recognizing Grammar: {0}\n" + - " Recognizing Rule: {1}\n", - ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), - ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); - } - - if (result.ReplacementWordUnits.Count != 0) - { - label.Text += String.Format(" Replacement text:\n"); - foreach (ReplacementText rep in result.ReplacementWordUnits) - { - string repText = rep.Text; - // Add trailing spaces - - if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) - { - repText=repText.TrimStart(); - } - if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) - { - repText = repText.TrimEnd(); - } - label.Text += String.Format( - " At index {0} for {1} words. Text: \"{2}\"\n", - rep.FirstWordIndex, rep.CountOfWords, repText); - - } - label.Text += String.Format("\n\n"); - } - } - } -} -``` - + object returned by a recognition engine. + +```csharp +internal static void DisplayBasicPhraseInfo( + Label label, + RecognizedPhrase result, + SpeechRecognizer rec) +{ + if (result != null && label != null) + { + // Blank + if (rec != null) + { + // Clear + label.Text += String.Format( + " Recognizer currently at: {0} mSec\n" + + " Audio Device currently at: {1} mSec\n", + rec.RecognizerAudioPosition.TotalMilliseconds, + rec.AudioPosition.TotalMilliseconds); + } + + if (result != null) + { // Clear + RecognitionResult recResult = result as RecognitionResult; + if (recResult != null) + { + RecognizedAudio resultAudio = recResult.Audio; + if (resultAudio == null) + { + label.Text += String.Format(" Emulated input\n"); + } + else + { + label.Text += String.Format( + " Candidate Phrase at: {0} mSec\n" + + " Phrase Length: {1} mSec\n" + + " Input State Time: {2}\n" + + " Input Format: {3}\n", + resultAudio.AudioPosition.TotalMilliseconds, + resultAudio.Duration.TotalMilliseconds, + resultAudio.StartTime.ToShortTimeString(), + resultAudio.Format.EncodingFormat.ToString()); + } + } + + label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); + if (result.Grammar != null) + { + label.Text += String.Format( + " Recognizing Grammar: {0}\n" + + " Recognizing Rule: {1}\n", + ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), + ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); + } + + if (result.ReplacementWordUnits.Count != 0) + { + label.Text += String.Format(" Replacement text:\n"); + foreach (ReplacementText rep in result.ReplacementWordUnits) + { + string repText = rep.Text; + // Add trailing spaces + + if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) + { + repText=repText.TrimStart(); + } + if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) + { + repText = repText.TrimEnd(); + } + label.Text += String.Format( + " At index {0} for {1} words. Text: \"{2}\"\n", + rep.FirstWordIndex, rep.CountOfWords, repText); + + } + label.Text += String.Format("\n\n"); + } + } + } +} +``` + ]]> @@ -302,100 +302,100 @@ internal static void DisplayBasicPhraseInfo( Gets information about the leading and trailing spaces for the text replaced by the speech normalization procedure. Returns a object that specifies the use of white space to display text replaced by normalization. - object returned by a recognition engine. - -```csharp -internal static void DisplayBasicPhraseInfo( - Label label, - RecognizedPhrase result, - SpeechRecognizer rec) -{ - if (result != null && label != null) - { - // Blank - if (rec != null) - { - // Clear - label.Text += String.Format( - " Recognizer currently at: {0} mSec\n" + - " Audio Device currently at: {1} mSec\n", - rec.RecognizerAudioPosition.TotalMilliseconds, - rec.AudioPosition.TotalMilliseconds); - } - - if (result != null) - { // Clear - RecognitionResult recResult = result as RecognitionResult; - if (recResult != null) - { - RecognizedAudio resultAudio = recResult.Audio; - if (resultAudio == null) - { - label.Text += String.Format(" Emulated input\n"); - } - else - { - label.Text += String.Format( - " Candidate Phrase at: {0} mSec\n" + - " Phrase Length: {1} mSec\n" + - " Input State Time: {2}\n" + - " Input Format: {3}\n", - resultAudio.AudioPosition.TotalMilliseconds, - resultAudio.Duration.TotalMilliseconds, - resultAudio.StartTime.ToShortTimeString(), - resultAudio.Format.EncodingFormat.ToString()); - } - } - - label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); - if (result.Grammar != null) - { - label.Text += String.Format( - " Recognizing Grammar: {0}\n" + - " Recognizing Rule: {1}\n", - ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), - ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); - } - - if (result.ReplacementWordUnits.Count != 0) - { - label.Text += String.Format(" Replacement text:\n"); - foreach (ReplacementText rep in result.ReplacementWordUnits) - { - string repText = rep.Text; - // Add trailing spaces - - if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) - { - repText=repText.TrimStart(); - } - if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) - { - repText = repText.TrimEnd(); - } - label.Text += String.Format( - " At index {0} for {1} words. Text: \"{2}\"\n", - rep.FirstWordIndex, rep.CountOfWords, repText); - - } - label.Text += String.Format("\n\n"); - } - } - } -} -``` - + object returned by a recognition engine. + +```csharp +internal static void DisplayBasicPhraseInfo( + Label label, + RecognizedPhrase result, + SpeechRecognizer rec) +{ + if (result != null && label != null) + { + // Blank + if (rec != null) + { + // Clear + label.Text += String.Format( + " Recognizer currently at: {0} mSec\n" + + " Audio Device currently at: {1} mSec\n", + rec.RecognizerAudioPosition.TotalMilliseconds, + rec.AudioPosition.TotalMilliseconds); + } + + if (result != null) + { // Clear + RecognitionResult recResult = result as RecognitionResult; + if (recResult != null) + { + RecognizedAudio resultAudio = recResult.Audio; + if (resultAudio == null) + { + label.Text += String.Format(" Emulated input\n"); + } + else + { + label.Text += String.Format( + " Candidate Phrase at: {0} mSec\n" + + " Phrase Length: {1} mSec\n" + + " Input State Time: {2}\n" + + " Input Format: {3}\n", + resultAudio.AudioPosition.TotalMilliseconds, + resultAudio.Duration.TotalMilliseconds, + resultAudio.StartTime.ToShortTimeString(), + resultAudio.Format.EncodingFormat.ToString()); + } + } + + label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); + if (result.Grammar != null) + { + label.Text += String.Format( + " Recognizing Grammar: {0}\n" + + " Recognizing Rule: {1}\n", + ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), + ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); + } + + if (result.ReplacementWordUnits.Count != 0) + { + label.Text += String.Format(" Replacement text:\n"); + foreach (ReplacementText rep in result.ReplacementWordUnits) + { + string repText = rep.Text; + // Add trailing spaces + + if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) + { + repText=repText.TrimStart(); + } + if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) + { + repText = repText.TrimEnd(); + } + label.Text += String.Format( + " At index {0} for {1} words. Text: \"{2}\"\n", + rep.FirstWordIndex, rep.CountOfWords, repText); + + } + label.Text += String.Format("\n\n"); + } + } + } +} +``` + ]]> @@ -427,100 +427,100 @@ internal static void DisplayBasicPhraseInfo( Gets the location of the first recognized word replaced by the speech normalization procedure. Returns the location of the first recognized word replaced by the speech normalization procedure. - object returned by a recognition engine is displayed to a user interface. - -```csharp -internal static void DisplayBasicPhraseInfo( - Label label, - RecognizedPhrase result, - SpeechRecognizer rec) -{ - if (result != null && label != null) - { - // Blank - if (rec != null) - { - // Clear - label.Text += String.Format( - " Recognizer currently at: {0} mSec\n" + - " Audio Device currently at: {1} mSec\n", - rec.RecognizerAudioPosition.TotalMilliseconds, - rec.AudioPosition.TotalMilliseconds); - } - - if (result != null) - { // Clear - RecognitionResult recResult = result as RecognitionResult; - if (recResult != null) - { - RecognizedAudio resultAudio = recResult.Audio; - if (resultAudio == null) - { - label.Text += String.Format(" Emulated input\n"); - } - else - { - label.Text += String.Format( - " Candidate Phrase at: {0} mSec\n" + - " Phrase Length: {1} mSec\n" + - " Input State Time: {2}\n" + - " Input Format: {3}\n", - resultAudio.AudioPosition.TotalMilliseconds, - resultAudio.Duration.TotalMilliseconds, - resultAudio.StartTime.ToShortTimeString(), - resultAudio.Format.EncodingFormat.ToString()); - } - } - - label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); - if (result.Grammar != null) - { - label.Text += String.Format( - " Recognizing Grammar: {0}\n" + - " Recognizing Rule: {1}\n", - ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), - ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); - } - - if (result.ReplacementWordUnits.Count != 0) - { - label.Text += String.Format(" Replacement text:\n"); - foreach (ReplacementText rep in result.ReplacementWordUnits) - { - string repText = rep.Text; - // Add trailing spaces - - if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) - { - repText=repText.TrimStart(); - } - if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) - { - repText = repText.TrimEnd(); - } - label.Text += String.Format( - " At index {0} for {1} words. Text: \"{2}\"\n", - rep.FirstWordIndex, rep.CountOfWords, repText); - - } - label.Text += String.Format("\n\n"); - } - } - } -} -``` - + object returned by a recognition engine is displayed to a user interface. + +```csharp +internal static void DisplayBasicPhraseInfo( + Label label, + RecognizedPhrase result, + SpeechRecognizer rec) +{ + if (result != null && label != null) + { + // Blank + if (rec != null) + { + // Clear + label.Text += String.Format( + " Recognizer currently at: {0} mSec\n" + + " Audio Device currently at: {1} mSec\n", + rec.RecognizerAudioPosition.TotalMilliseconds, + rec.AudioPosition.TotalMilliseconds); + } + + if (result != null) + { // Clear + RecognitionResult recResult = result as RecognitionResult; + if (recResult != null) + { + RecognizedAudio resultAudio = recResult.Audio; + if (resultAudio == null) + { + label.Text += String.Format(" Emulated input\n"); + } + else + { + label.Text += String.Format( + " Candidate Phrase at: {0} mSec\n" + + " Phrase Length: {1} mSec\n" + + " Input State Time: {2}\n" + + " Input Format: {3}\n", + resultAudio.AudioPosition.TotalMilliseconds, + resultAudio.Duration.TotalMilliseconds, + resultAudio.StartTime.ToShortTimeString(), + resultAudio.Format.EncodingFormat.ToString()); + } + } + + label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); + if (result.Grammar != null) + { + label.Text += String.Format( + " Recognizing Grammar: {0}\n" + + " Recognizing Rule: {1}\n", + ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), + ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); + } + + if (result.ReplacementWordUnits.Count != 0) + { + label.Text += String.Format(" Replacement text:\n"); + foreach (ReplacementText rep in result.ReplacementWordUnits) + { + string repText = rep.Text; + // Add trailing spaces + + if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) + { + repText=repText.TrimStart(); + } + if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) + { + repText = repText.TrimEnd(); + } + label.Text += String.Format( + " At index {0} for {1} words. Text: \"{2}\"\n", + rep.FirstWordIndex, rep.CountOfWords, repText); + + } + label.Text += String.Format("\n\n"); + } + } + } +} +``` + ]]> @@ -552,100 +552,100 @@ internal static void DisplayBasicPhraseInfo( Gets the recognized text replaced by the speech normalization procedure. Returns the recognized text replaced by the speech normalization procedure. - object returned by a recognition engine. - -```csharp -internal static void DisplayBasicPhraseInfo( - Label label, - RecognizedPhrase result, - SpeechRecognizer rec) -{ - if (result != null && label != null) - { - // Blank - if (rec != null) - { - // Clear - label.Text += String.Format( - " Recognizer currently at: {0} mSec\n" + - " Audio Device currently at: {1} mSec\n", - rec.RecognizerAudioPosition.TotalMilliseconds, - rec.AudioPosition.TotalMilliseconds); - } - - if (result != null) - { // Clear - RecognitionResult recResult = result as RecognitionResult; - if (recResult != null) - { - RecognizedAudio resultAudio = recResult.Audio; - if (resultAudio == null) - { - label.Text += String.Format(" Emulated input\n"); - } - else - { - label.Text += String.Format( - " Candidate Phrase at: {0} mSec\n" + - " Phrase Length: {1} mSec\n" + - " Input State Time: {2}\n" + - " Input Format: {3}\n", - resultAudio.AudioPosition.TotalMilliseconds, - resultAudio.Duration.TotalMilliseconds, - resultAudio.StartTime.ToShortTimeString(), - resultAudio.Format.EncodingFormat.ToString()); - } - } - - label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); - if (result.Grammar != null) - { - label.Text += String.Format( - " Recognizing Grammar: {0}\n" + - " Recognizing Rule: {1}\n", - ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), - ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); - } - - if (result.ReplacementWordUnits.Count != 0) - { - label.Text += String.Format(" Replacement text:\n"); - foreach (ReplacementText rep in result.ReplacementWordUnits) - { - string repText = rep.Text; - // Add trailing spaces - - if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) - { - repText += " "; - } - if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) - { - repText=repText.TrimStart(); - } - if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) - { - repText = repText.TrimEnd(); - } - label.Text += String.Format( - " At index {0} for {1} words. Text: \"{2}\"\n", - rep.FirstWordIndex, rep.CountOfWords, repText); - - } - label.Text += String.Format("\n\n"); - } - } - } -} -``` - + object returned by a recognition engine. + +```csharp +internal static void DisplayBasicPhraseInfo( + Label label, + RecognizedPhrase result, + SpeechRecognizer rec) +{ + if (result != null && label != null) + { + // Blank + if (rec != null) + { + // Clear + label.Text += String.Format( + " Recognizer currently at: {0} mSec\n" + + " Audio Device currently at: {1} mSec\n", + rec.RecognizerAudioPosition.TotalMilliseconds, + rec.AudioPosition.TotalMilliseconds); + } + + if (result != null) + { // Clear + RecognitionResult recResult = result as RecognitionResult; + if (recResult != null) + { + RecognizedAudio resultAudio = recResult.Audio; + if (resultAudio == null) + { + label.Text += String.Format(" Emulated input\n"); + } + else + { + label.Text += String.Format( + " Candidate Phrase at: {0} mSec\n" + + " Phrase Length: {1} mSec\n" + + " Input State Time: {2}\n" + + " Input Format: {3}\n", + resultAudio.AudioPosition.TotalMilliseconds, + resultAudio.Duration.TotalMilliseconds, + resultAudio.StartTime.ToShortTimeString(), + resultAudio.Format.EncodingFormat.ToString()); + } + } + + label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence); + if (result.Grammar != null) + { + label.Text += String.Format( + " Recognizing Grammar: {0}\n" + + " Recognizing Rule: {1}\n", + ((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"), + ((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None")); + } + + if (result.ReplacementWordUnits.Count != 0) + { + label.Text += String.Format(" Replacement text:\n"); + foreach (ReplacementText rep in result.ReplacementWordUnits) + { + string repText = rep.Text; + // Add trailing spaces + + if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) + { + repText += " "; + } + if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) + { + repText=repText.TrimStart(); + } + if ((rep.DisplayAttributes & DisplayAttributes.ZeroTrailingSpaces) != 0) + { + repText = repText.TrimEnd(); + } + label.Text += String.Format( + " At index {0} for {1} words. Text: \"{2}\"\n", + rep.FirstWordIndex, rep.CountOfWords, repText); + + } + label.Text += String.Format("\n\n"); + } + } + } +} +``` + ]]> diff --git a/xml/System.Speech.Recognition/SemanticResultValue.xml b/xml/System.Speech.Recognition/SemanticResultValue.xml index 820ba607829..29219bccbb8 100644 --- a/xml/System.Speech.Recognition/SemanticResultValue.xml +++ b/xml/System.Speech.Recognition/SemanticResultValue.xml @@ -40,7 +40,7 @@ There are two basic methods for associating a instance with a grammar element, depending on the constructor used to create the . -- If only the value (specified by an instance of ) is used to construct a object, the is associated with the grammar component that preceded it, in addition to a object. +- If only the value (specified by an instance of ) is used to construct a object, the is associated with the grammar component that preceded it, in addition to a object. For instance, in the code fragment below, if a constructed using this instance recognizes the word "background", a value of `true` is set in the recognized phrase semantics. @@ -51,7 +51,7 @@ For more information, see the description of . -- If a string value phrase or specific instance is used, together with a that specifies a value, that value is automatically associated with the string value phrase or the instance. If the phrase or object is used in the process of recognition, the value will be assigned to the semantics of the recognized phrase. +- If a string value phrase or specific instance is used, together with a that specifies a value, that value is automatically associated with the string value phrase or the instance. If the phrase or object is used in the process of recognition, the value will be assigned to the semantics of the recognized phrase. The following example illustrates this, and is functionally equivalent to the preceding example, which used explicit calls to and . If the recognition logic uses the word "background", the value `true` will be added to the recognized semantics. @@ -156,9 +156,9 @@ private Grammar FgBgColorGrammar() A constructor can create a `SemanticResultValue` instance in either of two circumstances: -- The `SemanticResultValue` instance must be explicitly associated with a grammar element when using a to construct a . +- The `SemanticResultValue` instance must be explicitly associated with a grammar element when using a to construct a . -- The `SemanticResultValue` is already associated with a string value phrase or a object. +- The `SemanticResultValue` is already associated with a string value phrase or a object. ]]> diff --git a/xml/System.Speech.Recognition/SemanticValue.xml b/xml/System.Speech.Recognition/SemanticValue.xml index 7d292d4b7e4..064383b954d 100644 --- a/xml/System.Speech.Recognition/SemanticValue.xml +++ b/xml/System.Speech.Recognition/SemanticValue.xml @@ -71,11 +71,11 @@ Each instance includes the following: -- An , accessed by means of the property, used to key the instance of the . +- An , accessed by means of the property, used to key the instance of the . -- A measure of the accuracy of semantic parsing, returned by the property. +- A measure of the accuracy of semantic parsing, returned by the property. -- A collection of name/value pairs () of child objects, which are also instances. Child nodes are accessible through the implementation of using a string lookup key and a instance, as in the following example. +- A collection of name/value pairs () of child objects, which are also instances. Child nodes are accessible through the implementation of using a string lookup key and a instance, as in the following example. ```csharp foreach (KeyValuePair child in semantics) @@ -90,11 +90,11 @@ objects obtained for recognized phrases without semantic structure are characterized by: -- The lack of children ( is 0). +- The lack of children ( is 0). -- The property is `null`. +- The property is `null`. -- An artificial semantic confidence level of 1.0 (returned by ). +- An artificial semantic confidence level of 1.0 (returned by ). Typically, applications create instances indirectly, adding them to objects by using and instances, in conjunction with and objects. diff --git a/xml/System.Speech.Recognition/SpeechRecognitionEngine.xml b/xml/System.Speech.Recognition/SpeechRecognitionEngine.xml index ac0157a2167..3eb6b714f95 100644 --- a/xml/System.Speech.Recognition/SpeechRecognitionEngine.xml +++ b/xml/System.Speech.Recognition/SpeechRecognitionEngine.xml @@ -26,87 +26,87 @@ Provides the means to access and manage an in-process speech recognition engine. - method. - - This class is for running speech recognition engines in-process, and provides control over various aspects of speech recognition, as follows: - -- To create an in-process speech recognizer, use one of the constructors. - -- To manage speech recognition grammars, use the , , , and methods, and the property. - -- To configure the input to the recognizer, use the , , , , or method. - -- To perform speech recognition, use the or method. - -- To modify how recognition handles silence or unexpected input, use the , , , and properties. - -- To change the number of alternates the recognizer returns, use the property. The recognizer returns recognition results in a object. - -- To synchronize changes to the recognizer, use the method. The recognizer uses more than one thread to perform tasks. - -- To emulate input to the recognizer, use the and methods. - - The object is for the sole use of the process that instantiated the object. By contrast, the shares a single recognizer with any application that wants to use it. - + method. + + This class is for running speech recognition engines in-process, and provides control over various aspects of speech recognition, as follows: + +- To create an in-process speech recognizer, use one of the constructors. + +- To manage speech recognition grammars, use the , , , and methods, and the property. + +- To configure the input to the recognizer, use the , , , , or method. + +- To perform speech recognition, use the or method. + +- To modify how recognition handles silence or unexpected input, use the , , , and properties. + +- To change the number of alternates the recognizer returns, use the property. The recognizer returns recognition results in a object. + +- To synchronize changes to the recognizer, use the method. The recognizer uses more than one thread to perform tasks. + +- To emulate input to the recognizer, use the and methods. + + The object is for the sole use of the process that instantiated the object. By contrast, the shares a single recognizer with any application that wants to use it. + > [!NOTE] -> Always call before you release your last reference to the speech recognizer. Otherwise, the resources it is using will not be freed until the garbage collector calls the recognizer object's `Finalize` method. - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition. Because this example uses the `Multiple` mode of the method, it performs recognition until you close the console window or stop debugging. - -```csharp -using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Create an in-process speech recognizer for the en-US locale. - using ( - SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Add a handler for the speech recognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous, continuous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Recognized text: " + e.Result.Text); - } - } -} -``` - +> Always call before you release your last reference to the speech recognizer. Otherwise, the resources it is using will not be freed until the garbage collector calls the recognizer object's `Finalize` method. + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition. Because this example uses the `Multiple` mode of the method, it performs recognition until you close the console window or stop debugging. + +```csharp +using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Create an in-process speech recognizer for the en-US locale. + using ( + SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Add a handler for the speech recognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous, continuous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Recognized text: " + e.Result.Text); + } + } +} +``` + ]]> @@ -121,35 +121,35 @@ namespace SpeechRecognitionApp Initializes a new instance of the class. - instance from any of the following: - -- The default speech recognition engine for the system - -- A specific speech recognition engine that you specify by name - -- The default speech recognition engine for a locale that you specify - -- A specific recognition engine that meets the criteria that you specify in a object. - - Before the speech recognizer can begin recognition, you must load at least one speech recognition grammar and configure the input for the recognizer. - - To load a grammar, call the or method. - - To configure the audio input, use one of the following methods: - -- - -- - -- - -- - -- - + instance from any of the following: + +- The default speech recognition engine for the system + +- A specific speech recognition engine that you specify by name + +- The default speech recognition engine for a locale that you specify + +- A specific recognition engine that meets the criteria that you specify in a object. + + Before the speech recognizer can begin recognition, you must load at least one speech recognition grammar and configure the input for the recognizer. + + To load a grammar, call the or method. + + To configure the audio input, use one of the following methods: + +- + +- + +- + +- + +- + ]]> @@ -171,25 +171,25 @@ namespace SpeechRecognitionApp Initializes a new instance of the class using the default speech recognizer for the system. - or method. - - To configure the audio input, use one of the following methods: - -- - -- - -- - -- - -- - + or method. + + To configure the audio input, use one of the following methods: + +- + +- + +- + +- + +- + ]]> @@ -215,98 +215,98 @@ namespace SpeechRecognitionApp The locale that the speech recognizer must support. Initializes a new instance of the class using the default speech recognizer for a specified locale. - or method. - - To configure the audio input, use one of the following methods: - -- - -- - -- - -- - -- - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition, and initializes a speech recognizer for the en-US locale. - -```csharp -using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Create an in-process speech recognizer for the en-US locale. - using ( - SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Add a handler for the speech recognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous, continuous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Recognized text: " + e.Result.Text); - } - } -} -``` - + or method. + + To configure the audio input, use one of the following methods: + +- + +- + +- + +- + +- + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition, and initializes a speech recognizer for the en-US locale. + +```csharp +using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Create an in-process speech recognizer for the en-US locale. + using ( + SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Add a handler for the speech recognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous, continuous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Recognized text: " + e.Result.Text); + } + } +} +``` + ]]> None of the installed speech recognizers support the specified locale, or is the invariant culture. @@ -335,90 +335,90 @@ namespace SpeechRecognitionApp The information for the specific speech recognizer. Initializes a new instance of the using the information in a object to specify the recognizer to use. - method. - - Before the speech recognizer can begin recognition, you must load at least one speech recognition grammar and configure the input for the recognizer. - - To load a grammar, call the or method. - - To configure the audio input, use one of the following methods: - -- - -- - -- - -- - -- - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition, and initializes a speech recognizer that supports the English language. - -```csharp - using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Select a speech recognizer that supports English. - RecognizerInfo info = null; - foreach (RecognizerInfo ri in SpeechRecognitionEngine.InstalledRecognizers()) - { - if (ri.Culture.TwoLetterISOLanguageName.Equals("en")) - { - info = ri; - break; - } - } - if (info == null) return; - - // Create the selected recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(info)) - { - - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Add a handler for the speech recognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous, continuous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Recognized text: " + e.Result.Text); - } - } -} -``` - + method. + + Before the speech recognizer can begin recognition, you must load at least one speech recognition grammar and configure the input for the recognizer. + + To load a grammar, call the or method. + + To configure the audio input, use one of the following methods: + +- + +- + +- + +- + +- + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition, and initializes a speech recognizer that supports the English language. + +```csharp + using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Select a speech recognizer that supports English. + RecognizerInfo info = null; + foreach (RecognizerInfo ri in SpeechRecognitionEngine.InstalledRecognizers()) + { + if (ri.Culture.TwoLetterISOLanguageName.Equals("en")) + { + info = ri; + break; + } + } + if (info == null) return; + + // Create the selected recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(info)) + { + + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Add a handler for the speech recognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous, continuous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Recognized text: " + e.Result.Text); + } + } +} +``` + ]]> @@ -444,79 +444,79 @@ namespace SpeechRecognitionApp The token name of the speech recognizer to use. Initializes a new instance of the class with a string parameter that specifies the name of the recognizer to use. - property of the object returned by the property of the recognizer. To get a collection of all the installed recognizers, use the static method. - - Before the speech recognizer can begin recognition, you must load at least one speech recognition grammar and configure the input for the recognizer. - - To load a grammar, call the or method. - - To configure the audio input, use one of the following methods: - -- - -- - -- - -- - -- - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition, and creates an instance of the Speech Recognizer 8.0 for Windows (English - US). - -```csharp -using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Create an instance of the Microsoft Speech Recognizer 8.0 for - // Windows (English - US). - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine("MS-1033-80-DESK")) - { - - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Add a handler for the speech recognized event. - recognizer.SpeechRecognized += new EventHandler(recognizer_SpeechRecognized); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous, continuous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Recognized text: " + e.Result.Text); - } - } -} - -``` - + property of the object returned by the property of the recognizer. To get a collection of all the installed recognizers, use the static method. + + Before the speech recognizer can begin recognition, you must load at least one speech recognition grammar and configure the input for the recognizer. + + To load a grammar, call the or method. + + To configure the audio input, use one of the following methods: + +- + +- + +- + +- + +- + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition, and creates an instance of the Speech Recognizer 8.0 for Windows (English - US). + +```csharp +using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Create an instance of the Microsoft Speech Recognizer 8.0 for + // Windows (English - US). + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine("MS-1033-80-DESK")) + { + + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Add a handler for the speech recognized event. + recognizer.SpeechRecognized += new EventHandler(recognizer_SpeechRecognized); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous, continuous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Recognized text: " + e.Result.Text); + } + } +} + +``` + ]]> No speech recognizer with that token name is installed, or is the empty string (""). @@ -545,49 +545,49 @@ namespace SpeechRecognitionApp Gets the format of the audio being received by the . The format of audio at the input to the instance, or if the input is not configured or set to the null input. - - -- - -- - -- - -- - - - -## Examples - The example below uses to obtain and display audio format data. - -``` -static void DisplayAudioDeviceFormat(Label label, SpeechRecognitionEngine recognitionEngine) -{ - - if (recognitionEngine != null && label != null) - { - label.Text = String.Format("Encoding Format: {0}\n" + - "AverageBytesPerSecond {1}\n" + - "BitsPerSample {2}\n" + - "BlockAlign {3}\n" + - "ChannelCount {4}\n" + - "SamplesPerSecond {5}", - recognitionEngine.AudioFormat.EncodingFormat.ToString(), - recognitionEngine.AudioFormat.AverageBytesPerSecond, - recognitionEngine.AudioFormat.BitsPerSample, - recognitionEngine.AudioFormat.BlockAlign, - recognitionEngine.AudioFormat.ChannelCount, - recognitionEngine.AudioFormat.SamplesPerSecond); - } - } -} -``` - + + +- + +- + +- + +- + + + +## Examples + The example below uses to obtain and display audio format data. + +``` +static void DisplayAudioDeviceFormat(Label label, SpeechRecognitionEngine recognitionEngine) +{ + + if (recognitionEngine != null && label != null) + { + label.Text = String.Format("Encoding Format: {0}\n" + + "AverageBytesPerSecond {1}\n" + + "BitsPerSample {2}\n" + + "BlockAlign {3}\n" + + "ChannelCount {4}\n" + + "SamplesPerSecond {5}", + recognitionEngine.AudioFormat.EncodingFormat.ToString(), + recognitionEngine.AudioFormat.AverageBytesPerSecond, + recognitionEngine.AudioFormat.BitsPerSample, + recognitionEngine.AudioFormat.BlockAlign, + recognitionEngine.AudioFormat.ChannelCount, + recognitionEngine.AudioFormat.SamplesPerSecond); + } + } +} +``` + ]]> @@ -615,11 +615,11 @@ static void DisplayAudioDeviceFormat(Label label, SpeechRecognitionEngine recogn Gets the level of the audio being received by the . The audio level of the input to the speech recognizer, from 0 through 100. - @@ -646,43 +646,43 @@ static void DisplayAudioDeviceFormat(Label label, SpeechRecognitionEngine recogn Raised when the reports the level of its audio input. - raises this event multiple times per second. The frequency with which the event is raised depends on the computer on which the application is running. - - To get the audio level at the time of the event, use the property of the associated . To get the current audio level of the input to the recognizer, use the recognizer's property. - - When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example adds a handler for the event to a object. The handler outputs the new audio level to the console. - -``` -private SpeechRecognitionEngine recognizer; - -// Initialize the SpeechRecognitionEngine object. -private void Initialize() -{ - recognizer = new SpeechRecognitionEngine(); - - // Add an event handler for the AudioLevelUpdated event. - recognizer.AudioLevelUpdated += - new EventHandler(recognizer_AudioLevelUpdated); - - // Add other initialization code here. - -} - -// Write the audio level to the console when the AudioLevelUpdated event is raised. -void recognizer_AudioLevelUpdated(object sender, AudioLevelUpdatedEventArgs e) -{ - Console.WriteLine("The audio level is now: {0}.", e.AudioLevel); -} -``` - + raises this event multiple times per second. The frequency with which the event is raised depends on the computer on which the application is running. + + To get the audio level at the time of the event, use the property of the associated . To get the current audio level of the input to the recognizer, use the recognizer's property. + + When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example adds a handler for the event to a object. The handler outputs the new audio level to the console. + +``` +private SpeechRecognitionEngine recognizer; + +// Initialize the SpeechRecognitionEngine object. +private void Initialize() +{ + recognizer = new SpeechRecognitionEngine(); + + // Add an event handler for the AudioLevelUpdated event. + recognizer.AudioLevelUpdated += + new EventHandler(recognizer_AudioLevelUpdated); + + // Add other initialization code here. + +} + +// Write the audio level to the console when the AudioLevelUpdated event is raised. +void recognizer_AudioLevelUpdated(object sender, AudioLevelUpdatedEventArgs e) +{ + Console.WriteLine("The audio level is now: {0}.", e.AudioLevel); +} +``` + ]]> @@ -710,86 +710,86 @@ void recognizer_AudioLevelUpdated(object sender, AudioLevelUpdatedEventArgs e) Gets the current location in the audio stream being generated by the device that is providing input to the . The current location in the audio stream being generated by the input device. - property references the input device's position in its generated audio stream. By contrast, the property references the recognizer's position within its audio input. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. - - - -## Examples - In the following example, the in-process speech recognizer uses a dictation grammar to match speech input. A handler for the event writes to the console the , , and when the speech recognizer detects speech at its input. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognitionEngine recognizer; - public static void Main(string[] args) - { - - // Initialize an in-process speech recognition engine for US English. - using (recognizer = new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - recognizer.SetInputToDefaultAudioDevice(); - - // Create a grammar for finding services in different cities. - Choices services = new Choices(new string[] { "restaurants", "hotels", "gas stations" }); - Choices cities = new Choices(new string[] { "Seattle", "Boston", "Dallas" }); - - GrammarBuilder findServices = new GrammarBuilder("Find"); - findServices.Append(services); - findServices.Append("near"); - findServices.Append(cities); - - // Create a Grammar object from the GrammarBuilder and load it to the recognizer. - Grammar servicesGrammar = new Grammar(findServices); - recognizer.LoadGrammarAsync(servicesGrammar); - - // Add handlers for events. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.SpeechDetected += - new EventHandler(recognizer_SpeechDetected); - - // Start asynchronous recognition. - recognizer.RecognizeAsync(); - Console.WriteLine("Starting asynchronous recognition..."); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Gather information about detected speech and write it to the console. - static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(); - Console.WriteLine("Speech detected:"); - Console.WriteLine(" Audio level: " + recognizer.AudioLevel); - Console.WriteLine(" Audio position at the event: " + e.AudioPosition); - Console.WriteLine(" Current audio position: " + recognizer.AudioPosition); - Console.WriteLine(" Current recognizer audio position: " + - recognizer.RecognizerAudioPosition); - } - - // Write the text of the recognition result to the console. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("\nSpeech recognized: " + e.Result.Text); - - // Add event handler code here. - } - } -} - -``` - + property references the input device's position in its generated audio stream. By contrast, the property references the recognizer's position within its audio input. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. + + + +## Examples + In the following example, the in-process speech recognizer uses a dictation grammar to match speech input. A handler for the event writes to the console the , , and when the speech recognizer detects speech at its input. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognitionEngine recognizer; + public static void Main(string[] args) + { + + // Initialize an in-process speech recognition engine for US English. + using (recognizer = new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + recognizer.SetInputToDefaultAudioDevice(); + + // Create a grammar for finding services in different cities. + Choices services = new Choices(new string[] { "restaurants", "hotels", "gas stations" }); + Choices cities = new Choices(new string[] { "Seattle", "Boston", "Dallas" }); + + GrammarBuilder findServices = new GrammarBuilder("Find"); + findServices.Append(services); + findServices.Append("near"); + findServices.Append(cities); + + // Create a Grammar object from the GrammarBuilder and load it to the recognizer. + Grammar servicesGrammar = new Grammar(findServices); + recognizer.LoadGrammarAsync(servicesGrammar); + + // Add handlers for events. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.SpeechDetected += + new EventHandler(recognizer_SpeechDetected); + + // Start asynchronous recognition. + recognizer.RecognizeAsync(); + Console.WriteLine("Starting asynchronous recognition..."); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Gather information about detected speech and write it to the console. + static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(); + Console.WriteLine("Speech detected:"); + Console.WriteLine(" Audio level: " + recognizer.AudioLevel); + Console.WriteLine(" Audio position at the event: " + e.AudioPosition); + Console.WriteLine(" Current audio position: " + recognizer.AudioPosition); + Console.WriteLine(" Current recognizer audio position: " + + recognizer.RecognizerAudioPosition); + } + + // Write the text of the recognition result to the console. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("\nSpeech recognized: " + e.Result.Text); + + // Add event handler code here. + } + } +} + +``` + ]]> @@ -816,50 +816,50 @@ namespace SampleRecognition Raised when the detects a problem in the audio signal. - property of the associated . - - When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example defines an event handler that gathers information about an event. - -``` -private SpeechRecognitionEngine recognizer; - -// Initialize the speech recognition engine. -private void Initialize() -{ - recognizer = new SpeechRecognitionEngine(); - - // Add a handler for the AudioSignalProblemOccurred event. - recognizer.AudioSignalProblemOccurred += - new EventHandler( - recognizer_AudioSignalProblemOccurred); -} - -// Gather information when the AudioSignalProblemOccurred event is raised. -void recognizer_AudioSignalProblemOccurred(object sender, AudioSignalProblemOccurredEventArgs e) -{ - StringBuilder details = new StringBuilder(); - - details.AppendLine("Audio signal problem information:"); - details.AppendFormat( - " Audio level: {0}" + Environment.NewLine + - " Audio position: {1}" + Environment.NewLine + - " Audio signal problem: {2}" + Environment.NewLine + - " Recognition engine audio position: {3}" + Environment.NewLine, - e.AudioLevel, e.AudioPosition, e.AudioSignalProblem, - e.recoEngineAudioPosition); - - // Insert additional event handler code here. -} -``` - + property of the associated . + + When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example defines an event handler that gathers information about an event. + +``` +private SpeechRecognitionEngine recognizer; + +// Initialize the speech recognition engine. +private void Initialize() +{ + recognizer = new SpeechRecognitionEngine(); + + // Add a handler for the AudioSignalProblemOccurred event. + recognizer.AudioSignalProblemOccurred += + new EventHandler( + recognizer_AudioSignalProblemOccurred); +} + +// Gather information when the AudioSignalProblemOccurred event is raised. +void recognizer_AudioSignalProblemOccurred(object sender, AudioSignalProblemOccurredEventArgs e) +{ + StringBuilder details = new StringBuilder(); + + details.AppendLine("Audio signal problem information:"); + details.AppendFormat( + " Audio level: {0}" + Environment.NewLine + + " Audio position: {1}" + Environment.NewLine + + " Audio signal problem: {2}" + Environment.NewLine + + " Recognition engine audio position: {3}" + Environment.NewLine, + e.AudioLevel, e.AudioPosition, e.AudioSignalProblem, + e.recoEngineAudioPosition); + + // Insert additional event handler code here. +} +``` + ]]> @@ -887,11 +887,11 @@ void recognizer_AudioSignalProblemOccurred(object sender, AudioSignalProblemOccu Gets the state of the audio being received by the . The state of the audio input to the speech recognizer. - property represents the audio state with a member of the enumeration. - + property represents the audio state with a member of the enumeration. + ]]> @@ -919,97 +919,97 @@ void recognizer_AudioSignalProblemOccurred(object sender, AudioSignalProblemOccu Raised when the state changes in the audio being received by the . - property of the associated . To get the current audio state of the input to the recognizer, use the recognizer's property. For more information about audio state, see the enumeration. - - When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example uses a handler for the event to write the recognizer's new to the console each time it changes, using a member of the enumeration. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize an in-process speech recognition engine. - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) - { - - // Create and load a grammar. - Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); - GrammarBuilder farm = new GrammarBuilder("On this farm he had a"); - farm.Append(animals); - Grammar farmAnimals = new Grammar(farm); - farmAnimals.Name = "Farm"; - recognizer.LoadGrammar(farmAnimals); - - // Attach event handlers. - recognizer.AudioStateChanged += - new EventHandler(recognizer_AudioStateChanged); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - - // Set the input to the recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start recognition. - recognizer.RecognizeAsync(); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null && e.Result.Text != null) - { - Console.WriteLine(); - Console.WriteLine(" Recognized text = {0}", e.Result.Text); - Console.WriteLine(); - } - else - { - Console.WriteLine(" Recognized text not available."); - } - - Console.WriteLine(); - Console.WriteLine("Done."); - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the AudioStateChanged event. - static void recognizer_AudioStateChanged(object sender, AudioStateChangedEventArgs e) - { - Console.WriteLine("The new audio state is: " + e.AudioState); - } - } -} -``` - + property of the associated . To get the current audio state of the input to the recognizer, use the recognizer's property. For more information about audio state, see the enumeration. + + When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example uses a handler for the event to write the recognizer's new to the console each time it changes, using a member of the enumeration. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize an in-process speech recognition engine. + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) + { + + // Create and load a grammar. + Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); + GrammarBuilder farm = new GrammarBuilder("On this farm he had a"); + farm.Append(animals); + Grammar farmAnimals = new Grammar(farm); + farmAnimals.Name = "Farm"; + recognizer.LoadGrammar(farmAnimals); + + // Attach event handlers. + recognizer.AudioStateChanged += + new EventHandler(recognizer_AudioStateChanged); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + + // Set the input to the recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start recognition. + recognizer.RecognizeAsync(); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null && e.Result.Text != null) + { + Console.WriteLine(); + Console.WriteLine(" Recognized text = {0}", e.Result.Text); + Console.WriteLine(); + } + else + { + Console.WriteLine(" Recognized text not available."); + } + + Console.WriteLine(); + Console.WriteLine("Done."); + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the AudioStateChanged event. + static void recognizer_AudioStateChanged(object sender, AudioStateChangedEventArgs e) + { + Console.WriteLine("The new audio state is: " + e.AudioState); + } + } +} +``` + ]]> @@ -1044,129 +1044,129 @@ namespace SampleRecognition Gets or sets the time interval during which a accepts input containing only background noise, before finalizing recognition. The duration of the time interval. - event, where the property is `true`, and the property is `null`. - -- For synchronous recognition operations and emulation, the recognizer returns `null`, instead of a valid . - - If the babble timeout period is set to 0, the recognizer does not perform a babble timeout check. The timeout interval can be any non-negative value. The default is 0 seconds. - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition that sets the and properties of a before initiating speech recognition. Handlers for the speech recognizer's and events output event information to the console to demonstrate how the properties of a affect recognition operations. - -```csharp - -using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Initialize an in-process speech recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - // Load a Grammar object. - recognizer.LoadGrammar(CreateServicesGrammar("FindServices")); - - // Add event handlers. - recognizer.AudioStateChanged += - new EventHandler( - AudioStateChangedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(3); - recognizer.BabbleTimeout = TimeSpan.FromSeconds(2); - recognizer.EndSilenceTimeout = TimeSpan.FromSeconds(1); - recognizer.EndSilenceTimeoutAmbiguous = TimeSpan.FromSeconds(1.5); - - Console.WriteLine("BabbleTimeout: {0}", recognizer.BabbleTimeout); - Console.WriteLine("InitialSilenceTimeout: {0}", recognizer.InitialSilenceTimeout); - Console.WriteLine("EndSilenceTimeout: {0}", recognizer.EndSilenceTimeout); - Console.WriteLine("EndSilenceTimeoutAmbiguous: {0}", recognizer.EndSilenceTimeoutAmbiguous); - Console.WriteLine(); - - // Start asynchronous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Single); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Create a grammar and build it into a Grammar object. - static Grammar CreateServicesGrammar(string grammarName) - { - - // Create a grammar for finding services in different cities. - Choices services = new Choices(new string[] { "restaurants", "hotels", "gas stations" }); - Choices cities = new Choices(new string[] { "Seattle", "Boston", "Dallas" }); - - GrammarBuilder findServices = new GrammarBuilder("Find"); - findServices.Append(services); - findServices.Append("near"); - findServices.Append(cities); - - // Create a Grammar object from the GrammarBuilder. - Grammar servicesGrammar = new Grammar(findServices); - servicesGrammar.Name = ("FindServices"); - return servicesGrammar; - } - - // Handle the AudioStateChanged event. - static void AudioStateChangedHandler( - object sender, AudioStateChangedEventArgs e) - { - Console.WriteLine("AudioStateChanged ({0}): {1}", - DateTime.Now.ToString("mm:ss.f"), e.AudioState); - } - - // Handle the RecognizeCompleted event. - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - Console.WriteLine("RecognizeCompleted ({0}):", - DateTime.Now.ToString("mm:ss.f")); - - string resultText; - if (e.Result != null) { resultText = e.Result.Text; } - else { resultText = ""; } - - Console.WriteLine( - " BabbleTimeout: {0}; InitialSilenceTimeout: {1}; Result text: {2}", - e.BabbleTimeout, e.InitialSilenceTimeout, resultText); - if (e.Error != null) - { - Console.WriteLine(" Exception message: ", e.Error.Message); - } - - // Start the next asynchronous recognition operation. - ((SpeechRecognitionEngine)sender).RecognizeAsync(RecognizeMode.Single); - } - } -} - -``` - + event, where the property is `true`, and the property is `null`. + +- For synchronous recognition operations and emulation, the recognizer returns `null`, instead of a valid . + + If the babble timeout period is set to 0, the recognizer does not perform a babble timeout check. The timeout interval can be any non-negative value. The default is 0 seconds. + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition that sets the and properties of a before initiating speech recognition. Handlers for the speech recognizer's and events output event information to the console to demonstrate how the properties of a affect recognition operations. + +```csharp + +using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Initialize an in-process speech recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + // Load a Grammar object. + recognizer.LoadGrammar(CreateServicesGrammar("FindServices")); + + // Add event handlers. + recognizer.AudioStateChanged += + new EventHandler( + AudioStateChangedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(3); + recognizer.BabbleTimeout = TimeSpan.FromSeconds(2); + recognizer.EndSilenceTimeout = TimeSpan.FromSeconds(1); + recognizer.EndSilenceTimeoutAmbiguous = TimeSpan.FromSeconds(1.5); + + Console.WriteLine("BabbleTimeout: {0}", recognizer.BabbleTimeout); + Console.WriteLine("InitialSilenceTimeout: {0}", recognizer.InitialSilenceTimeout); + Console.WriteLine("EndSilenceTimeout: {0}", recognizer.EndSilenceTimeout); + Console.WriteLine("EndSilenceTimeoutAmbiguous: {0}", recognizer.EndSilenceTimeoutAmbiguous); + Console.WriteLine(); + + // Start asynchronous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Single); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Create a grammar and build it into a Grammar object. + static Grammar CreateServicesGrammar(string grammarName) + { + + // Create a grammar for finding services in different cities. + Choices services = new Choices(new string[] { "restaurants", "hotels", "gas stations" }); + Choices cities = new Choices(new string[] { "Seattle", "Boston", "Dallas" }); + + GrammarBuilder findServices = new GrammarBuilder("Find"); + findServices.Append(services); + findServices.Append("near"); + findServices.Append(cities); + + // Create a Grammar object from the GrammarBuilder. + Grammar servicesGrammar = new Grammar(findServices); + servicesGrammar.Name = ("FindServices"); + return servicesGrammar; + } + + // Handle the AudioStateChanged event. + static void AudioStateChangedHandler( + object sender, AudioStateChangedEventArgs e) + { + Console.WriteLine("AudioStateChanged ({0}): {1}", + DateTime.Now.ToString("mm:ss.f"), e.AudioState); + } + + // Handle the RecognizeCompleted event. + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + Console.WriteLine("RecognizeCompleted ({0}):", + DateTime.Now.ToString("mm:ss.f")); + + string resultText; + if (e.Result != null) { resultText = e.Result.Text; } + else { resultText = ""; } + + Console.WriteLine( + " BabbleTimeout: {0}; InitialSilenceTimeout: {1}; Result text: {2}", + e.BabbleTimeout, e.InitialSilenceTimeout, resultText); + if (e.Error != null) + { + Console.WriteLine(" Exception message: ", e.Error.Message); + } + + // Start the next asynchronous recognition operation. + ((SpeechRecognitionEngine)sender).RecognizeAsync(RecognizeMode.Single); + } + } +} + +``` + ]]> This property is set to less than 0 seconds. @@ -1249,18 +1249,18 @@ namespace SpeechRecognitionApp Emulates input to the speech recognizer, using text in place of audio for synchronous speech recognition. - objects or as an array of objects. This can be helpful when you are testing or debugging an application or grammar. For example, you can use emulation to determine whether a word is in a grammar and what semantics are returned when the word is recognized. Use the method to disable audio input to the speech recognition engine during emulation operations. - - The speech recognizer raises the , , , and events as if the recognition operation is not emulated. The recognizer ignores new lines and extra white space and treats punctuation as literal input. - + objects or as an array of objects. This can be helpful when you are testing or debugging an application or grammar. For example, you can use emulation to determine whether a word is in a grammar and what semantics are returned when the word is recognized. Use the method to disable audio input to the speech recognition engine during emulation operations. + + The speech recognizer raises the , , , and events as if the recognition operation is not emulated. The recognizer ignores new lines and extra white space and treats punctuation as literal input. + > [!NOTE] -> The object generated by the speech recognizer in response to emulated input has a value of `null` for its property. - - To emulate asynchronous recognition, use the method. - +> The object generated by the speech recognizer in response to emulated input has a value of `null` for its property. + + To emulate asynchronous recognition, use the method. + ]]> @@ -1296,195 +1296,195 @@ namespace SpeechRecognitionApp Emulates input of a phrase to the speech recognizer, using text in place of audio for synchronous speech recognition. The result for the recognition operation, or if the operation is not successful or the recognizer is not enabled. - , , , and events as if the recognition operation is not emulated. - - The recognizers that ship with Vista and Windows 7 ignore case and character width when applying grammar rules to the input phrase. For more information about this type of comparison, see the enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. - - - -## Examples - The code example below is part of a console application that demonstrates emulated input, the associated recognition results, and the associated events raised by the speech recognizer. The example generates the following output. - -``` -TestRecognize("Smith")... - SpeechDetected event raised. - SpeechRecognized event raised. - Grammar = Smith; Text = Smith -...Recognition result text = Smith - -TestRecognize("Jones")... - SpeechDetected event raised. - SpeechRecognized event raised. - Grammar = Jones; Text = Jones -...Recognition result text = Jones - -TestRecognize("Mister")... - SpeechDetected event raised. - SpeechHypothesized event raised. - Grammar = Smith; Text = mister - SpeechRecognitionRejected event raised. - Grammar = ; Text = -...No recognition result. - -TestRecognize("Mister Smith")... - SpeechDetected event raised. - SpeechRecognized event raised. - Grammar = Smith; Text = mister Smith -...Recognition result text = mister Smith - -press any key to exit... -``` - -```csharp - -using System; -using System.Globalization; -using System.Speech.Recognition; - -namespace Sre_EmulateRecognize -{ - class Program - { - static void Main(string[] args) - { - - // Create an in-process speech recognizer for the en-US locale. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - - // Load grammars. - recognizer.LoadGrammar(CreateNameGrammar("Smith")); - recognizer.LoadGrammar(CreateNameGrammar("Jones")); - - // Disable audio input to the recognizer. - recognizer.SetInputToNull(); - - // Add handlers for events raised by the EmulateRecognize method. - recognizer.SpeechDetected += - new EventHandler( - SpeechDetectedHandler); - recognizer.SpeechHypothesized += - new EventHandler( - SpeechHypothesizedHandler); - recognizer.SpeechRecognitionRejected += - new EventHandler( - SpeechRecognitionRejectedHandler); - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - - // Start four synchronous emulated recognition operations. - TestRecognize(recognizer, "Smith"); - TestRecognize(recognizer, "Jones"); - TestRecognize(recognizer, "Mister"); - TestRecognize(recognizer, "Mister Smith"); - } - - Console.WriteLine("press any key to exit..."); - Console.ReadKey(true); - } - - // Create a simple name grammar. - // Set the grammar name to the surname. - private static Grammar CreateNameGrammar(string surname) - { - GrammarBuilder builder = new GrammarBuilder("mister", 0, 1); - builder.Append(surname); - - Grammar nameGrammar = new Grammar(builder); - nameGrammar.Name = surname; - - return nameGrammar; - } - - // Send emulated input to the recognizer for synchronous recognition. - private static void TestRecognize( - SpeechRecognitionEngine recognizer, string input) - { - Console.WriteLine("TestRecognize(\"{0}\")...", input); - RecognitionResult result = - recognizer.EmulateRecognize(input,CompareOptions.IgnoreCase); - if (result != null) - { - Console.WriteLine("...Recognition result text = {0}", - result.Text ?? ""); - } - else - { - Console.WriteLine("...No recognition result."); - } - Console.WriteLine(); - } - - static void SpeechDetectedHandler( - object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(" SpeechDetected event raised."); - } - - // Handle events. - static void SpeechHypothesizedHandler( - object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine(" SpeechHypothesized event raised."); - if (e.Result != null) - { - Console.WriteLine(" Grammar = {0}; Text = {1}", - e.Result.Grammar.Name ?? "", e.Result.Text); - } - else - { - Console.WriteLine(" No recognition result available."); - } - } - - static void SpeechRecognitionRejectedHandler( - object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" SpeechRecognitionRejected event raised."); - if (e.Result != null) - { - string grammarName; - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name ?? ""; - } - else - { - grammarName = ""; - } - Console.WriteLine(" Grammar = {0}; Text = {1}", - grammarName, e.Result.Text); - } - else - { - Console.WriteLine(" No recognition result available."); - } - } - - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" SpeechRecognized event raised."); - if (e.Result != null) - { - Console.WriteLine(" Grammar = {0}; Text = {1}", - e.Result.Grammar.Name ?? "", e.Result.Text); - } - else - { - Console.WriteLine(" No recognition result available."); - } - } - } -} - -``` - + , , , and events as if the recognition operation is not emulated. + + The recognizers that ship with Vista and Windows 7 ignore case and character width when applying grammar rules to the input phrase. For more information about this type of comparison, see the enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. + + + +## Examples + The code example below is part of a console application that demonstrates emulated input, the associated recognition results, and the associated events raised by the speech recognizer. The example generates the following output. + +``` +TestRecognize("Smith")... + SpeechDetected event raised. + SpeechRecognized event raised. + Grammar = Smith; Text = Smith +...Recognition result text = Smith + +TestRecognize("Jones")... + SpeechDetected event raised. + SpeechRecognized event raised. + Grammar = Jones; Text = Jones +...Recognition result text = Jones + +TestRecognize("Mister")... + SpeechDetected event raised. + SpeechHypothesized event raised. + Grammar = Smith; Text = mister + SpeechRecognitionRejected event raised. + Grammar = ; Text = +...No recognition result. + +TestRecognize("Mister Smith")... + SpeechDetected event raised. + SpeechRecognized event raised. + Grammar = Smith; Text = mister Smith +...Recognition result text = mister Smith + +press any key to exit... +``` + +```csharp + +using System; +using System.Globalization; +using System.Speech.Recognition; + +namespace Sre_EmulateRecognize +{ + class Program + { + static void Main(string[] args) + { + + // Create an in-process speech recognizer for the en-US locale. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + + // Load grammars. + recognizer.LoadGrammar(CreateNameGrammar("Smith")); + recognizer.LoadGrammar(CreateNameGrammar("Jones")); + + // Disable audio input to the recognizer. + recognizer.SetInputToNull(); + + // Add handlers for events raised by the EmulateRecognize method. + recognizer.SpeechDetected += + new EventHandler( + SpeechDetectedHandler); + recognizer.SpeechHypothesized += + new EventHandler( + SpeechHypothesizedHandler); + recognizer.SpeechRecognitionRejected += + new EventHandler( + SpeechRecognitionRejectedHandler); + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + + // Start four synchronous emulated recognition operations. + TestRecognize(recognizer, "Smith"); + TestRecognize(recognizer, "Jones"); + TestRecognize(recognizer, "Mister"); + TestRecognize(recognizer, "Mister Smith"); + } + + Console.WriteLine("press any key to exit..."); + Console.ReadKey(true); + } + + // Create a simple name grammar. + // Set the grammar name to the surname. + private static Grammar CreateNameGrammar(string surname) + { + GrammarBuilder builder = new GrammarBuilder("mister", 0, 1); + builder.Append(surname); + + Grammar nameGrammar = new Grammar(builder); + nameGrammar.Name = surname; + + return nameGrammar; + } + + // Send emulated input to the recognizer for synchronous recognition. + private static void TestRecognize( + SpeechRecognitionEngine recognizer, string input) + { + Console.WriteLine("TestRecognize(\"{0}\")...", input); + RecognitionResult result = + recognizer.EmulateRecognize(input,CompareOptions.IgnoreCase); + if (result != null) + { + Console.WriteLine("...Recognition result text = {0}", + result.Text ?? ""); + } + else + { + Console.WriteLine("...No recognition result."); + } + Console.WriteLine(); + } + + static void SpeechDetectedHandler( + object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(" SpeechDetected event raised."); + } + + // Handle events. + static void SpeechHypothesizedHandler( + object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine(" SpeechHypothesized event raised."); + if (e.Result != null) + { + Console.WriteLine(" Grammar = {0}; Text = {1}", + e.Result.Grammar.Name ?? "", e.Result.Text); + } + else + { + Console.WriteLine(" No recognition result available."); + } + } + + static void SpeechRecognitionRejectedHandler( + object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" SpeechRecognitionRejected event raised."); + if (e.Result != null) + { + string grammarName; + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name ?? ""; + } + else + { + grammarName = ""; + } + Console.WriteLine(" Grammar = {0}; Text = {1}", + grammarName, e.Result.Text); + } + else + { + Console.WriteLine(" No recognition result available."); + } + } + + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" SpeechRecognized event raised."); + if (e.Result != null) + { + Console.WriteLine(" Grammar = {0}; Text = {1}", + e.Result.Grammar.Name ?? "", e.Result.Text); + } + else + { + Console.WriteLine(" No recognition result available."); + } + } + } +} + +``` + ]]> The recognizer has no speech recognition grammars loaded. @@ -1527,13 +1527,13 @@ namespace Sre_EmulateRecognize Emulates input of specific words to the speech recognizer, using text in place of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars. The result for the recognition operation, or if the operation is not successful or the recognizer is not enabled. - , , , and events as if the recognition operation is not emulated. - - The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizer always ignores the character width and never ignores the Kana type. The recognizer also ignores new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + , , , and events as if the recognition operation is not emulated. + + The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizer always ignores the character width and never ignores the Kana type. The recognizer also ignores new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. + ]]> The recognizer has no speech recognition grammars loaded. @@ -1578,13 +1578,13 @@ namespace Sre_EmulateRecognize Emulates input of a phrase to the speech recognizer, using text in place of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars. The result for the recognition operation, or if the operation is not successful or the recognizer is not enabled. - , , , and events as if the recognition operation is not emulated. - - The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizer always ignores the character width and never ignores the Kana type. The recognizer also ignores new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + , , , and events as if the recognition operation is not emulated. + + The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizer always ignores the character width and never ignores the Kana type. The recognizer also ignores new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. + ]]> The recognizer has no speech recognition grammars loaded. @@ -1610,18 +1610,18 @@ namespace Sre_EmulateRecognize Emulates input to the speech recognizer, using text in place of audio for asynchronous speech recognition. - objects or as an array of objects. This can be helpful when you are testing or debugging an application or grammar. For example, you can use emulation to determine whether a word is in a grammar and what semantics are returned when the word is recognized. Use the method to disable audio input to the speech recognition engine during emulation operations. - - The speech recognizer raises the , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. The recognizer ignores new lines and extra white space and treats punctuation as literal input. - + objects or as an array of objects. This can be helpful when you are testing or debugging an application or grammar. For example, you can use emulation to determine whether a word is in a grammar and what semantics are returned when the word is recognized. Use the method to disable audio input to the speech recognition engine during emulation operations. + + The speech recognizer raises the , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. The recognizer ignores new lines and extra white space and treats punctuation as literal input. + > [!NOTE] -> The object generated by the speech recognizer in response to emulated input has a value of `null` for its property. - - To emulate synchronous recognition, use the method. - +> The object generated by the speech recognizer in response to emulated input has a value of `null` for its property. + + To emulate synchronous recognition, use the method. + ]]> @@ -1656,231 +1656,231 @@ namespace Sre_EmulateRecognize The input for the recognition operation. Emulates input of a phrase to the speech recognizer, using text in place of audio for asynchronous speech recognition. - , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. - - The recognizers that ship with Vista and Windows 7 ignore case and character width when applying grammar rules to the input phrase. For more information about this type of comparison, see the enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. - + , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. + + The recognizers that ship with Vista and Windows 7 ignore case and character width when applying grammar rules to the input phrase. For more information about this type of comparison, see the enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . - -## Examples - The code example below is part of a console application that demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. The example generates the following output. - + +## Examples + The code example below is part of a console application that demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. The example generates the following output. + ```txt -TestRecognizeAsync("Smith")... - SpeechDetected event raised. - SpeechRecognized event raised. - Grammar = Smith; Text = Smith - EmulateRecognizeCompleted event raised. - Grammar = Smith; Text = Smith - Done. - -TestRecognizeAsync("Jones")... - SpeechDetected event raised. - SpeechRecognized event raised. - Grammar = Jones; Text = Jones - EmulateRecognizeCompleted event raised. - Grammar = Jones; Text = Jones - Done. - -TestRecognizeAsync("Mister")... - SpeechDetected event raised. - SpeechHypothesized event raised. - Grammar = Smith; Text = mister - SpeechRecognitionRejected event raised. - Grammar = ; Text = - EmulateRecognizeCompleted event raised. - No recognition result available. - Done. - -TestRecognizeAsync("Mister Smith")... - SpeechDetected event raised. - SpeechRecognized event raised. - Grammar = Smith; Text = mister Smith - EmulateRecognizeCompleted event raised. - Grammar = Smith; Text = mister Smith - Done. - -press any key to exit... -``` - -```csharp -using System; -using System.Globalization; -using System.Speech.Recognition; -using System.Threading; - -namespace SreEmulateRecognizeAsync -{ - class Program - { - // Indicate when an asynchronous operation is finished. - static bool completed; - - static void Main(string[] args) - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - // Load grammars. - recognizer.LoadGrammar(CreateNameGrammar("Smith")); - recognizer.LoadGrammar(CreateNameGrammar("Jones")); - - // Configure the audio input. - recognizer.SetInputToNull(); - - // Add event handlers for the events raised by the - // EmulateRecognizeAsync method. - recognizer.SpeechDetected += - new EventHandler( - SpeechDetectedHandler); - recognizer.SpeechHypothesized += - new EventHandler( - SpeechHypothesizedHandler); - recognizer.SpeechRecognitionRejected += - new EventHandler( - SpeechRecognitionRejectedHandler); - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.EmulateRecognizeCompleted += - new EventHandler( - EmulateRecognizeCompletedHandler); - - // Start four asynchronous emulated recognition operations. - TestRecognizeAsync(recognizer, "Smith"); - TestRecognizeAsync(recognizer, "Jones"); - TestRecognizeAsync(recognizer, "Mister"); - TestRecognizeAsync(recognizer, "Mister Smith"); - } - - Console.WriteLine("press any key to exit..."); - Console.ReadKey(true); - } - - // Create a simple name grammar. - // Set the grammar name to the surname. - private static Grammar CreateNameGrammar(string surname) - { - GrammarBuilder builder = new GrammarBuilder("mister", 0, 1); - builder.Append(surname); - - Grammar nameGrammar = new Grammar(builder); - nameGrammar.Name = surname; - - return nameGrammar; - } - - // Send emulated input to the recognizer for asynchronous - // recognition. - private static void TestRecognizeAsync( - SpeechRecognitionEngine recognizer, string input) - { - completed = false; - - Console.WriteLine("TestRecognizeAsync(\"{0}\")...", input); - recognizer.EmulateRecognizeAsync(input); - - // Wait for the operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - Console.WriteLine(" Done."); - Console.WriteLine(); - } - - static void SpeechDetectedHandler( - object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(" SpeechDetected event raised."); - } - - static void SpeechHypothesizedHandler( - object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine(" SpeechHypothesized event raised."); - if (e.Result != null) - { - Console.WriteLine(" Grammar = {0}; Text = {1}", - e.Result.Grammar.Name ?? "", e.Result.Text); - } - else - { - Console.WriteLine(" No recognition result available."); - } - } - - // Handle events. - static void SpeechRecognitionRejectedHandler( - object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" SpeechRecognitionRejected event raised."); - if (e.Result != null) - { - string grammarName; - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name ?? ""; - } - else - { - grammarName = ""; - } - Console.WriteLine(" Grammar = {0}; Text = {1}", - grammarName, e.Result.Text); - } - else - { - Console.WriteLine(" No recognition result available."); - } - } - - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" SpeechRecognized event raised."); - if (e.Result != null) - { - Console.WriteLine(" Grammar = {0}; Text = {1}", - e.Result.Grammar.Name ?? "", e.Result.Text ); - } - else - { - Console.WriteLine(" No recognition result available."); - } - } - - static void EmulateRecognizeCompletedHandler( - object sender, EmulateRecognizeCompletedEventArgs e) - { - Console.WriteLine(" EmulateRecognizeCompleted event raised."); - - if (e.Error != null) - { - Console.WriteLine(" {0} exception encountered: {1}:", - e.Error.GetType().Name, e.Error.Message); - } - else if (e.Cancelled) - { - Console.WriteLine(" Operation cancelled."); - } - else if (e.Result != null) - { - Console.WriteLine(" Grammar = {0}; Text = {1}", - e.Result.Grammar.Name ?? "", e.Result.Text); - } - else - { - Console.WriteLine(" No recognition result available."); - } - - completed = true; - } - } +TestRecognizeAsync("Smith")... + SpeechDetected event raised. + SpeechRecognized event raised. + Grammar = Smith; Text = Smith + EmulateRecognizeCompleted event raised. + Grammar = Smith; Text = Smith + Done. + +TestRecognizeAsync("Jones")... + SpeechDetected event raised. + SpeechRecognized event raised. + Grammar = Jones; Text = Jones + EmulateRecognizeCompleted event raised. + Grammar = Jones; Text = Jones + Done. + +TestRecognizeAsync("Mister")... + SpeechDetected event raised. + SpeechHypothesized event raised. + Grammar = Smith; Text = mister + SpeechRecognitionRejected event raised. + Grammar = ; Text = + EmulateRecognizeCompleted event raised. + No recognition result available. + Done. + +TestRecognizeAsync("Mister Smith")... + SpeechDetected event raised. + SpeechRecognized event raised. + Grammar = Smith; Text = mister Smith + EmulateRecognizeCompleted event raised. + Grammar = Smith; Text = mister Smith + Done. + +press any key to exit... +``` + +```csharp +using System; +using System.Globalization; +using System.Speech.Recognition; +using System.Threading; + +namespace SreEmulateRecognizeAsync +{ + class Program + { + // Indicate when an asynchronous operation is finished. + static bool completed; + + static void Main(string[] args) + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + // Load grammars. + recognizer.LoadGrammar(CreateNameGrammar("Smith")); + recognizer.LoadGrammar(CreateNameGrammar("Jones")); + + // Configure the audio input. + recognizer.SetInputToNull(); + + // Add event handlers for the events raised by the + // EmulateRecognizeAsync method. + recognizer.SpeechDetected += + new EventHandler( + SpeechDetectedHandler); + recognizer.SpeechHypothesized += + new EventHandler( + SpeechHypothesizedHandler); + recognizer.SpeechRecognitionRejected += + new EventHandler( + SpeechRecognitionRejectedHandler); + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.EmulateRecognizeCompleted += + new EventHandler( + EmulateRecognizeCompletedHandler); + + // Start four asynchronous emulated recognition operations. + TestRecognizeAsync(recognizer, "Smith"); + TestRecognizeAsync(recognizer, "Jones"); + TestRecognizeAsync(recognizer, "Mister"); + TestRecognizeAsync(recognizer, "Mister Smith"); + } + + Console.WriteLine("press any key to exit..."); + Console.ReadKey(true); + } + + // Create a simple name grammar. + // Set the grammar name to the surname. + private static Grammar CreateNameGrammar(string surname) + { + GrammarBuilder builder = new GrammarBuilder("mister", 0, 1); + builder.Append(surname); + + Grammar nameGrammar = new Grammar(builder); + nameGrammar.Name = surname; + + return nameGrammar; + } + + // Send emulated input to the recognizer for asynchronous + // recognition. + private static void TestRecognizeAsync( + SpeechRecognitionEngine recognizer, string input) + { + completed = false; + + Console.WriteLine("TestRecognizeAsync(\"{0}\")...", input); + recognizer.EmulateRecognizeAsync(input); + + // Wait for the operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + Console.WriteLine(" Done."); + Console.WriteLine(); + } + + static void SpeechDetectedHandler( + object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(" SpeechDetected event raised."); + } + + static void SpeechHypothesizedHandler( + object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine(" SpeechHypothesized event raised."); + if (e.Result != null) + { + Console.WriteLine(" Grammar = {0}; Text = {1}", + e.Result.Grammar.Name ?? "", e.Result.Text); + } + else + { + Console.WriteLine(" No recognition result available."); + } + } + + // Handle events. + static void SpeechRecognitionRejectedHandler( + object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" SpeechRecognitionRejected event raised."); + if (e.Result != null) + { + string grammarName; + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name ?? ""; + } + else + { + grammarName = ""; + } + Console.WriteLine(" Grammar = {0}; Text = {1}", + grammarName, e.Result.Text); + } + else + { + Console.WriteLine(" No recognition result available."); + } + } + + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" SpeechRecognized event raised."); + if (e.Result != null) + { + Console.WriteLine(" Grammar = {0}; Text = {1}", + e.Result.Grammar.Name ?? "", e.Result.Text ); + } + else + { + Console.WriteLine(" No recognition result available."); + } + } + + static void EmulateRecognizeCompletedHandler( + object sender, EmulateRecognizeCompletedEventArgs e) + { + Console.WriteLine(" EmulateRecognizeCompleted event raised."); + + if (e.Error != null) + { + Console.WriteLine(" {0} exception encountered: {1}:", + e.Error.GetType().Name, e.Error.Message); + } + else if (e.Cancelled) + { + Console.WriteLine(" Operation cancelled."); + } + else if (e.Result != null) + { + Console.WriteLine(" Grammar = {0}; Text = {1}", + e.Result.Grammar.Name ?? "", e.Result.Text); + } + else + { + Console.WriteLine(" No recognition result available."); + } + + completed = true; + } + } } ``` @@ -1926,13 +1926,13 @@ namespace SreEmulateRecognizeAsync A bitwise combination of the enumeration values that describe the type of comparison to use for the emulated recognition operation. Emulates input of specific words to the speech recognizer, using an array of objects in place of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars. - , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. - - The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treat punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. + + The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treat punctuation as literal input. For more information about character width and Kana type, see the enumeration. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> @@ -1979,13 +1979,13 @@ namespace SreEmulateRecognizeAsync A bitwise combination of the enumeration values that describe the type of comparison to use for the emulated recognition operation. Emulates input of a phrase to the speech recognizer, using text in place of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars. - , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. - - The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treat punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. + + The recognizer uses `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treat punctuation as literal input. For more information about character width and Kana type, see the enumeration. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> @@ -2027,128 +2027,128 @@ namespace SreEmulateRecognizeAsync Raised when the finalizes an asynchronous recognition operation of emulated input. - method begins an asynchronous recognition operation. The raises the event when it finalizes the asynchronous operation. - - The operation can raise the , , , and events. The event is the last such event that the recognizer raises for a given operation. - - If emulated recognition was successful, you can access the recognition result using the either of the following: - -- The property in the object in the handler for the event. - -- property in the object in the handler for the event. - - If emulated recognition was not successful, the event is not raised and the will be null. - - derives from . - - derives from . - - When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. - -``` -using System; -using System.Speech.Recognition; -using System.Threading; - -namespace InProcessRecognizer -{ - class Program - { - // Indicate whether the asynchronous emulate recognition - // operation has completed. - static bool completed; - - static void Main(string[] args) - { - - // Initialize an instance of an in-process recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) - { - // Create and load a sample grammar. - Grammar testGrammar = - new Grammar(new GrammarBuilder("testing testing")); - testGrammar.Name = "Test Grammar"; - recognizer.LoadGrammar(testGrammar); - - // Attach event handlers for recognition events. - recognizer.SpeechRecognized += - new EventHandler(SpeechRecognizedHandler); - recognizer.EmulateRecognizeCompleted += - new EventHandler( - EmulateRecognizeCompletedHandler); - - completed = false; - - // This EmulateRecognizeAsync call matches the grammar - // and generates a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing testing"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - completed = false; - - // This EmulateRecognizeAsync call does not match the grammar - // or generate a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing one two three"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null) - { - Console.WriteLine("Result of 1st call to EmulateRecognizeAsync = {0}", - e.Result.Text ?? ""); - Console.WriteLine(); - } - else - { - Console.WriteLine("No recognition result"); - } - } - - // Handle the EmulateRecognizeCompleted event. - static void EmulateRecognizeCompletedHandler( - object sender, EmulateRecognizeCompletedEventArgs e) - { - if (e.Result == null) - { - Console.WriteLine("Result of 2nd call to EmulateRecognizeAsync = No result generated."); - } - - // Indicate the asynchronous operation is complete. - completed = true; - } - } -} - -``` - + method begins an asynchronous recognition operation. The raises the event when it finalizes the asynchronous operation. + + The operation can raise the , , , and events. The event is the last such event that the recognizer raises for a given operation. + + If emulated recognition was successful, you can access the recognition result using the either of the following: + +- The property in the object in the handler for the event. + +- property in the object in the handler for the event. + + If emulated recognition was not successful, the event is not raised and the will be null. + + derives from . + + derives from . + + When you create an delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. + +``` +using System; +using System.Speech.Recognition; +using System.Threading; + +namespace InProcessRecognizer +{ + class Program + { + // Indicate whether the asynchronous emulate recognition + // operation has completed. + static bool completed; + + static void Main(string[] args) + { + + // Initialize an instance of an in-process recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) + { + // Create and load a sample grammar. + Grammar testGrammar = + new Grammar(new GrammarBuilder("testing testing")); + testGrammar.Name = "Test Grammar"; + recognizer.LoadGrammar(testGrammar); + + // Attach event handlers for recognition events. + recognizer.SpeechRecognized += + new EventHandler(SpeechRecognizedHandler); + recognizer.EmulateRecognizeCompleted += + new EventHandler( + EmulateRecognizeCompletedHandler); + + completed = false; + + // This EmulateRecognizeAsync call matches the grammar + // and generates a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing testing"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + completed = false; + + // This EmulateRecognizeAsync call does not match the grammar + // or generate a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing one two three"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null) + { + Console.WriteLine("Result of 1st call to EmulateRecognizeAsync = {0}", + e.Result.Text ?? ""); + Console.WriteLine(); + } + else + { + Console.WriteLine("No recognition result"); + } + } + + // Handle the EmulateRecognizeCompleted event. + static void EmulateRecognizeCompletedHandler( + object sender, EmulateRecognizeCompletedEventArgs e) + { + if (e.Result == null) + { + Console.WriteLine("Result of 2nd call to EmulateRecognizeAsync = No result generated."); + } + + // Indicate the asynchronous operation is complete. + completed = true; + } + } +} + +``` + ]]> @@ -2186,15 +2186,15 @@ namespace InProcessRecognizer Gets or sets the interval of silence that the will accept at the end of unambiguous input before finalizing a recognition operation. The duration of the interval of silence. - property. - + property. + ]]> This property is set to less than 0 seconds or greater than 10 seconds. @@ -2234,15 +2234,15 @@ namespace InProcessRecognizer Gets or sets the interval of silence that the will accept at the end of ambiguous input before finalizing a recognition operation. The duration of the interval of silence. - property. - + property. + ]]> This property is set to less than 0 seconds or greater than 10 seconds. @@ -2276,30 +2276,30 @@ namespace InProcessRecognizer Gets a collection of the objects that are loaded in this instance. The collection of objects. - [!IMPORTANT] -> Copy the grammar collection to avoid errors if the collection is modified while this method enumerates the elements of the collection. - -```csharp - -private static void ListGrammars(SpeechRecognitionEngine recognizer) -{ - string qualifier; - List grammars = new List(recognizer.Grammars); - foreach (Grammar g in grammars) - { - qualifier = (g.Enabled) ? "enabled" : "disabled"; - - Console.WriteLine("Grammar {0} is loaded and is {1}.", - g.Name, qualifier); - } -} -``` - +> Copy the grammar collection to avoid errors if the collection is modified while this method enumerates the elements of the collection. + +```csharp + +private static void ListGrammars(SpeechRecognitionEngine recognizer) +{ + string qualifier; + List grammars = new List(recognizer.Grammars); + foreach (Grammar g in grammars) + { + qualifier = (g.Enabled) ? "enabled" : "disabled"; + + Console.WriteLine("Grammar {0} is loaded and is {1}.", + g.Name, qualifier); + } +} +``` + ]]> @@ -2332,129 +2332,129 @@ private static void ListGrammars(SpeechRecognitionEngine recognizer) Gets or sets the time interval during which a accepts input containing only silence before finalizing recognition. The duration of the interval of silence. - event, where the property is `true`, and the property is `null`. - -- For synchronous recognition operations and emulation, the recognizer returns `null`, instead of a valid . - - If the initial silence timeout interval is set to 0, the recognizer does not perform an initial silence timeout check. The timeout interval can be any non-negative value. The default is 0 seconds. - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition. The example sets the and properties of a before initiating speech recognition. Handlers for the speech recognizer's and events output event information to the console to demonstrate how the properties of a properties affect recognition operations. - -```csharp - -using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Initialize an in-process speech recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - // Load a Grammar object. - recognizer.LoadGrammar(CreateServicesGrammar("FindServices")); - - // Add event handlers. - recognizer.AudioStateChanged += - new EventHandler( - AudioStateChangedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(3); - recognizer.BabbleTimeout = TimeSpan.FromSeconds(2); - recognizer.EndSilenceTimeout = TimeSpan.FromSeconds(1); - recognizer.EndSilenceTimeoutAmbiguous = TimeSpan.FromSeconds(1.5); - - Console.WriteLine("BabbleTimeout: {0}", recognizer.BabbleTimeout); - Console.WriteLine("InitialSilenceTimeout: {0}", recognizer.InitialSilenceTimeout); - Console.WriteLine("EndSilenceTimeout: {0}", recognizer.EndSilenceTimeout); - Console.WriteLine("EndSilenceTimeoutAmbiguous: {0}", recognizer.EndSilenceTimeoutAmbiguous); - Console.WriteLine(); - - // Start asynchronous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Single); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Create a grammar and build it into a Grammar object. - static Grammar CreateServicesGrammar(string grammarName) - { - - // Create a grammar for finding services in different cities. - Choices services = new Choices(new string[] { "restaurants", "hotels", "gas stations" }); - Choices cities = new Choices(new string[] { "Seattle", "Boston", "Dallas" }); - - GrammarBuilder findServices = new GrammarBuilder("Find"); - findServices.Append(services); - findServices.Append("near"); - findServices.Append(cities); - - // Create a Grammar object from the GrammarBuilder. - Grammar servicesGrammar = new Grammar(findServices); - servicesGrammar.Name = ("FindServices"); - return servicesGrammar; - } - - // Handle the AudioStateChanged event. - static void AudioStateChangedHandler( - object sender, AudioStateChangedEventArgs e) - { - Console.WriteLine("AudioStateChanged ({0}): {1}", - DateTime.Now.ToString("mm:ss.f"), e.AudioState); - } - - // Handle the RecognizeCompleted event. - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - Console.WriteLine("RecognizeCompleted ({0}):", - DateTime.Now.ToString("mm:ss.f")); - - string resultText; - if (e.Result != null) { resultText = e.Result.Text; } - else { resultText = ""; } - - Console.WriteLine( - " BabbleTimeout: {0}; InitialSilenceTimeout: {1}; Result text: {2}", - e.BabbleTimeout, e.InitialSilenceTimeout, resultText); - if (e.Error != null) - { - Console.WriteLine(" Exception message: ", e.Error.Message); - } - - // Start the next asynchronous recognition operation. - ((SpeechRecognitionEngine)sender).RecognizeAsync(RecognizeMode.Single); - } - } -} - -``` - + event, where the property is `true`, and the property is `null`. + +- For synchronous recognition operations and emulation, the recognizer returns `null`, instead of a valid . + + If the initial silence timeout interval is set to 0, the recognizer does not perform an initial silence timeout check. The timeout interval can be any non-negative value. The default is 0 seconds. + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition. The example sets the and properties of a before initiating speech recognition. Handlers for the speech recognizer's and events output event information to the console to demonstrate how the properties of a properties affect recognition operations. + +```csharp + +using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Initialize an in-process speech recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + // Load a Grammar object. + recognizer.LoadGrammar(CreateServicesGrammar("FindServices")); + + // Add event handlers. + recognizer.AudioStateChanged += + new EventHandler( + AudioStateChangedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(3); + recognizer.BabbleTimeout = TimeSpan.FromSeconds(2); + recognizer.EndSilenceTimeout = TimeSpan.FromSeconds(1); + recognizer.EndSilenceTimeoutAmbiguous = TimeSpan.FromSeconds(1.5); + + Console.WriteLine("BabbleTimeout: {0}", recognizer.BabbleTimeout); + Console.WriteLine("InitialSilenceTimeout: {0}", recognizer.InitialSilenceTimeout); + Console.WriteLine("EndSilenceTimeout: {0}", recognizer.EndSilenceTimeout); + Console.WriteLine("EndSilenceTimeoutAmbiguous: {0}", recognizer.EndSilenceTimeoutAmbiguous); + Console.WriteLine(); + + // Start asynchronous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Single); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Create a grammar and build it into a Grammar object. + static Grammar CreateServicesGrammar(string grammarName) + { + + // Create a grammar for finding services in different cities. + Choices services = new Choices(new string[] { "restaurants", "hotels", "gas stations" }); + Choices cities = new Choices(new string[] { "Seattle", "Boston", "Dallas" }); + + GrammarBuilder findServices = new GrammarBuilder("Find"); + findServices.Append(services); + findServices.Append("near"); + findServices.Append(cities); + + // Create a Grammar object from the GrammarBuilder. + Grammar servicesGrammar = new Grammar(findServices); + servicesGrammar.Name = ("FindServices"); + return servicesGrammar; + } + + // Handle the AudioStateChanged event. + static void AudioStateChangedHandler( + object sender, AudioStateChangedEventArgs e) + { + Console.WriteLine("AudioStateChanged ({0}): {1}", + DateTime.Now.ToString("mm:ss.f"), e.AudioState); + } + + // Handle the RecognizeCompleted event. + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + Console.WriteLine("RecognizeCompleted ({0}):", + DateTime.Now.ToString("mm:ss.f")); + + string resultText; + if (e.Result != null) { resultText = e.Result.Text; } + else { resultText = ""; } + + Console.WriteLine( + " BabbleTimeout: {0}; InitialSilenceTimeout: {1}; Result text: {2}", + e.BabbleTimeout, e.InitialSilenceTimeout, resultText); + if (e.Error != null) + { + Console.WriteLine(" Exception message: ", e.Error.Message); + } + + // Start the next asynchronous recognition operation. + ((SpeechRecognitionEngine)sender).RecognizeAsync(RecognizeMode.Single); + } + } +} + +``` + ]]> This property is set to less than 0 seconds. @@ -2489,74 +2489,74 @@ namespace SpeechRecognitionApp Returns information for all of the installed speech recognizers on the current system. A read-only collection of the objects that describe the installed recognizers. - property. - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition. The example uses the collection returned by the method to find a speech recognizer that supports the English language. - -```csharp -using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Select a speech recognizer that supports English. - RecognizerInfo info = null; - foreach (RecognizerInfo ri in SpeechRecognitionEngine.InstalledRecognizers()) - { - if (ri.Culture.TwoLetterISOLanguageName.Equals("en")) - { - info = ri; - break; - } - } - if (info == null) return; - - // Create the selected recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(info)) - { - - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Add a handler for the speech recognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous, continuous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Recognized text: " + e.Result.Text); - } - } -} -``` - + property. + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition. The example uses the collection returned by the method to find a speech recognizer that supports the English language. + +```csharp +using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Select a speech recognizer that supports English. + RecognizerInfo info = null; + foreach (RecognizerInfo ri in SpeechRecognitionEngine.InstalledRecognizers()) + { + if (ri.Culture.TwoLetterISOLanguageName.Equals("en")) + { + info = ri; + break; + } + } + if (info == null) return; + + // Create the selected recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(info)) + { + + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Add a handler for the speech recognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous, continuous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Recognized text: " + e.Result.Text); + } + } +} +``` + ]]> @@ -2587,71 +2587,71 @@ namespace SpeechRecognitionApp The grammar object to load. Synchronously loads a object. - object is already loaded, is being asynchronously loaded, or has failed to load into any recognizer. You cannot load the same object into multiple instances of . Instead, create a new object for each instance. - - If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. - - When you load a grammar, it is enabled by default. To disable a loaded grammar, use the property. - - To load a object asynchronously, use the method. - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition. The example creates a and loads it into a speech recognizer. - -```csharp -using System; -using System.Speech.Recognition; - -namespace SpeechRecognitionApp -{ - class Program - { - static void Main(string[] args) - { - - // Create an in-process speech recognizer for the en-US locale. - using ( - SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Add a handler for the speech recognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous, continuous speech recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - while (true) - { - Console.ReadLine(); - } - } - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Recognized text: " + e.Result.Text); - } - } -} - -``` - + object is already loaded, is being asynchronously loaded, or has failed to load into any recognizer. You cannot load the same object into multiple instances of . Instead, create a new object for each instance. + + If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. + + When you load a grammar, it is enabled by default. To disable a loaded grammar, use the property. + + To load a object asynchronously, use the method. + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition. The example creates a and loads it into a speech recognizer. + +```csharp +using System; +using System.Speech.Recognition; + +namespace SpeechRecognitionApp +{ + class Program + { + static void Main(string[] args) + { + + // Create an in-process speech recognizer for the en-US locale. + using ( + SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Add a handler for the speech recognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous, continuous speech recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + while (true) + { + Console.ReadLine(); + } + } + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Recognized text: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -2688,17 +2688,17 @@ namespace SpeechRecognitionApp The speech recognition grammar to load. Asynchronously loads a speech recognition grammar. - object, it raises a event. The recognizer throws an exception if the object is already loaded, is being asynchronously loaded, or has failed to load into any recognizer. You cannot load the same object into multiple instances of . Instead, create a new object for each instance. - - If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. - - When you load a grammar, it is enabled by default. To disable a loaded grammar, use the property. - - To load a speech recognition grammar synchronously, use the method. - + object, it raises a event. The recognizer throws an exception if the object is already loaded, is being asynchronously loaded, or has failed to load into any recognizer. You cannot load the same object into multiple instances of . Instead, create a new object for each instance. + + If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. + + When you load a grammar, it is enabled by default. To disable a loaded grammar, use the property. + + To load a speech recognition grammar synchronously, use the method. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> @@ -2736,107 +2736,107 @@ namespace SpeechRecognitionApp Raised when the finishes the asynchronous loading of a object. - method initiates an asynchronous operation. The raises this event when it completes the operation. To get the object that the recognizer loaded, use the property of the associated . To get the current objects the recognizer has loaded, use the recognizer's property. - - If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example creates an in-process speech recognizer, and then creates two types of grammars for recognizing specific words and for accepting free dictation. The example constructs a object from each of the completed speech recognition grammars, then asynchronously loads the objects to the instance. Handlers for the recognizer's and events write to the console the name of the object that was used to perform the recognition and the text of the recognition result, respectively. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognitionEngine recognizer; - public static void Main(string[] args) - { - - // Initialize an in-process speech recognition engine and set its input. - recognizer = new SpeechRecognitionEngine(); - recognizer.SetInputToDefaultAudioDevice(); - - // Add a handler for the LoadGrammarCompleted event. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - - // Add a handler for the SpeechRecognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Create the "yesno" grammar. - Choices yesChoices = new Choices(new string[] { "yes", "yup", "yeah" }); - SemanticResultValue yesValue = - new SemanticResultValue(yesChoices, (bool)true); - Choices noChoices = new Choices(new string[] { "no", "nope", "neah" }); - SemanticResultValue noValue = - new SemanticResultValue(noChoices, (bool)false); - SemanticResultKey yesNoKey = - new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue })); - Grammar yesnoGrammar = new Grammar(yesNoKey); - yesnoGrammar.Name = "yesNo"; - - // Create the "done" grammar. - Grammar doneGrammar = - new Grammar(new Choices(new string[] { "done", "exit", "quit", "stop" })); - doneGrammar.Name = "Done"; - - // Create a dictation grammar. - Grammar dictation = new DictationGrammar(); - dictation.Name = "Dictation"; - - // Load grammars to the recognizer. - recognizer.LoadGrammarAsync(yesnoGrammar); - recognizer.LoadGrammarAsync(doneGrammar); - recognizer.LoadGrammarAsync(dictation); - - // Start asynchronous, continuous recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - Console.ReadLine(); - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - string grammarName = e.Grammar.Name; - bool grammarLoaded = e.Grammar.Loaded; - - if (e.Error != null) - { - Console.WriteLine("LoadGrammar for {0} failed with a {1}.", - grammarName, e.Error.GetType().Name); - - // Add exception handling code here. - } - - Console.WriteLine("Grammar {0} {1} loaded.", - grammarName, (grammarLoaded) ? "is" : "is not"); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); - - // Add event handler code here. - } - } -} - -``` - + method initiates an asynchronous operation. The raises this event when it completes the operation. To get the object that the recognizer loaded, use the property of the associated . To get the current objects the recognizer has loaded, use the recognizer's property. + + If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example creates an in-process speech recognizer, and then creates two types of grammars for recognizing specific words and for accepting free dictation. The example constructs a object from each of the completed speech recognition grammars, then asynchronously loads the objects to the instance. Handlers for the recognizer's and events write to the console the name of the object that was used to perform the recognition and the text of the recognition result, respectively. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognitionEngine recognizer; + public static void Main(string[] args) + { + + // Initialize an in-process speech recognition engine and set its input. + recognizer = new SpeechRecognitionEngine(); + recognizer.SetInputToDefaultAudioDevice(); + + // Add a handler for the LoadGrammarCompleted event. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + + // Add a handler for the SpeechRecognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Create the "yesno" grammar. + Choices yesChoices = new Choices(new string[] { "yes", "yup", "yeah" }); + SemanticResultValue yesValue = + new SemanticResultValue(yesChoices, (bool)true); + Choices noChoices = new Choices(new string[] { "no", "nope", "neah" }); + SemanticResultValue noValue = + new SemanticResultValue(noChoices, (bool)false); + SemanticResultKey yesNoKey = + new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue })); + Grammar yesnoGrammar = new Grammar(yesNoKey); + yesnoGrammar.Name = "yesNo"; + + // Create the "done" grammar. + Grammar doneGrammar = + new Grammar(new Choices(new string[] { "done", "exit", "quit", "stop" })); + doneGrammar.Name = "Done"; + + // Create a dictation grammar. + Grammar dictation = new DictationGrammar(); + dictation.Name = "Dictation"; + + // Load grammars to the recognizer. + recognizer.LoadGrammarAsync(yesnoGrammar); + recognizer.LoadGrammarAsync(doneGrammar); + recognizer.LoadGrammarAsync(dictation); + + // Start asynchronous, continuous recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + Console.ReadLine(); + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + string grammarName = e.Grammar.Name; + bool grammarLoaded = e.Grammar.Loaded; + + if (e.Error != null) + { + Console.WriteLine("LoadGrammar for {0} failed with a {1}.", + grammarName, e.Error.GetType().Name); + + // Add exception handling code here. + } + + Console.WriteLine("Grammar {0} {1} loaded.", + grammarName, (grammarLoaded) ? "is" : "is not"); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); + + // Add event handler code here. + } + } +} + +``` + ]]> @@ -2867,13 +2867,13 @@ namespace SampleRecognition Gets or sets the maximum number of alternate recognition results that the returns for each recognition operation. The number of alternate results to return. - property of the class contains the collection of objects that represent possible interpretations of the input. - - The default value for is 10. - + property of the class contains the collection of objects that represent possible interpretations of the input. + + The default value for is 10. + ]]> @@ -2909,89 +2909,89 @@ namespace SampleRecognition Returns the values of settings for the recognizer. The value of the setting. - property. Default = 150ms.| -|`ComplexResponseSpeed`|Indicates the length of silence at the end of ambiguous input before the speech recognizer completes a recognition operation. The range is from 0 to 10,000ms. This setting corresponds to the recognizer's property. Default = 500ms.| -|`AdaptationOn`|Indicates whether adaptation of the acoustic model is ON (value = `1`) or OFF (value = `0`). The default value is `1` (ON).| -|`PersistedBackgroundAdaptation`|Indicates whether background adaptation is ON (value = `1`) or OFF (value = `0`), and persists the setting in the registry. The default value is `1` (ON).| - - To update a setting for the recognizer, use one of the methods. - - - -## Examples - The following example is part of a console application that outputs the values for a number of the settings defined for the recognizer that supports the en-US locale. The example generates the following output. - -``` -Settings for recognizer MS-1033-80-DESK: - - ResourceUsage is not supported by this recognizer. - ResponseSpeed = 150 - ComplexResponseSpeed = 500 - AdaptationOn = 1 - PersistedBackgroundAdaptation = 1 - -Press any key to exit... -``` - -```csharp - -using System; -using System.Globalization; -using System.Speech.Recognition; - -namespace RecognizerSettings -{ - class Program - { - static readonly string[] settings = new string[] { - "ResourceUsage", - "ResponseSpeed", - "ComplexResponseSpeed", - "AdaptationOn", - "PersistedBackgroundAdaptation" - }; - - static void Main(string[] args) - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) - { - Console.WriteLine("Settings for recognizer {0}:", - recognizer.RecognizerInfo.Name); - Console.WriteLine(); - - foreach (string setting in settings) - { - try - { - object value = recognizer.QueryRecognizerSetting(setting); - Console.WriteLine(" {0,-30} = {1}", setting, value); - } - catch - { - Console.WriteLine(" {0,-30} is not supported by this recognizer.", - setting); - } - } - } - Console.WriteLine(); - - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + property. Default = 150ms.| +|`ComplexResponseSpeed`|Indicates the length of silence at the end of ambiguous input before the speech recognizer completes a recognition operation. The range is from 0 to 10,000ms. This setting corresponds to the recognizer's property. Default = 500ms.| +|`AdaptationOn`|Indicates whether adaptation of the acoustic model is ON (value = `1`) or OFF (value = `0`). The default value is `1` (ON).| +|`PersistedBackgroundAdaptation`|Indicates whether background adaptation is ON (value = `1`) or OFF (value = `0`), and persists the setting in the registry. The default value is `1` (ON).| + + To update a setting for the recognizer, use one of the methods. + + + +## Examples + The following example is part of a console application that outputs the values for a number of the settings defined for the recognizer that supports the en-US locale. The example generates the following output. + +``` +Settings for recognizer MS-1033-80-DESK: + + ResourceUsage is not supported by this recognizer. + ResponseSpeed = 150 + ComplexResponseSpeed = 500 + AdaptationOn = 1 + PersistedBackgroundAdaptation = 1 + +Press any key to exit... +``` + +```csharp + +using System; +using System.Globalization; +using System.Speech.Recognition; + +namespace RecognizerSettings +{ + class Program + { + static readonly string[] settings = new string[] { + "ResourceUsage", + "ResponseSpeed", + "ComplexResponseSpeed", + "AdaptationOn", + "PersistedBackgroundAdaptation" + }; + + static void Main(string[] args) + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) + { + Console.WriteLine("Settings for recognizer {0}:", + recognizer.RecognizerInfo.Name); + Console.WriteLine(); + + foreach (string setting in settings) + { + try + { + object value = recognizer.QueryRecognizerSetting(setting); + Console.WriteLine(" {0,-30} = {1}", setting, value); + } + catch + { + Console.WriteLine(" {0,-30} is not supported by this recognizer.", + setting); + } + } + } + Console.WriteLine(); + + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -3012,35 +3012,35 @@ namespace RecognizerSettings Starts a synchronous speech recognition operation. - . Raised when the recognizer detects input that it can identify as speech. - -- . Raised when input creates an ambiguous match with one of the active grammars. - -- or . Raised when the recognizer finalizes a recognition operation. - - The recognizer does not raise the event when using one of the methods. - - The methods return a object, or `null` if the operation is not successful or the recognizer is not enabled. - - A synchronous recognition operation can fail for the following reasons: - -- Speech is not detected before the timeout intervals expire for the or properties, or for the `initialSilenceTimeout` parameter of the method. - -- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. - - To modify how the recognizer handles the timing of speech or silence with respect to recognition, use the , , , and properties. - - The must have at least one object loaded before performing recognition. To load a speech recognition grammar, use the or method. - - To perform asynchronous recognition, use one of the methods. - + . Raised when the recognizer detects input that it can identify as speech. + +- . Raised when input creates an ambiguous match with one of the active grammars. + +- or . Raised when the recognizer finalizes a recognition operation. + + The recognizer does not raise the event when using one of the methods. + + The methods return a object, or `null` if the operation is not successful or the recognizer is not enabled. + + A synchronous recognition operation can fail for the following reasons: + +- Speech is not detected before the timeout intervals expire for the or properties, or for the `initialSilenceTimeout` parameter of the method. + +- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. + + To modify how the recognizer handles the timing of speech or silence with respect to recognition, use the , , , and properties. + + The must have at least one object loaded before performing recognition. To load a speech recognition grammar, use the or method. + + To perform asynchronous recognition, use one of the methods. + ]]> @@ -3067,83 +3067,83 @@ namespace RecognizerSettings Performs a synchronous speech recognition operation. The recognition result for the input, or if the operation is not successful or the recognizer is not enabled. - . Raised when the recognizer detects input that it can identify as speech. - -- . Raised when input creates an ambiguous match with one of the active grammars. - -- or . Raised when the recognizer finalizes a recognition operation. - - The recognizer does not raise the event when using this method. - - The method returns a object, or `null` if the operation is not successful. - - A synchronous recognition operation can fail for the following reasons: - -- Speech is not detected before the timeout intervals expire for the or properties. - -- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. - - To perform asynchronous recognition, use one of the methods. - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs one recognition operation. - -``` - -using System; -using System.Speech.Recognition; - -namespace SynchronousRecognition -{ - class Program - { - static void Main(string[] args) - { - // Create an in-process speech recognizer for the en-US locale. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Modify the initial silence time-out value. - recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(5); - - // Start synchronous speech recognition. - RecognitionResult result = recognizer.Recognize(); - - if (result != null) - { - Console.WriteLine("Recognized text = {0}", result.Text); - } - else - { - Console.WriteLine("No recognition result available."); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to continue..."); - Console.ReadKey(); - } - } -} -``` - + . Raised when the recognizer detects input that it can identify as speech. + +- . Raised when input creates an ambiguous match with one of the active grammars. + +- or . Raised when the recognizer finalizes a recognition operation. + + The recognizer does not raise the event when using this method. + + The method returns a object, or `null` if the operation is not successful. + + A synchronous recognition operation can fail for the following reasons: + +- Speech is not detected before the timeout intervals expire for the or properties. + +- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. + + To perform asynchronous recognition, use one of the methods. + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs one recognition operation. + +``` + +using System; +using System.Speech.Recognition; + +namespace SynchronousRecognition +{ + class Program + { + static void Main(string[] args) + { + // Create an in-process speech recognizer for the en-US locale. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Modify the initial silence time-out value. + recognizer.InitialSilenceTimeout = TimeSpan.FromSeconds(5); + + // Start synchronous speech recognition. + RecognitionResult result = recognizer.Recognize(); + + if (result != null) + { + Console.WriteLine("Recognized text = {0}", result.Text); + } + else + { + Console.WriteLine("No recognition result available."); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to continue..."); + Console.ReadKey(); + } + } +} +``` + ]]> @@ -3183,79 +3183,79 @@ namespace SynchronousRecognition Performs a synchronous speech recognition operation with a specified initial silence timeout period. The recognition result for the input, or if the operation is not successful or the recognizer is not enabled. - performs a single recognition operation and then terminates. The `initialSilenceTimeout` parameter supersedes the recognizer's property. - - During a call to this method, the recognizer can raise the following events: - -- . Raised when the recognizer detects input that it can identify as speech. - -- . Raised when input creates an ambiguous match with one of the active grammars. - -- or . Raised when the recognizer finalizes a recognition operation. - - The recognizer does not raise the event when using this method. - - The method returns a object, or `null` if the operation is not successful. - - A synchronous recognition operation can fail for the following reasons: - -- Speech is not detected before the timeout intervals expire for the or for the `initialSilenceTimeout` parameter. - -- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. - - To perform asynchronous recognition, use one of the methods. - - - -## Examples - The following example shows part of a console application that demonstrates basic speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs one recognition operation. - -```csharp - -using System; -using System.Speech.Recognition; - -namespace SynchronousRecognition -{ - class Program - { - static void Main(string[] args) - { - // Create an in-process speech recognizer for the en-US locale. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine( - new System.Globalization.CultureInfo("en-US"))) - { - // Create and load a dictation grammar. - recognizer.LoadGrammar(new DictationGrammar()); - - // Configure input to the speech recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start synchronous speech recognition. - RecognitionResult result = recognizer.Recognize(TimeSpan.FromSeconds(5)); - - if (result != null) - { - Console.WriteLine("Recognized text = {0}", result.Text); - } - else - { - Console.WriteLine("No recognition result available."); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to continue..."); - Console.ReadKey(); - } - } -} -``` - + performs a single recognition operation and then terminates. The `initialSilenceTimeout` parameter supersedes the recognizer's property. + + During a call to this method, the recognizer can raise the following events: + +- . Raised when the recognizer detects input that it can identify as speech. + +- . Raised when input creates an ambiguous match with one of the active grammars. + +- or . Raised when the recognizer finalizes a recognition operation. + + The recognizer does not raise the event when using this method. + + The method returns a object, or `null` if the operation is not successful. + + A synchronous recognition operation can fail for the following reasons: + +- Speech is not detected before the timeout intervals expire for the or for the `initialSilenceTimeout` parameter. + +- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. + + To perform asynchronous recognition, use one of the methods. + + + +## Examples + The following example shows part of a console application that demonstrates basic speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs one recognition operation. + +```csharp + +using System; +using System.Speech.Recognition; + +namespace SynchronousRecognition +{ + class Program + { + static void Main(string[] args) + { + // Create an in-process speech recognizer for the en-US locale. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine( + new System.Globalization.CultureInfo("en-US"))) + { + // Create and load a dictation grammar. + recognizer.LoadGrammar(new DictationGrammar()); + + // Configure input to the speech recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start synchronous speech recognition. + RecognitionResult result = recognizer.Recognize(TimeSpan.FromSeconds(5)); + + if (result != null) + { + Console.WriteLine("Recognized text = {0}", result.Text); + } + else + { + Console.WriteLine("No recognition result available."); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to continue..."); + Console.ReadKey(); + } + } +} +``` + ]]> @@ -3278,35 +3278,35 @@ namespace SynchronousRecognition Starts an asynchronous speech recognition operation. - . Raised when the recognizer detects input that it can identify as speech. - -- . Raised when input creates an ambiguous match with one of the active grammars. - -- or . Raised when the recognizer finalizes a recognition operation. - -- . Raised when a operation finishes. - - To retrieve the result of an asynchronous recognition operation, attach an event handler to the recognizer's event. The recognizer raises this event whenever it successfully completes a synchronous or asynchronous recognition operation. If recognition was not successful, the property on object, which you can access in the handler for the event, will be `null`. - - An asynchronous recognition operation can fail for the following reasons: - -- Speech is not detected before the timeout intervals expire for the or properties. - -- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. - -- The must have at least one object loaded before performing recognition. To load a speech recognition grammar, use the or method. - -- To modify how the recognizer handles the timing of speech or silence with respect to recognition, use the , , , and properties. - -- To perform synchronous recognition, use one of the methods. - + . Raised when the recognizer detects input that it can identify as speech. + +- . Raised when input creates an ambiguous match with one of the active grammars. + +- or . Raised when the recognizer finalizes a recognition operation. + +- . Raised when a operation finishes. + + To retrieve the result of an asynchronous recognition operation, attach an event handler to the recognizer's event. The recognizer raises this event whenever it successfully completes a synchronous or asynchronous recognition operation. If recognition was not successful, the property on object, which you can access in the handler for the event, will be `null`. + + An asynchronous recognition operation can fail for the following reasons: + +- Speech is not detected before the timeout intervals expire for the or properties. + +- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. + +- The must have at least one object loaded before performing recognition. To load a speech recognition grammar, use the or method. + +- To modify how the recognizer handles the timing of speech or silence with respect to recognition, use the , , , and properties. + +- To perform synchronous recognition, use one of the methods. + ]]> @@ -3338,212 +3338,212 @@ namespace SynchronousRecognition Performs a single, asynchronous speech recognition operation. - . Raised when the recognizer detects input that it can identify as speech. - -- . Raised when input creates an ambiguous match with one of the active grammars. - -- or . Raised when the recognizer finalizes a recognition operation. - -- . Raised when a operation finishes. - - To retrieve the result of an asynchronous recognition operation, attach an event handler to the recognizer's event. The recognizer raises this event whenever it successfully completes a synchronous or asynchronous recognition operation. If recognition was not successful, the property on object, which you can access in the handler for the event, will be `null`. - - To perform synchronous recognition, use one of the methods. - + . Raised when the recognizer detects input that it can identify as speech. + +- . Raised when input creates an ambiguous match with one of the active grammars. + +- or . Raised when the recognizer finalizes a recognition operation. + +- . Raised when a operation finishes. + + To retrieve the result of an asynchronous recognition operation, attach an event handler to the recognizer's event. The recognizer raises this event whenever it successfully completes a synchronous or asynchronous recognition operation. If recognition was not successful, the property on object, which you can access in the handler for the event, will be `null`. + + To perform synchronous recognition, use one of the methods. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . - -## Examples - The following example shows part of a console application that demonstrates basic asynchronous speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs one asynchronous recognition operation. Event handlers are included to demonstrate the events that the recognizer raises during the operation. - -```csharp -using System; -using System.Globalization; -using System.Speech.Recognition; -using System.Threading; - -namespace AsynchronousRecognition -{ - class Program - { - // Indicate whether asynchronous recognition is complete. - static bool completed; - - static void Main(string[] args) - { - // Create an in-process speech recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - // Create a grammar for choosing cities for a flight. - Choices cities = new Choices(new string[] - { "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); - - GrammarBuilder gb = new GrammarBuilder(); - gb.Append("I want to fly from"); - gb.Append(cities); - gb.Append("to"); - gb.Append(cities); - - // Construct a Grammar object and load it to the recognizer. - Grammar cityChooser = new Grammar(gb); - cityChooser.Name = ("City Chooser"); - recognizer.LoadGrammarAsync(cityChooser); - - // Attach event handlers. - recognizer.SpeechDetected += - new EventHandler( - SpeechDetectedHandler); - recognizer.SpeechHypothesized += - new EventHandler( - SpeechHypothesizedHandler); - recognizer.SpeechRecognitionRejected += - new EventHandler( - SpeechRecognitionRejectedHandler); - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Assign input to the recognizer and start an asynchronous - // recognition operation. - recognizer.SetInputToDefaultAudioDevice(); - - completed = false; - Console.WriteLine("Starting asynchronous recognition..."); - recognizer.RecognizeAsync(); - - // Wait for the operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - Console.WriteLine("Done."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechDetected event. - static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(" In SpeechDetectedHandler:"); - Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); - } - - // Handle the SpeechHypothesized event. - static void SpeechHypothesizedHandler( - object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine(" In SpeechHypothesizedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognitionRejected event. - static void SpeechRecognitionRejectedHandler( - object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" In SpeechRecognizedHandler."); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the RecognizeCompleted event. - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - Console.WriteLine(" In RecognizeCompletedHandler."); - - if (e.Error != null) - { - Console.WriteLine( - " - Error occurred during recognition: {0}", e.Error); - return; - } - if (e.InitialSilenceTimeout || e.BabbleTimeout) - { - Console.WriteLine( - " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", - e.BabbleTimeout, e.InitialSilenceTimeout); - return; - } - if (e.InputStreamEnded) - { - Console.WriteLine( - " - AudioPosition = {0}; InputStreamEnded = {1}", - e.AudioPosition, e.InputStreamEnded); - } - if (e.Result != null) - { - Console.WriteLine( - " - Grammar = {0}; Text = {1}; Confidence = {2}", - e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); - Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); - } - else - { - Console.WriteLine(" - No result."); - } - - completed = true; - } - } + +## Examples + The following example shows part of a console application that demonstrates basic asynchronous speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs one asynchronous recognition operation. Event handlers are included to demonstrate the events that the recognizer raises during the operation. + +```csharp +using System; +using System.Globalization; +using System.Speech.Recognition; +using System.Threading; + +namespace AsynchronousRecognition +{ + class Program + { + // Indicate whether asynchronous recognition is complete. + static bool completed; + + static void Main(string[] args) + { + // Create an in-process speech recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + // Create a grammar for choosing cities for a flight. + Choices cities = new Choices(new string[] + { "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); + + GrammarBuilder gb = new GrammarBuilder(); + gb.Append("I want to fly from"); + gb.Append(cities); + gb.Append("to"); + gb.Append(cities); + + // Construct a Grammar object and load it to the recognizer. + Grammar cityChooser = new Grammar(gb); + cityChooser.Name = ("City Chooser"); + recognizer.LoadGrammarAsync(cityChooser); + + // Attach event handlers. + recognizer.SpeechDetected += + new EventHandler( + SpeechDetectedHandler); + recognizer.SpeechHypothesized += + new EventHandler( + SpeechHypothesizedHandler); + recognizer.SpeechRecognitionRejected += + new EventHandler( + SpeechRecognitionRejectedHandler); + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Assign input to the recognizer and start an asynchronous + // recognition operation. + recognizer.SetInputToDefaultAudioDevice(); + + completed = false; + Console.WriteLine("Starting asynchronous recognition..."); + recognizer.RecognizeAsync(); + + // Wait for the operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + Console.WriteLine("Done."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechDetected event. + static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(" In SpeechDetectedHandler:"); + Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); + } + + // Handle the SpeechHypothesized event. + static void SpeechHypothesizedHandler( + object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine(" In SpeechHypothesizedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognitionRejected event. + static void SpeechRecognitionRejectedHandler( + object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" In SpeechRecognizedHandler."); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the RecognizeCompleted event. + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + Console.WriteLine(" In RecognizeCompletedHandler."); + + if (e.Error != null) + { + Console.WriteLine( + " - Error occurred during recognition: {0}", e.Error); + return; + } + if (e.InitialSilenceTimeout || e.BabbleTimeout) + { + Console.WriteLine( + " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", + e.BabbleTimeout, e.InitialSilenceTimeout); + return; + } + if (e.InputStreamEnded) + { + Console.WriteLine( + " - AudioPosition = {0}; InputStreamEnded = {1}", + e.AudioPosition, e.InputStreamEnded); + } + if (e.Result != null) + { + Console.WriteLine( + " - Grammar = {0}; Text = {1}; Confidence = {2}", + e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); + Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); + } + else + { + Console.WriteLine(" - No result."); + } + + completed = true; + } + } } ``` @@ -3586,225 +3586,225 @@ namespace AsynchronousRecognition Indicates whether to perform one or multiple recognition operations. Performs one or more asynchronous speech recognition operations. - , the recognizer continues performing asynchronous recognition operations until the or method is called. - - During a call to this method, the recognizer can raise the following events: - -- . Raised when the recognizer detects input that it can identify as speech. - -- . Raised when input creates an ambiguous match with one of the active grammars. - -- or . Raised when the recognizer finalizes a recognition operation. - -- . Raised when a operation finishes. - - To retrieve the result of an asynchronous recognition operation, attach an event handler to the recognizer's event. The recognizer raises this event whenever it successfully completes a synchronous or asynchronous recognition operation. If recognition was not successful, the property on object, which you can access in the handler for the event, will be `null`. - - An asynchronous recognition operation can fail for the following reasons: - -- Speech is not detected before the timeout intervals expire for the or properties. - -- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. - - To perform synchronous recognition, use one of the methods. - - - -## Examples - The following example shows part of a console application that demonstrates basic asynchronous speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs multiple asynchronous recognition operations. The asynchronous operations are cancelled after 30 seconds. Event handlers are included to demonstrate the events that the recognizer raises during the operation. - -```csharp -using System; -using System.Globalization; -using System.Speech.Recognition; -using System.Threading; - -namespace AsynchronousRecognition -{ - class Program - { - // Indicate whether asynchronous recognition is complete. - static bool completed; - - static void Main(string[] args) - { - // Create an in-process speech recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - // Create a grammar for choosing cities for a flight. - Choices cities = new Choices(new string[] { "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); - - GrammarBuilder gb = new GrammarBuilder(); - gb.Append("I want to fly from"); - gb.Append(cities); - gb.Append("to"); - gb.Append(cities); - - // Construct a Grammar object and load it to the recognizer. - Grammar cityChooser = new Grammar(gb); - cityChooser.Name = ("City Chooser"); - recognizer.LoadGrammarAsync(cityChooser); - - // Attach event handlers. - recognizer.SpeechDetected += - new EventHandler( - SpeechDetectedHandler); - recognizer.SpeechHypothesized += - new EventHandler( - SpeechHypothesizedHandler); - recognizer.SpeechRecognitionRejected += - new EventHandler( - SpeechRecognitionRejectedHandler); - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Assign input to the recognizer and start asynchronous - // recognition. - recognizer.SetInputToDefaultAudioDevice(); - - completed = false; - Console.WriteLine("Starting asynchronous recognition..."); - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Wait 30 seconds, and then cancel asynchronous recognition. - Thread.Sleep(TimeSpan.FromSeconds(30)); - recognizer.RecognizeAsyncCancel(); - - // Wait for the operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - Console.WriteLine("Done."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechDetected event. - static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(" In SpeechDetectedHandler:"); - Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); - } - - // Handle the SpeechHypothesized event. - static void SpeechHypothesizedHandler( - object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine(" In SpeechHypothesizedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognitionRejected event. - static void SpeechRecognitionRejectedHandler( - object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" In SpeechRecognizedHandler."); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the RecognizeCompleted event. - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - Console.WriteLine(" In RecognizeCompletedHandler."); - - if (e.Error != null) - { - Console.WriteLine( - " - Error occurred during recognition: {0}", e.Error); - return; - } - if (e.InitialSilenceTimeout || e.BabbleTimeout) - { - Console.WriteLine( - " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", - e.BabbleTimeout, e.InitialSilenceTimeout); - return; - } - if (e.InputStreamEnded) - { - Console.WriteLine( - " - AudioPosition = {0}; InputStreamEnded = {1}", - e.AudioPosition, e.InputStreamEnded); - } - if (e.Result != null) - { - Console.WriteLine( - " - Grammar = {0}; Text = {1}; Confidence = {2}", - e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); - Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); - } - else - { - Console.WriteLine(" - No result."); - } - - completed = true; - } - } -} - -``` - + , the recognizer continues performing asynchronous recognition operations until the or method is called. + + During a call to this method, the recognizer can raise the following events: + +- . Raised when the recognizer detects input that it can identify as speech. + +- . Raised when input creates an ambiguous match with one of the active grammars. + +- or . Raised when the recognizer finalizes a recognition operation. + +- . Raised when a operation finishes. + + To retrieve the result of an asynchronous recognition operation, attach an event handler to the recognizer's event. The recognizer raises this event whenever it successfully completes a synchronous or asynchronous recognition operation. If recognition was not successful, the property on object, which you can access in the handler for the event, will be `null`. + + An asynchronous recognition operation can fail for the following reasons: + +- Speech is not detected before the timeout intervals expire for the or properties. + +- The recognition engine detects speech but finds no matches in any of its loaded and enabled objects. + + To perform synchronous recognition, use one of the methods. + + + +## Examples + The following example shows part of a console application that demonstrates basic asynchronous speech recognition. The example creates a , loads it into an in-process speech recognizer, and performs multiple asynchronous recognition operations. The asynchronous operations are cancelled after 30 seconds. Event handlers are included to demonstrate the events that the recognizer raises during the operation. + +```csharp +using System; +using System.Globalization; +using System.Speech.Recognition; +using System.Threading; + +namespace AsynchronousRecognition +{ + class Program + { + // Indicate whether asynchronous recognition is complete. + static bool completed; + + static void Main(string[] args) + { + // Create an in-process speech recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + // Create a grammar for choosing cities for a flight. + Choices cities = new Choices(new string[] { "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); + + GrammarBuilder gb = new GrammarBuilder(); + gb.Append("I want to fly from"); + gb.Append(cities); + gb.Append("to"); + gb.Append(cities); + + // Construct a Grammar object and load it to the recognizer. + Grammar cityChooser = new Grammar(gb); + cityChooser.Name = ("City Chooser"); + recognizer.LoadGrammarAsync(cityChooser); + + // Attach event handlers. + recognizer.SpeechDetected += + new EventHandler( + SpeechDetectedHandler); + recognizer.SpeechHypothesized += + new EventHandler( + SpeechHypothesizedHandler); + recognizer.SpeechRecognitionRejected += + new EventHandler( + SpeechRecognitionRejectedHandler); + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Assign input to the recognizer and start asynchronous + // recognition. + recognizer.SetInputToDefaultAudioDevice(); + + completed = false; + Console.WriteLine("Starting asynchronous recognition..."); + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Wait 30 seconds, and then cancel asynchronous recognition. + Thread.Sleep(TimeSpan.FromSeconds(30)); + recognizer.RecognizeAsyncCancel(); + + // Wait for the operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + Console.WriteLine("Done."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechDetected event. + static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(" In SpeechDetectedHandler:"); + Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); + } + + // Handle the SpeechHypothesized event. + static void SpeechHypothesizedHandler( + object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine(" In SpeechHypothesizedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognitionRejected event. + static void SpeechRecognitionRejectedHandler( + object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" In SpeechRecognizedHandler."); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the RecognizeCompleted event. + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + Console.WriteLine(" In RecognizeCompletedHandler."); + + if (e.Error != null) + { + Console.WriteLine( + " - Error occurred during recognition: {0}", e.Error); + return; + } + if (e.InitialSilenceTimeout || e.BabbleTimeout) + { + Console.WriteLine( + " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", + e.BabbleTimeout, e.InitialSilenceTimeout); + return; + } + if (e.InputStreamEnded) + { + Console.WriteLine( + " - AudioPosition = {0}; InputStreamEnded = {1}", + e.AudioPosition, e.InputStreamEnded); + } + if (e.Result != null) + { + Console.WriteLine( + " - Grammar = {0}; Text = {1}; Confidence = {2}", + e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); + Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); + } + else + { + Console.WriteLine(" - No result."); + } + + completed = true; + } + } +} + +``` + ]]> @@ -3841,202 +3841,202 @@ namespace AsynchronousRecognition Terminates asynchronous recognition without waiting for the current recognition operation to complete. - or event when an asynchronous operation is canceled, and sets the property of the to `true`. This method cancels asynchronous operations initiated by the and methods. - - To stop asynchronous recognition without truncating the input, use the method. - - - -## Examples - The following example shows part of a console application that demonstrates the use of the method. The example creates and loads a speech recognition grammar, initiates a continuing asynchronous recognition operation, and then pauses 2 seconds before it cancels the operation. The recognizer receives input from the file, c:\temp\audioinput\sample.wav. Event handlers are included to demonstrate the events that the recognizer raises during the operation. - -```csharp - -using System; -using System.Globalization; -using System.Speech.Recognition; -using System.Threading; - -namespace AsynchronousRecognition -{ - class Program - { - // Indicate whether asynchronous recognition is complete. - static bool completed; - - static void Main(string[] args) - { - // Create an in-process speech recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - // Create and load a dictation grammar. - Grammar dictation = new DictationGrammar(); - dictation.Name = "Dictation Grammar"; - - recognizer.LoadGrammar(dictation); - - // Attach event handlers. - recognizer.SpeechDetected += - new EventHandler( - SpeechDetectedHandler); - recognizer.SpeechHypothesized += - new EventHandler( - SpeechHypothesizedHandler); - recognizer.SpeechRecognitionRejected += - new EventHandler( - SpeechRecognitionRejectedHandler); - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Begin asynchronous recognition from pre-recorded input. - recognizer.SetInputToWaveFile(@"c:\temp\audioinput\sample.wav"); - - completed = false; - Console.WriteLine("Begin continuing asynchronous recognition..."); - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Wait 2 seconds and then cancel the recognition operation. - Thread.Sleep(TimeSpan.FromSeconds(2)); - recognizer.RecognizeAsyncCancel(); - - // Wait for the operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - Console.WriteLine("Done."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechDetected event. - static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(" In SpeechDetectedHandler:"); - Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); - } - - // Handle the SpeechHypothesized event. - static void SpeechHypothesizedHandler( - object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine(" In SpeechHypothesizedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognitionRejected event. - static void SpeechRecognitionRejectedHandler( - object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" In SpeechRecognizedHandler."); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the RecognizeCompleted event. - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - Console.WriteLine(" In RecognizeCompletedHandler."); - - if (e.Error != null) - { - Console.WriteLine( - " - Error occurred during recognition: {0}", e.Error); - return; - } - if (e.Cancelled) - { - Console.WriteLine(" - asynchronous operation canceled."); - } - if (e.InitialSilenceTimeout || e.BabbleTimeout) - { - Console.WriteLine( - " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", - e.BabbleTimeout, e.InitialSilenceTimeout); - return; - } - if (e.InputStreamEnded) - { - Console.WriteLine( - " - AudioPosition = {0}; InputStreamEnded = {1}", - e.AudioPosition, e.InputStreamEnded); - } - if (e.Result != null) - { - Console.WriteLine( - " - Grammar = {0}; Text = {1}; Confidence = {2}", - e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); - } - else - { - Console.WriteLine(" - No result."); - } - - completed = true; - } - } -} -``` - + or event when an asynchronous operation is canceled, and sets the property of the to `true`. This method cancels asynchronous operations initiated by the and methods. + + To stop asynchronous recognition without truncating the input, use the method. + + + +## Examples + The following example shows part of a console application that demonstrates the use of the method. The example creates and loads a speech recognition grammar, initiates a continuing asynchronous recognition operation, and then pauses 2 seconds before it cancels the operation. The recognizer receives input from the file, c:\temp\audioinput\sample.wav. Event handlers are included to demonstrate the events that the recognizer raises during the operation. + +```csharp + +using System; +using System.Globalization; +using System.Speech.Recognition; +using System.Threading; + +namespace AsynchronousRecognition +{ + class Program + { + // Indicate whether asynchronous recognition is complete. + static bool completed; + + static void Main(string[] args) + { + // Create an in-process speech recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + // Create and load a dictation grammar. + Grammar dictation = new DictationGrammar(); + dictation.Name = "Dictation Grammar"; + + recognizer.LoadGrammar(dictation); + + // Attach event handlers. + recognizer.SpeechDetected += + new EventHandler( + SpeechDetectedHandler); + recognizer.SpeechHypothesized += + new EventHandler( + SpeechHypothesizedHandler); + recognizer.SpeechRecognitionRejected += + new EventHandler( + SpeechRecognitionRejectedHandler); + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Begin asynchronous recognition from pre-recorded input. + recognizer.SetInputToWaveFile(@"c:\temp\audioinput\sample.wav"); + + completed = false; + Console.WriteLine("Begin continuing asynchronous recognition..."); + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Wait 2 seconds and then cancel the recognition operation. + Thread.Sleep(TimeSpan.FromSeconds(2)); + recognizer.RecognizeAsyncCancel(); + + // Wait for the operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + Console.WriteLine("Done."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechDetected event. + static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(" In SpeechDetectedHandler:"); + Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); + } + + // Handle the SpeechHypothesized event. + static void SpeechHypothesizedHandler( + object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine(" In SpeechHypothesizedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognitionRejected event. + static void SpeechRecognitionRejectedHandler( + object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" In SpeechRecognizedHandler."); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the RecognizeCompleted event. + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + Console.WriteLine(" In RecognizeCompletedHandler."); + + if (e.Error != null) + { + Console.WriteLine( + " - Error occurred during recognition: {0}", e.Error); + return; + } + if (e.Cancelled) + { + Console.WriteLine(" - asynchronous operation canceled."); + } + if (e.InitialSilenceTimeout || e.BabbleTimeout) + { + Console.WriteLine( + " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", + e.BabbleTimeout, e.InitialSilenceTimeout); + return; + } + if (e.InputStreamEnded) + { + Console.WriteLine( + " - AudioPosition = {0}; InputStreamEnded = {1}", + e.AudioPosition, e.InputStreamEnded); + } + if (e.Result != null) + { + Console.WriteLine( + " - Grammar = {0}; Text = {1}; Confidence = {2}", + e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); + } + else + { + Console.WriteLine(" - No result."); + } + + completed = true; + } + } +} +``` + ]]> @@ -4067,203 +4067,203 @@ namespace AsynchronousRecognition Stops asynchronous recognition after the current recognition operation completes. - or event when an asynchronous operation is stopped, and sets the property of the to `true`. This method stops asynchronous operations initiated by the and methods. - - To immediately cancel asynchronous recognition with only the existing input, use the method. - - - -## Examples - The following example shows part of a console application that demonstrates the use of the method. The example creates and loads a speech recognition grammar, initiates a continuing asynchronous recognition operation, and then pauses 2 seconds before it stops the operation. The recognizer receives input from the file, c:\temp\audioinput\sample.wav. Event handlers are included to demonstrate the events that the recognizer raises during the operation. - -```csharp - -using System; -using System.Globalization; -using System.Speech.Recognition; -using System.Threading; - -namespace AsynchronousRecognition -{ - class Program - { - // Indicate whether asynchronous recognition is complete. - static bool completed; - - static void Main(string[] args) - { - // Create an in-process speech recognizer. - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - // Create and load a dictation grammar. - Grammar dictation = new DictationGrammar(); - dictation.Name = "Dictation Grammar"; - - recognizer.LoadGrammar(dictation); - - // Attach event handlers. - recognizer.SpeechDetected += - new EventHandler( - SpeechDetectedHandler); - recognizer.SpeechHypothesized += - new EventHandler( - SpeechHypothesizedHandler); - recognizer.SpeechRecognitionRejected += - new EventHandler( - SpeechRecognitionRejectedHandler); - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Begin asynchronous recognition from pre-recorded input. - recognizer.SetInputToWaveFile(@"c:\temp\audioinput\sample.wav"); - - completed = false; - Console.WriteLine("Begin continuing asynchronous recognition..."); - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Wait 2 seconds and then stop the recognition operation. - Thread.Sleep(TimeSpan.FromSeconds(2)); - recognizer.RecognizeAsyncStop(); - - // Wait for the operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - Console.WriteLine("Done."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechDetected event. - static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(" In SpeechDetectedHandler:"); - Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); - } - - // Handle the SpeechHypothesized event. - static void SpeechHypothesizedHandler( - object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine(" In SpeechHypothesizedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognitionRejected event. - static void SpeechRecognitionRejectedHandler( - object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" In SpeechRecognizedHandler."); - - string grammarName = ""; - string resultText = ""; - if (e.Result != null) - { - if (e.Result.Grammar != null) - { - grammarName = e.Result.Grammar.Name; - } - resultText = e.Result.Text; - } - - Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", - grammarName, resultText); - } - - // Handle the RecognizeCompleted event. - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - Console.WriteLine(" In RecognizeCompletedHandler."); - - if (e.Error != null) - { - Console.WriteLine( - " - Error occurred during recognition: {0}", e.Error); - return; - } - if (e.Cancelled) - { - Console.WriteLine(" - asynchronous operation canceled."); - } - if (e.InitialSilenceTimeout || e.BabbleTimeout) - { - Console.WriteLine( - " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", - e.BabbleTimeout, e.InitialSilenceTimeout); - return; - } - if (e.InputStreamEnded) - { - Console.WriteLine( - " - AudioPosition = {0}; InputStreamEnded = {1}", - e.AudioPosition, e.InputStreamEnded); - } - if (e.Result != null) - { - Console.WriteLine( - " - Grammar = {0}; Text = {1}; Confidence = {2}", - e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); - } - else - { - Console.WriteLine(" - No result."); - } - - completed = true; - } - } -} - -``` - + or event when an asynchronous operation is stopped, and sets the property of the to `true`. This method stops asynchronous operations initiated by the and methods. + + To immediately cancel asynchronous recognition with only the existing input, use the method. + + + +## Examples + The following example shows part of a console application that demonstrates the use of the method. The example creates and loads a speech recognition grammar, initiates a continuing asynchronous recognition operation, and then pauses 2 seconds before it stops the operation. The recognizer receives input from the file, c:\temp\audioinput\sample.wav. Event handlers are included to demonstrate the events that the recognizer raises during the operation. + +```csharp + +using System; +using System.Globalization; +using System.Speech.Recognition; +using System.Threading; + +namespace AsynchronousRecognition +{ + class Program + { + // Indicate whether asynchronous recognition is complete. + static bool completed; + + static void Main(string[] args) + { + // Create an in-process speech recognizer. + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + // Create and load a dictation grammar. + Grammar dictation = new DictationGrammar(); + dictation.Name = "Dictation Grammar"; + + recognizer.LoadGrammar(dictation); + + // Attach event handlers. + recognizer.SpeechDetected += + new EventHandler( + SpeechDetectedHandler); + recognizer.SpeechHypothesized += + new EventHandler( + SpeechHypothesizedHandler); + recognizer.SpeechRecognitionRejected += + new EventHandler( + SpeechRecognitionRejectedHandler); + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Begin asynchronous recognition from pre-recorded input. + recognizer.SetInputToWaveFile(@"c:\temp\audioinput\sample.wav"); + + completed = false; + Console.WriteLine("Begin continuing asynchronous recognition..."); + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Wait 2 seconds and then stop the recognition operation. + Thread.Sleep(TimeSpan.FromSeconds(2)); + recognizer.RecognizeAsyncStop(); + + // Wait for the operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + Console.WriteLine("Done."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechDetected event. + static void SpeechDetectedHandler(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(" In SpeechDetectedHandler:"); + Console.WriteLine(" - AudioPosition = {0}", e.AudioPosition); + } + + // Handle the SpeechHypothesized event. + static void SpeechHypothesizedHandler( + object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine(" In SpeechHypothesizedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognitionRejected event. + static void SpeechRecognitionRejectedHandler( + object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" In SpeechRecognitionRejectedHandler:"); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" In SpeechRecognizedHandler."); + + string grammarName = ""; + string resultText = ""; + if (e.Result != null) + { + if (e.Result.Grammar != null) + { + grammarName = e.Result.Grammar.Name; + } + resultText = e.Result.Text; + } + + Console.WriteLine(" - Grammar Name = {0}; Result Text = {1}", + grammarName, resultText); + } + + // Handle the RecognizeCompleted event. + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + Console.WriteLine(" In RecognizeCompletedHandler."); + + if (e.Error != null) + { + Console.WriteLine( + " - Error occurred during recognition: {0}", e.Error); + return; + } + if (e.Cancelled) + { + Console.WriteLine(" - asynchronous operation canceled."); + } + if (e.InitialSilenceTimeout || e.BabbleTimeout) + { + Console.WriteLine( + " - BabbleTimeout = {0}; InitialSilenceTimeout = {1}", + e.BabbleTimeout, e.InitialSilenceTimeout); + return; + } + if (e.InputStreamEnded) + { + Console.WriteLine( + " - AudioPosition = {0}; InputStreamEnded = {1}", + e.AudioPosition, e.InputStreamEnded); + } + if (e.Result != null) + { + Console.WriteLine( + " - Grammar = {0}; Text = {1}; Confidence = {2}", + e.Result.Grammar.Name, e.Result.Text, e.Result.Confidence); + } + else + { + Console.WriteLine(" - No result."); + } + + completed = true; + } + } +} + +``` + ]]> @@ -4294,131 +4294,131 @@ namespace AsynchronousRecognition Raised when the finalizes an asynchronous recognition operation. - object's method initiates an asynchronous recognition operation. When the recognizer finalizes the asynchronous operation, it raises this event. - - Using the handler for the event, you can access the in the object. If recognition was not successful, will be `null`. To determine whether a timeout or an interruption in audio input caused recognition to fail, you can access the properties for , , or . - - See the class for more information. - - To obtain details on the best rejected recognition candidates, attach a handler for the event. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example recognizes phrases such as "Display the list of artists in the jazz category" or "Display albums gospel". The example uses a handler for the event to display information about the results of recognition in the console. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize an in-process speech recognition engine. - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine()) - { - - // Create lists of alternative choices. - Choices listTypes = new Choices(new string[] { "albums", "artists" }); - Choices genres = new Choices(new string[] { - "blues", "classical", "gospel", "jazz", "rock" }); - - // Create a GrammarBuilder object and assemble the grammar components. - GrammarBuilder mediaMenu = new GrammarBuilder("Display"); - mediaMenu.Append("the list of", 0, 1); - mediaMenu.Append(listTypes); - mediaMenu.Append("in the", 0, 1); - mediaMenu.Append(genres); - mediaMenu.Append("category.", 0, 1); - - // Build a Grammar object from the GrammarBuilder. - Grammar mediaMenuGrammar = new Grammar(mediaMenu); - mediaMenuGrammar.Name = "Media Chooser"; - - // Attach event handlers. - recognizer.RecognizeCompleted += - new EventHandler(recognizer_RecognizeCompleted); - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(mediaMenuGrammar); - - // Set the input to the recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous, continuous recognition. - recognizer.RecognizeAsync(); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the RecognizeCompleted event. - static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e) - { - if (e.Error != null) - { - Console.WriteLine( - "RecognizeCompleted, error occurred during recognition: {0}", e.Error); - return; - } - - if (e.InitialSilenceTimeout || e.BabbleTimeout) - { - Console.WriteLine( - "RecognizeCompleted: BabbleTimeout({0}), InitialSilenceTimeout({1}).", - e.BabbleTimeout, e.InitialSilenceTimeout); - return; - } - - if (e.InputStreamEnded) - { - Console.WriteLine( - "RecognizeCompleted: AudioPosition({0}), InputStreamEnded({1}).", - e.AudioPosition, e.InputStreamEnded); - } - - if (e.Result != null) - { - Console.WriteLine("RecognizeCompleted:"); - Console.WriteLine(" Grammar: " + e.Result.Grammar.Name); - Console.WriteLine(" Recognized text: " + e.Result.Text); - Console.WriteLine(" Confidence score: " + e.Result.Confidence); - Console.WriteLine(" Audio position: " + e.AudioPosition); - } - - else - { - Console.WriteLine("RecognizeCompleted: No result."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - } -} - -``` - + object's method initiates an asynchronous recognition operation. When the recognizer finalizes the asynchronous operation, it raises this event. + + Using the handler for the event, you can access the in the object. If recognition was not successful, will be `null`. To determine whether a timeout or an interruption in audio input caused recognition to fail, you can access the properties for , , or . + + See the class for more information. + + To obtain details on the best rejected recognition candidates, attach a handler for the event. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example recognizes phrases such as "Display the list of artists in the jazz category" or "Display albums gospel". The example uses a handler for the event to display information about the results of recognition in the console. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize an in-process speech recognition engine. + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine()) + { + + // Create lists of alternative choices. + Choices listTypes = new Choices(new string[] { "albums", "artists" }); + Choices genres = new Choices(new string[] { + "blues", "classical", "gospel", "jazz", "rock" }); + + // Create a GrammarBuilder object and assemble the grammar components. + GrammarBuilder mediaMenu = new GrammarBuilder("Display"); + mediaMenu.Append("the list of", 0, 1); + mediaMenu.Append(listTypes); + mediaMenu.Append("in the", 0, 1); + mediaMenu.Append(genres); + mediaMenu.Append("category.", 0, 1); + + // Build a Grammar object from the GrammarBuilder. + Grammar mediaMenuGrammar = new Grammar(mediaMenu); + mediaMenuGrammar.Name = "Media Chooser"; + + // Attach event handlers. + recognizer.RecognizeCompleted += + new EventHandler(recognizer_RecognizeCompleted); + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(mediaMenuGrammar); + + // Set the input to the recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous, continuous recognition. + recognizer.RecognizeAsync(); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the RecognizeCompleted event. + static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e) + { + if (e.Error != null) + { + Console.WriteLine( + "RecognizeCompleted, error occurred during recognition: {0}", e.Error); + return; + } + + if (e.InitialSilenceTimeout || e.BabbleTimeout) + { + Console.WriteLine( + "RecognizeCompleted: BabbleTimeout({0}), InitialSilenceTimeout({1}).", + e.BabbleTimeout, e.InitialSilenceTimeout); + return; + } + + if (e.InputStreamEnded) + { + Console.WriteLine( + "RecognizeCompleted: AudioPosition({0}), InputStreamEnded({1}).", + e.AudioPosition, e.InputStreamEnded); + } + + if (e.Result != null) + { + Console.WriteLine("RecognizeCompleted:"); + Console.WriteLine(" Grammar: " + e.Result.Grammar.Name); + Console.WriteLine(" Recognized text: " + e.Result.Text); + Console.WriteLine(" Confidence score: " + e.Result.Confidence); + Console.WriteLine(" Audio position: " + e.AudioPosition); + } + + else + { + Console.WriteLine("RecognizeCompleted: No result."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + } +} + +``` + ]]> @@ -4447,13 +4447,13 @@ namespace SampleRecognition Gets the current location of the in the audio input that it is processing. The position of the recognizer in the audio input that it is processing. - property references the object's position within its audio input. By contrast, the property references the input device's position in its generated audio stream. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. - + property references the object's position within its audio input. By contrast, the property references the input device's position in its generated audio stream. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. + ]]> @@ -4480,43 +4480,43 @@ namespace SampleRecognition Gets information about the current instance of . Information about the current speech recognizer. - method. - - - -## Examples - The following example gets a partial list of data for the current in-process speech recognition engine. For more information, see . - -``` -using System; -using System.Speech.Recognition; - -namespace RecognitionEngine -{ - class Program - { - static void Main(string[] args) - { - using (SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine()) - { - Console.WriteLine("Information for the current speech recognition engine:"); - Console.WriteLine(" Name: {0}", recognizer.RecognizerInfo.Name); - Console.WriteLine(" Culture: {0}", recognizer.RecognizerInfo.Culture.ToString()); - Console.WriteLine(" Description: {0}", recognizer.RecognizerInfo.Description); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + method. + + + +## Examples + The following example gets a partial list of data for the current in-process speech recognition engine. For more information, see . + +``` +using System; +using System.Speech.Recognition; + +namespace RecognitionEngine +{ + class Program + { + static void Main(string[] args) + { + using (SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine()) + { + Console.WriteLine("Information for the current speech recognition engine:"); + Console.WriteLine(" Name: {0}", recognizer.RecognizerInfo.Name); + Console.WriteLine(" Culture: {0}", recognizer.RecognizerInfo.Culture.ToString()); + Console.WriteLine(" Description: {0}", recognizer.RecognizerInfo.Description); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -4544,124 +4544,124 @@ namespace RecognitionEngine Raised when a running pauses to accept modifications. - to pause a running instance of before modifying its settings or its objects. The raises this event when it is ready to accept modifications. - - For example, while the is paused, you can load, unload, enable, and disable objects, and modify values for the , , and properties. For more information, see the method. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. - - At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. - -``` -using System; -using System.Speech.Recognition; -using System.Collections.Generic; -using System.Threading; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognitionEngine recognizer; - public static void Main(string[] args) - { - - // Initialize an in-process speech recognition engine and configure its input. - using (recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) - { - recognizer.SetInputToDefaultAudioDevice(); - - // Create the first grammar - Farm. - Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); - GrammarBuilder farm = new GrammarBuilder(animals); - Grammar farmAnimals = new Grammar(farm); - farmAnimals.Name = "Farm"; - - // Create the second grammar - Fruit. - Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); - GrammarBuilder favorite = new GrammarBuilder(fruit); - Grammar favoriteFruit = new Grammar(favorite); - favoriteFruit.Name = "Fruit"; - - // Attach event handlers. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.RecognizerUpdateReached += - new EventHandler(recognizer_RecognizerUpdateReached); - recognizer.SpeechRecognitionRejected += - new EventHandler(recognizer_SpeechRecognitionRejected); - - // Load the Farm grammar. - recognizer.LoadGrammar(farmAnimals); - - // Start asynchronous, continuous recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - Console.WriteLine("Starting asynchronous, continuous recognition"); - Console.WriteLine(" Farm grammar is loaded and enabled."); - - // Pause to recognize farm animals. - Thread.Sleep(7000); - Console.WriteLine(); - - // Request an update and load the Fruit grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.LoadGrammarAsync(favoriteFruit); - Thread.Sleep(7000); - - // Request an update and unload the Farm grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.UnloadGrammar(farmAnimals); - Thread.Sleep(7000); - } - - // Keep the console window open. - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // At the update, get the names and enabled status of the currently loaded grammars. - public static void recognizer_RecognizerUpdateReached( - object sender, RecognizerUpdateReachedEventArgs e) - { - Console.WriteLine(); - Console.WriteLine("Update reached:"); - Thread.Sleep(1000); - - string qualifier; - List grammars = new List(recognizer.Grammars); - foreach (Grammar g in grammars) - { - qualifier = (g.Enabled) ? "enabled" : "disabled"; - Console.WriteLine(" {0} grammar is loaded and {1}.", - g.Name, qualifier); - } - } - - // Write the text of the recognized phrase to the console. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" Speech recognized: " + e.Result.Text); - } - - // Write a message to the console when recognition fails. - static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" Recognition attempt failed"); - } - } -} - -``` - + to pause a running instance of before modifying its settings or its objects. The raises this event when it is ready to accept modifications. + + For example, while the is paused, you can load, unload, enable, and disable objects, and modify values for the , , and properties. For more information, see the method. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. + + At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. + +``` +using System; +using System.Speech.Recognition; +using System.Collections.Generic; +using System.Threading; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognitionEngine recognizer; + public static void Main(string[] args) + { + + // Initialize an in-process speech recognition engine and configure its input. + using (recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) + { + recognizer.SetInputToDefaultAudioDevice(); + + // Create the first grammar - Farm. + Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); + GrammarBuilder farm = new GrammarBuilder(animals); + Grammar farmAnimals = new Grammar(farm); + farmAnimals.Name = "Farm"; + + // Create the second grammar - Fruit. + Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); + GrammarBuilder favorite = new GrammarBuilder(fruit); + Grammar favoriteFruit = new Grammar(favorite); + favoriteFruit.Name = "Fruit"; + + // Attach event handlers. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.RecognizerUpdateReached += + new EventHandler(recognizer_RecognizerUpdateReached); + recognizer.SpeechRecognitionRejected += + new EventHandler(recognizer_SpeechRecognitionRejected); + + // Load the Farm grammar. + recognizer.LoadGrammar(farmAnimals); + + // Start asynchronous, continuous recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + Console.WriteLine("Starting asynchronous, continuous recognition"); + Console.WriteLine(" Farm grammar is loaded and enabled."); + + // Pause to recognize farm animals. + Thread.Sleep(7000); + Console.WriteLine(); + + // Request an update and load the Fruit grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.LoadGrammarAsync(favoriteFruit); + Thread.Sleep(7000); + + // Request an update and unload the Farm grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.UnloadGrammar(farmAnimals); + Thread.Sleep(7000); + } + + // Keep the console window open. + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // At the update, get the names and enabled status of the currently loaded grammars. + public static void recognizer_RecognizerUpdateReached( + object sender, RecognizerUpdateReachedEventArgs e) + { + Console.WriteLine(); + Console.WriteLine("Update reached:"); + Thread.Sleep(1000); + + string qualifier; + List grammars = new List(recognizer.Grammars); + foreach (Grammar g in grammars) + { + qualifier = (g.Enabled) ? "enabled" : "disabled"; + Console.WriteLine(" {0} grammar is loaded and {1}.", + g.Name, qualifier); + } + } + + // Write the text of the recognized phrase to the console. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" Speech recognized: " + e.Result.Text); + } + + // Write a message to the console when recognition fails. + static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" Recognition attempt failed"); + } + } +} + +``` + ]]> @@ -4677,30 +4677,30 @@ namespace SampleRecognition Requests that the recognizer pauses to update its state. - event to synchronize your application behavior with the state of the recognizer. - - When this method is called, the recognizer pauses or completes asynchronous operations and generates a event. A event handler can then modify the state of the recognizer in between recognition operations. When handling events, the recognizer pauses until the event handler returns. - + event to synchronize your application behavior with the state of the recognizer. + + When this method is called, the recognizer pauses or completes asynchronous operations and generates a event. A event handler can then modify the state of the recognizer in between recognition operations. When handling events, the recognizer pauses until the event handler returns. + > [!NOTE] -> If the input to the recognizer is changed before the recognizer raises the event, the request is discarded. - - When this method is called: - -- If the recognizer is not processing input, the recognizer immediately generates the event. - -- If the recognizer is processing input that consists of silence or background noise, the recognizer pauses the recognition operation and generates the event. - -- If the recognizer is processing input that does not consist of silence or background noise, the recognizer completes the recognition operation and then generates the event. - - While the recognizer is handling the event: - -- The recognizer does not process input, and the value of the property remains the same. - -- The recognizer continues to collect input, and the value of the property can change. - +> If the input to the recognizer is changed before the recognizer raises the event, the request is discarded. + + When this method is called: + +- If the recognizer is not processing input, the recognizer immediately generates the event. + +- If the recognizer is processing input that consists of silence or background noise, the recognizer pauses the recognition operation and generates the event. + +- If the recognizer is processing input that does not consist of silence or background noise, the recognizer completes the recognition operation and then generates the event. + + While the recognizer is handling the event: + +- The recognizer does not process input, and the value of the property remains the same. + +- The recognizer continues to collect input, and the value of the property can change. + ]]> @@ -4726,122 +4726,122 @@ namespace SampleRecognition Requests that the recognizer pauses to update its state. - event, the property of the is `null`. - - To provide a user token, use the or method. To specify an audio position offset, use the method. - - - -## Examples - The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. - - At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. - -``` -using System; -using System.Speech.Recognition; -using System.Collections.Generic; -using System.Threading; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognitionEngine recognizer; - public static void Main(string[] args) - { - - // Initialize an in-process speech recognition engine and configure its input. - using (recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) - { - recognizer.SetInputToDefaultAudioDevice(); - - // Create the first grammar - Farm. - Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); - GrammarBuilder farm = new GrammarBuilder(animals); - Grammar farmAnimals = new Grammar(farm); - farmAnimals.Name = "Farm"; - - // Create the second grammar - Fruit. - Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); - GrammarBuilder favorite = new GrammarBuilder(fruit); - Grammar favoriteFruit = new Grammar(favorite); - favoriteFruit.Name = "Fruit"; - - // Attach event handlers. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.RecognizerUpdateReached += - new EventHandler(recognizer_RecognizerUpdateReached); - recognizer.SpeechRecognitionRejected += - new EventHandler(recognizer_SpeechRecognitionRejected); - - // Load the Farm grammar. - recognizer.LoadGrammar(farmAnimals); - - // Start asynchronous, continuous recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - Console.WriteLine("Starting asynchronous, continuous recognition"); - Console.WriteLine(" Farm grammar is loaded and enabled."); - - // Pause to recognize farm animals. - Thread.Sleep(7000); - Console.WriteLine(); - - // Request an update and load the Fruit grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.LoadGrammarAsync(favoriteFruit); - Thread.Sleep(7000); - - // Request an update and unload the Farm grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.UnloadGrammar(farmAnimals); - Thread.Sleep(7000); - } - - // Keep the console window open. - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // At the update, get the names and enabled status of the currently loaded grammars. - public static void recognizer_RecognizerUpdateReached( - object sender, RecognizerUpdateReachedEventArgs e) - { - Console.WriteLine(); - Console.WriteLine("Update reached:"); - Thread.Sleep(1000); - - string qualifier; - List grammars = new List(recognizer.Grammars); - foreach (Grammar g in grammars) - { - qualifier = (g.Enabled) ? "enabled" : "disabled"; - Console.WriteLine(" {0} grammar is loaded and {1}.", - g.Name, qualifier); - } - } - - // Write the text of the recognized phrase to the console. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" Speech recognized: " + e.Result.Text); - } - - // Write a message to the console when recognition fails. - static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine(" Recognition attempt failed"); - } - } -} - -``` - + event, the property of the is `null`. + + To provide a user token, use the or method. To specify an audio position offset, use the method. + + + +## Examples + The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. + + At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. + +``` +using System; +using System.Speech.Recognition; +using System.Collections.Generic; +using System.Threading; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognitionEngine recognizer; + public static void Main(string[] args) + { + + // Initialize an in-process speech recognition engine and configure its input. + using (recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) + { + recognizer.SetInputToDefaultAudioDevice(); + + // Create the first grammar - Farm. + Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); + GrammarBuilder farm = new GrammarBuilder(animals); + Grammar farmAnimals = new Grammar(farm); + farmAnimals.Name = "Farm"; + + // Create the second grammar - Fruit. + Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); + GrammarBuilder favorite = new GrammarBuilder(fruit); + Grammar favoriteFruit = new Grammar(favorite); + favoriteFruit.Name = "Fruit"; + + // Attach event handlers. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.RecognizerUpdateReached += + new EventHandler(recognizer_RecognizerUpdateReached); + recognizer.SpeechRecognitionRejected += + new EventHandler(recognizer_SpeechRecognitionRejected); + + // Load the Farm grammar. + recognizer.LoadGrammar(farmAnimals); + + // Start asynchronous, continuous recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + Console.WriteLine("Starting asynchronous, continuous recognition"); + Console.WriteLine(" Farm grammar is loaded and enabled."); + + // Pause to recognize farm animals. + Thread.Sleep(7000); + Console.WriteLine(); + + // Request an update and load the Fruit grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.LoadGrammarAsync(favoriteFruit); + Thread.Sleep(7000); + + // Request an update and unload the Farm grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.UnloadGrammar(farmAnimals); + Thread.Sleep(7000); + } + + // Keep the console window open. + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // At the update, get the names and enabled status of the currently loaded grammars. + public static void recognizer_RecognizerUpdateReached( + object sender, RecognizerUpdateReachedEventArgs e) + { + Console.WriteLine(); + Console.WriteLine("Update reached:"); + Thread.Sleep(1000); + + string qualifier; + List grammars = new List(recognizer.Grammars); + foreach (Grammar g in grammars) + { + qualifier = (g.Enabled) ? "enabled" : "disabled"; + Console.WriteLine(" {0} grammar is loaded and {1}.", + g.Name, qualifier); + } + } + + // Write the text of the recognized phrase to the console. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" Speech recognized: " + e.Result.Text); + } + + // Write a message to the console when recognition fails. + static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine(" Recognition attempt failed"); + } + } +} + +``` + ]]> @@ -4873,13 +4873,13 @@ namespace SampleRecognition User-defined information that contains information for the operation. Requests that the recognizer pauses to update its state and provides a user token for the associated event. - event, the property of the contains the value of the `userToken` parameter. - - To specify an audio position offset, use the method. - + event, the property of the contains the value of the `userToken` parameter. + + To specify an audio position offset, use the method. + ]]> @@ -4913,13 +4913,13 @@ namespace SampleRecognition The offset from the current to delay the request. Requests that the recognizer pauses to update its state and provides an offset and a user token for the associated event. - equals the current plus `audioPositionAheadToRaiseUpdate`. - - When the recognizer generates the event, the property of the contains the value of the `userToken` parameter. - + equals the current plus `audioPositionAheadToRaiseUpdate`. + + When the recognizer generates the event, the property of the contains the value of the `userToken` parameter. + ]]> @@ -4953,125 +4953,125 @@ namespace SampleRecognition The format of the audio input. Configures the object to receive input from an audio stream. - ( - SpeechRecognizedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Perform recognition of the whole file. - Console.WriteLine("Starting asynchronous recognition..."); - completed = false; - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - while (!completed) - { - Thread.Sleep(333); - } - Console.WriteLine("Done."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null && e.Result.Text != null) - { - Console.WriteLine(" Recognized text = {0}", e.Result.Text); - } - else - { - Console.WriteLine(" Recognized text not available."); - } - } - - // Handle the RecognizeCompleted event. - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - if (e.Error != null) - { - Console.WriteLine(" Error encountered, {0}: {1}", - e.Error.GetType().Name, e.Error.Message); - } - if (e.Cancelled) - { - Console.WriteLine(" Operation cancelled."); - } - if (e.InputStreamEnded) - { - Console.WriteLine(" End of stream encountered."); - } - - completed = true; - } - } -} - -``` - + ( + SpeechRecognizedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Perform recognition of the whole file. + Console.WriteLine("Starting asynchronous recognition..."); + completed = false; + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + while (!completed) + { + Thread.Sleep(333); + } + Console.WriteLine("Done."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null && e.Result.Text != null) + { + Console.WriteLine(" Recognized text = {0}", e.Result.Text); + } + else + { + Console.WriteLine(" Recognized text not available."); + } + } + + // Handle the RecognizeCompleted event. + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + if (e.Error != null) + { + Console.WriteLine(" Error encountered, {0}: {1}", + e.Error.GetType().Name, e.Error.Message); + } + if (e.Cancelled) + { + Console.WriteLine(" Operation cancelled."); + } + if (e.InputStreamEnded) + { + Console.WriteLine(" End of stream encountered."); + } + + completed = true; + } + } +} + +``` + ]]> @@ -5102,99 +5102,99 @@ namespace InputExamples Configures the object to receive input from the default audio device. - ( - SpeechRecognizedHandler); - recognizer.RecognizeCompleted += - new EventHandler( - RecognizeCompletedHandler); - - // Assign input to the recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Begin asynchronous recognition. - Console.WriteLine("Starting recognition..."); - completed = false; - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Wait for recognition to finish. - while (!completed) - { - Thread.Sleep(333); - } - Console.WriteLine("Done."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" Speech recognized:"); - string grammarName = ""; - if (e.Result.Grammar.Name != null && - !e.Result.Grammar.Name.Equals(string.Empty)) - { - grammarName = e.Result.Grammar.Name; - } - Console.WriteLine(" {0,-17} - {1}", - grammarName, e.Result.Text); - - if (grammarName.Equals("Exit Grammar")) - { - ((SpeechRecognitionEngine)sender).RecognizeAsyncCancel(); - } - } - - static void RecognizeCompletedHandler( - object sender, RecognizeCompletedEventArgs e) - { - Console.WriteLine(" Recognition completed."); - completed = true; - } - } -} -``` - + ( + SpeechRecognizedHandler); + recognizer.RecognizeCompleted += + new EventHandler( + RecognizeCompletedHandler); + + // Assign input to the recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Begin asynchronous recognition. + Console.WriteLine("Starting recognition..."); + completed = false; + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Wait for recognition to finish. + while (!completed) + { + Thread.Sleep(333); + } + Console.WriteLine("Done."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" Speech recognized:"); + string grammarName = ""; + if (e.Result.Grammar.Name != null && + !e.Result.Grammar.Name.Equals(string.Empty)) + { + grammarName = e.Result.Grammar.Name; + } + Console.WriteLine(" {0,-17} - {1}", + grammarName, e.Result.Text); + + if (grammarName.Equals("Exit Grammar")) + { + ((SpeechRecognitionEngine)sender).RecognizeAsyncCancel(); + } + } + + static void RecognizeCompletedHandler( + object sender, RecognizeCompletedEventArgs e) + { + Console.WriteLine(" Recognition completed."); + completed = true; + } + } +} +``` + ]]> @@ -5225,11 +5225,11 @@ namespace DefaultInput Disables the input to the speech recognizer. - object for no input when using the and methods, or when taking a recognition engine temporarily off line. - + object for no input when using the and methods, or when taking a recognition engine temporarily off line. + ]]> @@ -5262,105 +5262,105 @@ namespace DefaultInput The path of the file to use as input. Configures the object to receive input from a Waveform audio format (.wav) file. - (recognizer_SpeechRecognized); - recognizer.RecognizeCompleted += - new EventHandler(recognizer_RecognizeCompleted); - - // Perform recognition on the entire file. - Console.WriteLine("Starting asynchronous recognition..."); - completed = false; - recognizer.RecognizeAsync(); - - // Keep the console window open. - while (!completed) - { - Console.ReadLine(); - } - Console.WriteLine("Done."); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null && e.Result.Text != null) - { - Console.WriteLine(" Recognized text = {0}", e.Result.Text); - } - else - { - Console.WriteLine(" Recognized text not available."); - } - } - - // Handle the RecognizeCompleted event. - static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e) - { - if (e.Error != null) - { - Console.WriteLine(" Error encountered, {0}: {1}", - e.Error.GetType().Name, e.Error.Message); - } - if (e.Cancelled) - { - Console.WriteLine(" Operation cancelled."); - } - if (e.InputStreamEnded) - { - Console.WriteLine(" End of stream encountered."); - } - completed = true; - } - } -} - -``` - + (recognizer_SpeechRecognized); + recognizer.RecognizeCompleted += + new EventHandler(recognizer_RecognizeCompleted); + + // Perform recognition on the entire file. + Console.WriteLine("Starting asynchronous recognition..."); + completed = false; + recognizer.RecognizeAsync(); + + // Keep the console window open. + while (!completed) + { + Console.ReadLine(); + } + Console.WriteLine("Done."); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null && e.Result.Text != null) + { + Console.WriteLine(" Recognized text = {0}", e.Result.Text); + } + else + { + Console.WriteLine(" Recognized text not available."); + } + } + + // Handle the RecognizeCompleted event. + static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e) + { + if (e.Error != null) + { + Console.WriteLine(" Error encountered, {0}: {1}", + e.Error.GetType().Name, e.Error.Message); + } + if (e.Cancelled) + { + Console.WriteLine(" Operation cancelled."); + } + if (e.InputStreamEnded) + { + Console.WriteLine(" End of stream encountered."); + } + completed = true; + } + } +} + +``` + ]]> @@ -5394,11 +5394,11 @@ recognizer.SetInputToWaveFile(@"c:\temp\SampleWAVInput.wav"); The stream containing the audio data. Configures the object to receive input from a stream that contains Waveform audio format (.wav) data. - @@ -5429,92 +5429,92 @@ recognizer.SetInputToWaveFile(@"c:\temp\SampleWAVInput.wav"); Raised when the detects input that it can identify as speech. - performs a speech recognition operation, it raises the event when its algorithm identifies the input as speech. The property of the associated object indicates location in the input stream where the recognizer detected speech. The raises the event before it raises any of the , , or events. - - For more information see the , , , and methods. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example is part of a console application for choosing origin and destination cities for a flight. The application recognizes phrases such as "I want to fly from Miami to Chicago." The example uses the event to report the each time speech is detected. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize an in-process speech recognition engine. - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine()) - { - - // Create a grammar. - Choices cities = new Choices(new string[] { - "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); - - GrammarBuilder gb = new GrammarBuilder(); - gb.Append("I would like to fly from"); - gb.Append(cities); - gb.Append("to"); - gb.Append(cities); - - // Create a Grammar object and load it to the recognizer. - Grammar g = new Grammar(gb); - g.Name = ("City Chooser"); - recognizer.LoadGrammarAsync(g); - - // Attach event handlers. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - recognizer.SpeechDetected += - new EventHandler(recognizer_SpeechDetected); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Set the input to the recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start recognition. - recognizer.RecognizeAsync(); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the SpeechDetected event. - static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(" Speech detected at AudioPosition = {0}", e.AudioPosition); - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" Speech recognized: " + e.Result.Text); - } - } -} - -``` - + performs a speech recognition operation, it raises the event when its algorithm identifies the input as speech. The property of the associated object indicates location in the input stream where the recognizer detected speech. The raises the event before it raises any of the , , or events. + + For more information see the , , , and methods. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example is part of a console application for choosing origin and destination cities for a flight. The application recognizes phrases such as "I want to fly from Miami to Chicago." The example uses the event to report the each time speech is detected. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize an in-process speech recognition engine. + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine()) + { + + // Create a grammar. + Choices cities = new Choices(new string[] { + "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); + + GrammarBuilder gb = new GrammarBuilder(); + gb.Append("I would like to fly from"); + gb.Append(cities); + gb.Append("to"); + gb.Append(cities); + + // Create a Grammar object and load it to the recognizer. + Grammar g = new Grammar(gb); + g.Name = ("City Chooser"); + recognizer.LoadGrammarAsync(g); + + // Attach event handlers. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + recognizer.SpeechDetected += + new EventHandler(recognizer_SpeechDetected); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Set the input to the recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start recognition. + recognizer.RecognizeAsync(); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the SpeechDetected event. + static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(" Speech detected at AudioPosition = {0}", e.AudioPosition); + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" Speech recognized: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -5547,101 +5547,101 @@ namespace SampleRecognition Raised when the has recognized a word or words that may be a component of multiple complete phrases in a grammar. - generates numerous events as it attempts to identify an input phrase. You can access the text of partially recognized phrases in the property of the object in the handler for the event. Typically, handling these events is useful only for debugging. - - derives from . - - For more information see the property and the , , , and methods. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example recognizes phrases such as "Display the list of artists in the jazz category". The example uses the event to display incomplete phrase fragments in the console as they are recognized. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize an in-process speech recognition engine. - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine()) - { - - // Create a grammar. - // Create lists of alternative choices. - Choices listTypes = new Choices(new string[] { "albums", "artists" }); - Choices genres = new Choices(new string[] { - "blues", "classical", "gospel", "jazz", "rock" }); - - // Create a GrammarBuilder object and assemble the grammar components. - GrammarBuilder mediaMenu = new GrammarBuilder("Display the list of"); - mediaMenu.Append(listTypes); - mediaMenu.Append("in the"); - mediaMenu.Append(genres); - mediaMenu.Append("category."); - - // Build a Grammar object from the GrammarBuilder. - Grammar mediaMenuGrammar = new Grammar(mediaMenu); - mediaMenuGrammar.Name = "Media Chooser"; - - // Attach event handlers. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.SpeechHypothesized += - new EventHandler(recognizer_SpeechHypothesized); - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(mediaMenuGrammar); - - // Set the input to the recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start asynchronous recognition. - recognizer.RecognizeAsync(); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the SpeechHypothesized event. - static void recognizer_SpeechHypothesized(object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine("Speech hypothesized: " + e.Result.Text); - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - Console.WriteLine(); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(); - Console.WriteLine("Speech recognized: " + e.Result.Text); - } - } -} - -``` - + generates numerous events as it attempts to identify an input phrase. You can access the text of partially recognized phrases in the property of the object in the handler for the event. Typically, handling these events is useful only for debugging. + + derives from . + + For more information see the property and the , , , and methods. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example recognizes phrases such as "Display the list of artists in the jazz category". The example uses the event to display incomplete phrase fragments in the console as they are recognized. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize an in-process speech recognition engine. + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine()) + { + + // Create a grammar. + // Create lists of alternative choices. + Choices listTypes = new Choices(new string[] { "albums", "artists" }); + Choices genres = new Choices(new string[] { + "blues", "classical", "gospel", "jazz", "rock" }); + + // Create a GrammarBuilder object and assemble the grammar components. + GrammarBuilder mediaMenu = new GrammarBuilder("Display the list of"); + mediaMenu.Append(listTypes); + mediaMenu.Append("in the"); + mediaMenu.Append(genres); + mediaMenu.Append("category."); + + // Build a Grammar object from the GrammarBuilder. + Grammar mediaMenuGrammar = new Grammar(mediaMenu); + mediaMenuGrammar.Name = "Media Chooser"; + + // Attach event handlers. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.SpeechHypothesized += + new EventHandler(recognizer_SpeechHypothesized); + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(mediaMenuGrammar); + + // Set the input to the recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start asynchronous recognition. + recognizer.RecognizeAsync(); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the SpeechHypothesized event. + static void recognizer_SpeechHypothesized(object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine("Speech hypothesized: " + e.Result.Text); + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + Console.WriteLine(); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(); + Console.WriteLine("Speech recognized: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -5678,104 +5678,104 @@ namespace SampleRecognition Raised when the receives input that does not match any of its loaded and enabled objects. - objects. The property of the contains the rejected object. You can use the handler for the event to retrieve recognition that were rejected and their scores. - - If your application is using a instance, you can modify the confidence level at which speech input is accepted or rejected with one of the methods. You can modify how the speech recognition responds to non-speech input using the , , , and properties. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example recognizes phrases such as "Display the list of artists in the jazz category" or "Display albums gospel". The example uses a handler for the event to display a notification in the console when the speech input cannot be matched to the contents of the grammar with sufficient to produce a successful recognition. The handler also displays recognition result that were rejected because of low confidence scores. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize an in-process speech recognition engine. - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) - { - - // Create a grammar. - // Create lists of alternative choices. - Choices listTypes = new Choices(new string[] { "albums", "artists" }); - Choices genres = new Choices(new string[] { - "blues", "classical", "gospel", "jazz", "rock" }); - - // Create a GrammarBuilder object and assemble the grammar components. - GrammarBuilder mediaMenu = new GrammarBuilder("Display"); - mediaMenu.Append("the list of", 0, 1); - mediaMenu.Append(listTypes); - mediaMenu.Append("in the", 0, 1); - mediaMenu.Append(genres); - mediaMenu.Append("category", 0, 1); - - // Build a Grammar object from the GrammarBuilder. - Grammar mediaMenuGrammar = new Grammar(mediaMenu); - mediaMenuGrammar.Name = "Media Chooser"; - - // Attach event handlers. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.SpeechRecognitionRejected += - new EventHandler(recognizer_SpeechRecognitionRejected); - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(mediaMenuGrammar); - - // Set the input to the recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start recognition. - recognizer.RecognizeAsync(RecognizeMode.Multiple); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the SpeechRecognitionRejected event. - static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine("Speech input was rejected."); - foreach (RecognizedPhrase phrase in e.Result.Alternates) - { - Console.WriteLine(" Rejected phrase: " + phrase.Text); - Console.WriteLine(" Confidence score: " + phrase.Confidence); - } - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Speech recognized: " + e.Result.Text); - Console.WriteLine(" Confidence score: " + e.Result.Confidence); - } - } -} - -``` - + objects. The property of the contains the rejected object. You can use the handler for the event to retrieve recognition that were rejected and their scores. + + If your application is using a instance, you can modify the confidence level at which speech input is accepted or rejected with one of the methods. You can modify how the speech recognition responds to non-speech input using the , , , and properties. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example recognizes phrases such as "Display the list of artists in the jazz category" or "Display albums gospel". The example uses a handler for the event to display a notification in the console when the speech input cannot be matched to the contents of the grammar with sufficient to produce a successful recognition. The handler also displays recognition result that were rejected because of low confidence scores. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize an in-process speech recognition engine. + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) + { + + // Create a grammar. + // Create lists of alternative choices. + Choices listTypes = new Choices(new string[] { "albums", "artists" }); + Choices genres = new Choices(new string[] { + "blues", "classical", "gospel", "jazz", "rock" }); + + // Create a GrammarBuilder object and assemble the grammar components. + GrammarBuilder mediaMenu = new GrammarBuilder("Display"); + mediaMenu.Append("the list of", 0, 1); + mediaMenu.Append(listTypes); + mediaMenu.Append("in the", 0, 1); + mediaMenu.Append(genres); + mediaMenu.Append("category", 0, 1); + + // Build a Grammar object from the GrammarBuilder. + Grammar mediaMenuGrammar = new Grammar(mediaMenu); + mediaMenuGrammar.Name = "Media Chooser"; + + // Attach event handlers. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.SpeechRecognitionRejected += + new EventHandler(recognizer_SpeechRecognitionRejected); + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(mediaMenuGrammar); + + // Set the input to the recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start recognition. + recognizer.RecognizeAsync(RecognizeMode.Multiple); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the SpeechRecognitionRejected event. + static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine("Speech input was rejected."); + foreach (RecognizedPhrase phrase in e.Result.Alternates) + { + Console.WriteLine(" Rejected phrase: " + phrase.Text); + Console.WriteLine(" Confidence score: " + phrase.Confidence); + } + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Speech recognized: " + e.Result.Text); + Console.WriteLine(" Confidence score: " + e.Result.Confidence); + } + } +} + +``` + ]]> @@ -5809,106 +5809,106 @@ namespace SampleRecognition Raised when the receives input that matches any of its loaded and enabled objects. - or methods. The recognizer raises the event if it determines that input matches one of its loaded objects with a sufficient level of confidence to constitute recognition. The property of the contains the accepted object. Handlers of events can obtain the recognized phrase as well as a list of recognition with lower confidence scores. - - If your application is using a instance, you can modify the confidence level at which speech input is accepted or rejected with one of the methods. You can modify how the speech recognition responds to non-speech input using the , , , and properties. - - When the recognizer receives input that matches a grammar, the object can raise its event. The object's event is raised prior to the speech recognizer's event. Any tasks specific to a particular grammar should always be performed by a handler for the event. - - When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example is part of a console application that creates speech recognition grammar, constructs a object, and loads it into the to perform recognition. The example demonstrates speech input to a , the associated recognition results, and the associated events raised by the speech recognizer. - - Spoken input such as "I want to fly from Chicago to Miami" will trigger a event. Speaking the phrase "Fly me from Houston to Chicago " will not trigger a event. - - The example uses a handler for the event to display successfully recognized phrases and the semantics they contain in the console. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize an in-process speech recognition engine. - { - using (SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine()) - { - - // Create SemanticResultValue objects that contain cities and airport codes. - SemanticResultValue chicago = new SemanticResultValue("Chicago", "ORD"); - SemanticResultValue boston = new SemanticResultValue("Boston", "BOS"); - SemanticResultValue miami = new SemanticResultValue("Miami", "MIA"); - SemanticResultValue dallas = new SemanticResultValue("Dallas", "DFW"); - - // Create a Choices object and add the SemanticResultValue objects, using - // implicit conversion from SemanticResultValue to GrammarBuilder - Choices cities = new Choices(); - cities.Add(new Choices(new GrammarBuilder[] { chicago, boston, miami, dallas })); - - // Build the phrase and add SemanticResultKeys. - GrammarBuilder chooseCities = new GrammarBuilder(); - chooseCities.Append("I want to fly from"); - chooseCities.Append(new SemanticResultKey("origin", cities)); - chooseCities.Append("to"); - chooseCities.Append(new SemanticResultKey("destination", cities)); - - // Build a Grammar object from the GrammarBuilder. - Grammar bookFlight = new Grammar(chooseCities); - bookFlight.Name = "Book Flight"; - - // Add a handler for the LoadGrammarCompleted event. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - - // Add a handler for the SpeechRecognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(bookFlight); - - // Set the input to the recognizer. - recognizer.SetInputToDefaultAudioDevice(); - - // Start recognition. - recognizer.RecognizeAsync(); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - Console.WriteLine(); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Speech recognized: " + e.Result.Text); - Console.WriteLine(); - Console.WriteLine("Semantic results:"); - Console.WriteLine(" The flight origin is " + e.Result.Semantics["origin"].Value); - Console.WriteLine(" The flight destination is " + e.Result.Semantics["destination"].Value); - } - } -} - -``` - + or methods. The recognizer raises the event if it determines that input matches one of its loaded objects with a sufficient level of confidence to constitute recognition. The property of the contains the accepted object. Handlers of events can obtain the recognized phrase as well as a list of recognition with lower confidence scores. + + If your application is using a instance, you can modify the confidence level at which speech input is accepted or rejected with one of the methods. You can modify how the speech recognition responds to non-speech input using the , , , and properties. + + When the recognizer receives input that matches a grammar, the object can raise its event. The object's event is raised prior to the speech recognizer's event. Any tasks specific to a particular grammar should always be performed by a handler for the event. + + When you create a delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example is part of a console application that creates speech recognition grammar, constructs a object, and loads it into the to perform recognition. The example demonstrates speech input to a , the associated recognition results, and the associated events raised by the speech recognizer. + + Spoken input such as "I want to fly from Chicago to Miami" will trigger a event. Speaking the phrase "Fly me from Houston to Chicago " will not trigger a event. + + The example uses a handler for the event to display successfully recognized phrases and the semantics they contain in the console. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize an in-process speech recognition engine. + { + using (SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine()) + { + + // Create SemanticResultValue objects that contain cities and airport codes. + SemanticResultValue chicago = new SemanticResultValue("Chicago", "ORD"); + SemanticResultValue boston = new SemanticResultValue("Boston", "BOS"); + SemanticResultValue miami = new SemanticResultValue("Miami", "MIA"); + SemanticResultValue dallas = new SemanticResultValue("Dallas", "DFW"); + + // Create a Choices object and add the SemanticResultValue objects, using + // implicit conversion from SemanticResultValue to GrammarBuilder + Choices cities = new Choices(); + cities.Add(new Choices(new GrammarBuilder[] { chicago, boston, miami, dallas })); + + // Build the phrase and add SemanticResultKeys. + GrammarBuilder chooseCities = new GrammarBuilder(); + chooseCities.Append("I want to fly from"); + chooseCities.Append(new SemanticResultKey("origin", cities)); + chooseCities.Append("to"); + chooseCities.Append(new SemanticResultKey("destination", cities)); + + // Build a Grammar object from the GrammarBuilder. + Grammar bookFlight = new Grammar(chooseCities); + bookFlight.Name = "Book Flight"; + + // Add a handler for the LoadGrammarCompleted event. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + + // Add a handler for the SpeechRecognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(bookFlight); + + // Set the input to the recognizer. + recognizer.SetInputToDefaultAudioDevice(); + + // Start recognition. + recognizer.RecognizeAsync(); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + Console.WriteLine(); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Speech recognized: " + e.Result.Text); + Console.WriteLine(); + Console.WriteLine("Semantic results:"); + Console.WriteLine(" The flight origin is " + e.Result.Semantics["origin"].Value); + Console.WriteLine(" The flight destination is " + e.Result.Semantics["destination"].Value); + } + } +} + +``` + ]]> @@ -5945,108 +5945,108 @@ namespace SampleRecognition Unloads all objects from the recognizer. - asynchronously, this method waits until the is loaded, before it unloads all of the objects from the instance. - - To unload a specific grammar, use the method. - - - -## Examples - The following example shows part of a console application that demonstrates the synchronous loading and unloading of speech recognition grammars. - -``` -Loading grammars... -Loaded grammars: - - Grammar1 - - Grammar2 - - Grammar3 - -Unloading Grammar1... -Loaded grammars: - - Grammar2 - - Grammar3 - -Unloading all grammars... -No grammars loaded. - -Press any key to exit... -``` - -```csharp - -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Speech.Recognition; - -namespace UnloadGrammars -{ - class Program - { - static void Main(string[] args) - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - Console.WriteLine("Loading grammars..."); - - // Create and load a number of grammars. - Grammar grammar1 = new Grammar(new GrammarBuilder("first grammar")); - grammar1.Name = "Grammar1"; - recognizer.LoadGrammar(grammar1); - - Grammar grammar2 = new Grammar(new GrammarBuilder("second grammar")); - grammar2.Name = "Grammar2"; - recognizer.LoadGrammar(grammar2); - - Grammar grammar3 = new Grammar(new GrammarBuilder("third grammar")); - grammar3.Name = "Grammar3"; - recognizer.LoadGrammar(grammar3); - - // List the recognizer's loaded grammars. - ListGrammars(recognizer); - - // Unload one grammar and list the loaded grammars. - Console.WriteLine("Unloading Grammar1..."); - recognizer.UnloadGrammar(grammar1); - ListGrammars(recognizer); - - // Unload all grammars and list the loaded grammars. - Console.WriteLine("Unloading all grammars..."); - recognizer.UnloadAllGrammars(); - ListGrammars(recognizer); - } - - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - private static void ListGrammars(SpeechRecognitionEngine recognizer) - { - // Make a copy of the recognizer's grammar collection. - List loadedGrammars = new List(recognizer.Grammars); - - if (loadedGrammars.Count > 0) - { - Console.WriteLine("Loaded grammars:"); - foreach (Grammar g in recognizer.Grammars) - { - Console.WriteLine(" - {0}", g.Name); - } - } - else - { - Console.WriteLine("No grammars loaded."); - } - Console.WriteLine(); - } - } -} -``` - + asynchronously, this method waits until the is loaded, before it unloads all of the objects from the instance. + + To unload a specific grammar, use the method. + + + +## Examples + The following example shows part of a console application that demonstrates the synchronous loading and unloading of speech recognition grammars. + +``` +Loading grammars... +Loaded grammars: + - Grammar1 + - Grammar2 + - Grammar3 + +Unloading Grammar1... +Loaded grammars: + - Grammar2 + - Grammar3 + +Unloading all grammars... +No grammars loaded. + +Press any key to exit... +``` + +```csharp + +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Speech.Recognition; + +namespace UnloadGrammars +{ + class Program + { + static void Main(string[] args) + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + Console.WriteLine("Loading grammars..."); + + // Create and load a number of grammars. + Grammar grammar1 = new Grammar(new GrammarBuilder("first grammar")); + grammar1.Name = "Grammar1"; + recognizer.LoadGrammar(grammar1); + + Grammar grammar2 = new Grammar(new GrammarBuilder("second grammar")); + grammar2.Name = "Grammar2"; + recognizer.LoadGrammar(grammar2); + + Grammar grammar3 = new Grammar(new GrammarBuilder("third grammar")); + grammar3.Name = "Grammar3"; + recognizer.LoadGrammar(grammar3); + + // List the recognizer's loaded grammars. + ListGrammars(recognizer); + + // Unload one grammar and list the loaded grammars. + Console.WriteLine("Unloading Grammar1..."); + recognizer.UnloadGrammar(grammar1); + ListGrammars(recognizer); + + // Unload all grammars and list the loaded grammars. + Console.WriteLine("Unloading all grammars..."); + recognizer.UnloadAllGrammars(); + ListGrammars(recognizer); + } + + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + private static void ListGrammars(SpeechRecognitionEngine recognizer) + { + // Make a copy of the recognizer's grammar collection. + List loadedGrammars = new List(recognizer.Grammars); + + if (loadedGrammars.Count > 0) + { + Console.WriteLine("Loaded grammars:"); + foreach (Grammar g in recognizer.Grammars) + { + Console.WriteLine(" - {0}", g.Name); + } + } + else + { + Console.WriteLine("No grammars loaded."); + } + Console.WriteLine(); + } + } +} +``` + ]]> @@ -6078,106 +6078,106 @@ namespace UnloadGrammars The grammar object to unload. Unloads a specified object from the instance. - to pause the instance before loading, unloading, enabling, or disabling a object. To unload all objects, use the method. - - - -## Examples - The following example shows part of a console application that demonstrates the synchronous loading and unloading of speech recognition grammars. - -``` -Loading grammars... -Loaded grammars: - - Grammar1 - - Grammar2 - - Grammar3 - -Unloading Grammar1... -Loaded grammars: - - Grammar2 - - Grammar3 - -Unloading all grammars... -No grammars loaded. - -Press any key to exit... -``` - -```csharp - -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Speech.Recognition; - -namespace UnloadGrammars -{ - class Program - { - static void Main(string[] args) - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new CultureInfo("en-US"))) - { - Console.WriteLine("Loading grammars..."); - - // Create and load a number of grammars. - Grammar grammar1 = new Grammar(new GrammarBuilder("first grammar")); - grammar1.Name = "Grammar1"; - recognizer.LoadGrammar(grammar1); - - Grammar grammar2 = new Grammar(new GrammarBuilder("second grammar")); - grammar2.Name = "Grammar2"; - recognizer.LoadGrammar(grammar2); - - Grammar grammar3 = new Grammar(new GrammarBuilder("third grammar")); - grammar3.Name = "Grammar3"; - recognizer.LoadGrammar(grammar3); - - // List the recognizer's loaded grammars. - ListGrammars(recognizer); - - // Unload one grammar and list the loaded grammars. - Console.WriteLine("Unloading Grammar1..."); - recognizer.UnloadGrammar(grammar1); - ListGrammars(recognizer); - - // Unload all grammars and list the loaded grammars. - Console.WriteLine("Unloading all grammars..."); - recognizer.UnloadAllGrammars(); - ListGrammars(recognizer); - } - - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - private static void ListGrammars(SpeechRecognitionEngine recognizer) - { - // Make a copy of the recognizer's grammar collection. - List loadedGrammars = new List(recognizer.Grammars); - - if (loadedGrammars.Count > 0) - { - Console.WriteLine("Loaded grammars:"); - foreach (Grammar g in recognizer.Grammars) - { - Console.WriteLine(" - {0}", g.Name); - } - } - else - { - Console.WriteLine("No grammars loaded."); - } - Console.WriteLine(); - } - } -} -``` - + to pause the instance before loading, unloading, enabling, or disabling a object. To unload all objects, use the method. + + + +## Examples + The following example shows part of a console application that demonstrates the synchronous loading and unloading of speech recognition grammars. + +``` +Loading grammars... +Loaded grammars: + - Grammar1 + - Grammar2 + - Grammar3 + +Unloading Grammar1... +Loaded grammars: + - Grammar2 + - Grammar3 + +Unloading all grammars... +No grammars loaded. + +Press any key to exit... +``` + +```csharp + +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Speech.Recognition; + +namespace UnloadGrammars +{ + class Program + { + static void Main(string[] args) + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new CultureInfo("en-US"))) + { + Console.WriteLine("Loading grammars..."); + + // Create and load a number of grammars. + Grammar grammar1 = new Grammar(new GrammarBuilder("first grammar")); + grammar1.Name = "Grammar1"; + recognizer.LoadGrammar(grammar1); + + Grammar grammar2 = new Grammar(new GrammarBuilder("second grammar")); + grammar2.Name = "Grammar2"; + recognizer.LoadGrammar(grammar2); + + Grammar grammar3 = new Grammar(new GrammarBuilder("third grammar")); + grammar3.Name = "Grammar3"; + recognizer.LoadGrammar(grammar3); + + // List the recognizer's loaded grammars. + ListGrammars(recognizer); + + // Unload one grammar and list the loaded grammars. + Console.WriteLine("Unloading Grammar1..."); + recognizer.UnloadGrammar(grammar1); + ListGrammars(recognizer); + + // Unload all grammars and list the loaded grammars. + Console.WriteLine("Unloading all grammars..."); + recognizer.UnloadAllGrammars(); + ListGrammars(recognizer); + } + + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + private static void ListGrammars(SpeechRecognitionEngine recognizer) + { + // Make a copy of the recognizer's grammar collection. + List loadedGrammars = new List(recognizer.Grammars); + + if (loadedGrammars.Count > 0) + { + Console.WriteLine("Loaded grammars:"); + foreach (Grammar g in recognizer.Grammars) + { + Console.WriteLine(" - {0}", g.Name); + } + } + else + { + Console.WriteLine("No grammars loaded."); + } + Console.WriteLine(); + } + } +} +``` + ]]> @@ -6196,25 +6196,25 @@ namespace UnloadGrammars Updates the value of a setting for the recognizer. - property. Default = 150ms.| -|`ComplexResponseSpeed`|Indicates the length of silence in milliseconds (ms) at the end of ambiguous input before the speech recognizer completes a recognition operation. The range is from 0 to 10,000ms. This setting corresponds to the recognizer's property. Default = 500ms.| -|`AdaptationOn`|Indicates whether adaptation of the acoustic model is ON (value = `1`) or OFF (value = `0`). The default value is `1` (ON).| -|`PersistedBackgroundAdaptation`|Indicates whether background adaptation is ON (value = `1`) or OFF (value = `0`), and persists the setting in the registry. The default value is `1` (ON).| - - To return one of the recognizer's settings, use the method. - - With the exception of `PersistedBackgroundAdaptation`, property values set using the methods remain in effect only for the current instance of , after which they revert to their default settings. - - You can modify how the speech recognition responds to non-speech input using the , , , and properties. - + property. Default = 150ms.| +|`ComplexResponseSpeed`|Indicates the length of silence in milliseconds (ms) at the end of ambiguous input before the speech recognizer completes a recognition operation. The range is from 0 to 10,000ms. This setting corresponds to the recognizer's property. Default = 500ms.| +|`AdaptationOn`|Indicates whether adaptation of the acoustic model is ON (value = `1`) or OFF (value = `0`). The default value is `1` (ON).| +|`PersistedBackgroundAdaptation`|Indicates whether background adaptation is ON (value = `1`) or OFF (value = `0`), and persists the setting in the registry. The default value is `1` (ON).| + + To return one of the recognizer's settings, use the method. + + With the exception of `PersistedBackgroundAdaptation`, property values set using the methods remain in effect only for the current instance of , after which they revert to their default settings. + + You can modify how the speech recognition responds to non-speech input using the , , , and properties. + ]]> @@ -6245,104 +6245,104 @@ namespace UnloadGrammars The new value for the setting. Updates the specified setting for the with the specified integer value. - method remain in effect only for the current instance of , after which they revert to their default settings. See for descriptions of supported settings. - - - -## Examples - The following example is part of a console application that outputs the values for a number of the settings defined for the recognizer that supports the en-US locale. The example updates the confidence level settings, and then queries the recognizer to check the updated values. The example generates the following output. - -``` -Settings for recognizer MS-1033-80-DESK: - - ResourceUsage is not supported by this recognizer. - ResponseSpeed = 150 - ComplexResponseSpeed = 500 - AdaptationOn = 1 - PersistedBackgroundAdaptation = 1 - -Updated settings: - - ResourceUsage is not supported by this recognizer. - ResponseSpeed = 200 - ComplexResponseSpeed = 300 - AdaptationOn = 0 - PersistedBackgroundAdaptation = 0 - -Press any key to exit... -``` - -```csharp -using System; -using System.Globalization; -using System.Speech.Recognition; - -namespace RecognizerSettings -{ - class Program - { - static readonly string[] settings = new string[] { - "ResourceUsage", - "ResponseSpeed", - "ComplexResponseSpeed", - "AdaptationOn", - "PersistedBackgroundAdaptation", - }; - - static void Main(string[] args) - { - using (SpeechRecognitionEngine recognizer = - new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) - { - Console.WriteLine("Settings for recognizer {0}:", - recognizer.RecognizerInfo.Name); - Console.WriteLine(); - - // List the current settings. - ListSettings(recognizer); - - // Change some of the settings. - recognizer.UpdateRecognizerSetting("ResponseSpeed", 200); - recognizer.UpdateRecognizerSetting("ComplexResponseSpeed", 300); - recognizer.UpdateRecognizerSetting("AdaptationOn", 1); - recognizer.UpdateRecognizerSetting("PersistedBackgroundAdaptation", 0); - - Console.WriteLine("Updated settings:"); - Console.WriteLine(); - - // List the updated settings. - ListSettings(recognizer); - } - - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - private static void ListSettings(SpeechRecognitionEngine recognizer) - { - foreach (string setting in settings) - { - try - { - object value = recognizer.QueryRecognizerSetting(setting); - Console.WriteLine(" {0,-30} = {1}", setting, value); - } - catch - { - Console.WriteLine(" {0,-30} is not supported by this recognizer.", - setting); - } - } - Console.WriteLine(); - } - } -} - -``` - + method remain in effect only for the current instance of , after which they revert to their default settings. See for descriptions of supported settings. + + + +## Examples + The following example is part of a console application that outputs the values for a number of the settings defined for the recognizer that supports the en-US locale. The example updates the confidence level settings, and then queries the recognizer to check the updated values. The example generates the following output. + +``` +Settings for recognizer MS-1033-80-DESK: + + ResourceUsage is not supported by this recognizer. + ResponseSpeed = 150 + ComplexResponseSpeed = 500 + AdaptationOn = 1 + PersistedBackgroundAdaptation = 1 + +Updated settings: + + ResourceUsage is not supported by this recognizer. + ResponseSpeed = 200 + ComplexResponseSpeed = 300 + AdaptationOn = 0 + PersistedBackgroundAdaptation = 0 + +Press any key to exit... +``` + +```csharp +using System; +using System.Globalization; +using System.Speech.Recognition; + +namespace RecognizerSettings +{ + class Program + { + static readonly string[] settings = new string[] { + "ResourceUsage", + "ResponseSpeed", + "ComplexResponseSpeed", + "AdaptationOn", + "PersistedBackgroundAdaptation", + }; + + static void Main(string[] args) + { + using (SpeechRecognitionEngine recognizer = + new SpeechRecognitionEngine(new System.Globalization.CultureInfo("en-US"))) + { + Console.WriteLine("Settings for recognizer {0}:", + recognizer.RecognizerInfo.Name); + Console.WriteLine(); + + // List the current settings. + ListSettings(recognizer); + + // Change some of the settings. + recognizer.UpdateRecognizerSetting("ResponseSpeed", 200); + recognizer.UpdateRecognizerSetting("ComplexResponseSpeed", 300); + recognizer.UpdateRecognizerSetting("AdaptationOn", 1); + recognizer.UpdateRecognizerSetting("PersistedBackgroundAdaptation", 0); + + Console.WriteLine("Updated settings:"); + Console.WriteLine(); + + // List the updated settings. + ListSettings(recognizer); + } + + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + private static void ListSettings(SpeechRecognitionEngine recognizer) + { + foreach (string setting in settings) + { + try + { + object value = recognizer.QueryRecognizerSetting(setting); + Console.WriteLine(" {0,-30} = {1}", setting, value); + } + catch + { + Console.WriteLine(" {0,-30} is not supported by this recognizer.", + setting); + } + } + Console.WriteLine(); + } + } +} + +``` + ]]> @@ -6379,11 +6379,11 @@ namespace RecognizerSettings The new value for the setting. Updates the specified speech recognition engine setting with the specified string value. - method remain in effect only for the current instance of , after which they revert to their default settings. See for descriptions of supported settings. - + method remain in effect only for the current instance of , after which they revert to their default settings. See for descriptions of supported settings. + ]]> diff --git a/xml/System.Speech.Recognition/SpeechRecognizer.xml b/xml/System.Speech.Recognition/SpeechRecognizer.xml index 6792691d057..9166ac30bd1 100644 --- a/xml/System.Speech.Recognition/SpeechRecognizer.xml +++ b/xml/System.Speech.Recognition/SpeechRecognizer.xml @@ -26,134 +26,134 @@ Provides access to the shared speech recognition service available on the Windows desktop. - object to add to the Windows speech user experience. - - This class provides control over various aspects of the speech recognition process: - -- To manage speech recognition grammars, use the , , , , and . - -- To get information about current speech recognition operations, subscribe to the 's , , , and events. - -- To view or modify the number of alternate results the recognizer returns, use the property. The recognizer returns recognition results in a object. - -- To access or monitor the state of the shared recognizer, use the , , , , , , and properties and the , , , and events. - -- To synchronize changes to the recognizer, use the method. The shared recognizer uses more than one thread to perform tasks. - -- To emulate input to the shared recognizer, use the and methods. - - The configuration of Windows Speech Recognition is managed by the use of the **Speech Properties** dialog in the **Control Panel**. This interface is used to select the default desktop speech recognition engine and language, the audio input device, and the sleep behavior of speech recognition. If the configuration of Windows Speech Recognition is changed while the application is running, (for instance, if speech recognition is disabled or the input language is changed), the change affects all objects. - - To create an in-process speech recognizer that is independent of Windows Speech Recognition, use the class. - + object to add to the Windows speech user experience. + + This class provides control over various aspects of the speech recognition process: + +- To manage speech recognition grammars, use the , , , , and . + +- To get information about current speech recognition operations, subscribe to the 's , , , and events. + +- To view or modify the number of alternate results the recognizer returns, use the property. The recognizer returns recognition results in a object. + +- To access or monitor the state of the shared recognizer, use the , , , , , , and properties and the , , , and events. + +- To synchronize changes to the recognizer, use the method. The shared recognizer uses more than one thread to perform tasks. + +- To emulate input to the shared recognizer, use the and methods. + + The configuration of Windows Speech Recognition is managed by the use of the **Speech Properties** dialog in the **Control Panel**. This interface is used to select the default desktop speech recognition engine and language, the audio input device, and the sleep behavior of speech recognition. If the configuration of Windows Speech Recognition is changed while the application is running, (for instance, if speech recognition is disabled or the input language is changed), the change affects all objects. + + To create an in-process speech recognizer that is independent of Windows Speech Recognition, use the class. + > [!NOTE] -> Always call before you release your last reference to the speech recognizer. Otherwise, the resources it is using will not be freed until the garbage collector calls the recognizer object's `Finalize` method. - - - -## Examples - The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. - -```csharp -using System; -using System.Speech.Recognition; -using System.Threading; - -namespace SharedRecognizer -{ - class Program - { - - // Indicate whether the asynchronous emulate recognition - // operation has completed. - static bool completed; - - static void Main(string[] args) - { - - // Initialize an instance of the shared recognizer. - using (SpeechRecognizer recognizer = new SpeechRecognizer()) - { - - // Create and load a sample grammar. - Grammar testGrammar = - new Grammar(new GrammarBuilder("testing testing")); - testGrammar.Name = "Test Grammar"; - recognizer.LoadGrammar(testGrammar); - - // Attach event handlers for recognition events. - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.EmulateRecognizeCompleted += - new EventHandler( - EmulateRecognizeCompletedHandler); - - completed = false; - - // Start asynchronous emulated recognition. - // This matches the grammar and generates a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing testing"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - completed = false; - - // Start asynchronous emulated recognition. - // This does not match the grammar or generate a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing one two three"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null) - { - Console.WriteLine("Recognition result = {0}", - e.Result.Text ?? ""); - } - else - { - Console.WriteLine("No recognition result"); - } - } - - // Handle the SpeechRecognizeCompleted event. - static void EmulateRecognizeCompletedHandler( - object sender, EmulateRecognizeCompletedEventArgs e) - { - if (e.Result == null) - { - Console.WriteLine("No result generated."); - } - - // Indicate the asynchronous operation is complete. - completed = true; - } - } -} - -``` - +> Always call before you release your last reference to the speech recognizer. Otherwise, the resources it is using will not be freed until the garbage collector calls the recognizer object's `Finalize` method. + + + +## Examples + The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. + +```csharp +using System; +using System.Speech.Recognition; +using System.Threading; + +namespace SharedRecognizer +{ + class Program + { + + // Indicate whether the asynchronous emulate recognition + // operation has completed. + static bool completed; + + static void Main(string[] args) + { + + // Initialize an instance of the shared recognizer. + using (SpeechRecognizer recognizer = new SpeechRecognizer()) + { + + // Create and load a sample grammar. + Grammar testGrammar = + new Grammar(new GrammarBuilder("testing testing")); + testGrammar.Name = "Test Grammar"; + recognizer.LoadGrammar(testGrammar); + + // Attach event handlers for recognition events. + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.EmulateRecognizeCompleted += + new EventHandler( + EmulateRecognizeCompletedHandler); + + completed = false; + + // Start asynchronous emulated recognition. + // This matches the grammar and generates a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing testing"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + completed = false; + + // Start asynchronous emulated recognition. + // This does not match the grammar or generate a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing one two three"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null) + { + Console.WriteLine("Recognition result = {0}", + e.Result.Text ?? ""); + } + else + { + Console.WriteLine("No recognition result"); + } + } + + // Handle the SpeechRecognizeCompleted event. + static void EmulateRecognizeCompletedHandler( + object sender, EmulateRecognizeCompletedEventArgs e) + { + if (e.Result == null) + { + Console.WriteLine("No result generated."); + } + + // Indicate the asynchronous operation is complete. + completed = true; + } + } +} + +``` + ]]> @@ -178,113 +178,113 @@ namespace SharedRecognizer Initializes a new instance of the class. - object maintains a separate set of speech recognition grammars. - - - -## Examples - The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. - -```csharp -using System; -using System.Speech.Recognition; -using System.Threading; - -namespace SharedRecognizer -{ - class Program - { - - // Indicate whether the asynchronous emulate recognition - // operation has completed. - static bool completed; - - static void Main(string[] args) - { - - // Initialize an instance of the shared recognizer. - using (SpeechRecognizer recognizer = new SpeechRecognizer()) - { - - // Create and load a sample grammar. - Grammar testGrammar = - new Grammar(new GrammarBuilder("testing testing")); - testGrammar.Name = "Test Grammar"; - recognizer.LoadGrammar(testGrammar); - - // Attach event handlers for recognition events. - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.EmulateRecognizeCompleted += - new EventHandler( - EmulateRecognizeCompletedHandler); - - completed = false; - - // Start asynchronous emulated recognition. - // This matches the grammar and generates a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing testing"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - completed = false; - - // Start asynchronous emulated recognition. - // This does not match the grammar or generate a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing one two three"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null) - { - Console.WriteLine("Recognition result = {0}", - e.Result.Text ?? ""); - } - else - { - Console.WriteLine("No recognition result"); - } - } - - // Handle the SpeechRecognizeCompleted event. - static void EmulateRecognizeCompletedHandler( - object sender, EmulateRecognizeCompletedEventArgs e) - { - if (e.Result == null) - { - Console.WriteLine("No result generated."); - } - - // Indicate the asynchronous operation is complete. - completed = true; - } - } -} - -``` - + object maintains a separate set of speech recognition grammars. + + + +## Examples + The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. + +```csharp +using System; +using System.Speech.Recognition; +using System.Threading; + +namespace SharedRecognizer +{ + class Program + { + + // Indicate whether the asynchronous emulate recognition + // operation has completed. + static bool completed; + + static void Main(string[] args) + { + + // Initialize an instance of the shared recognizer. + using (SpeechRecognizer recognizer = new SpeechRecognizer()) + { + + // Create and load a sample grammar. + Grammar testGrammar = + new Grammar(new GrammarBuilder("testing testing")); + testGrammar.Name = "Test Grammar"; + recognizer.LoadGrammar(testGrammar); + + // Attach event handlers for recognition events. + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.EmulateRecognizeCompleted += + new EventHandler( + EmulateRecognizeCompletedHandler); + + completed = false; + + // Start asynchronous emulated recognition. + // This matches the grammar and generates a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing testing"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + completed = false; + + // Start asynchronous emulated recognition. + // This does not match the grammar or generate a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing one two three"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null) + { + Console.WriteLine("Recognition result = {0}", + e.Result.Text ?? ""); + } + else + { + Console.WriteLine("No recognition result"); + } + } + + // Handle the SpeechRecognizeCompleted event. + static void EmulateRecognizeCompletedHandler( + object sender, EmulateRecognizeCompletedEventArgs e) + { + if (e.Result == null) + { + Console.WriteLine("No result generated."); + } + + // Indicate the asynchronous operation is complete. + completed = true; + } + } +} + +``` + ]]> @@ -358,43 +358,43 @@ namespace SharedRecognizer Occurs when the shared recognizer reports the level of its audio input. - property of the associated . To get the current audio level of the input to the recognizer, use the recognizer's property. - - When you create a delegate for an `AudioLevelUpdated` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example adds a handler for the `AudioLevelUpdated` event to a object. The handler outputs the new audio level to the console. - -```csharp -private SpeechRecognizer recognizer; - -// Initialize the SpeechRecognizer object. -private void Initialize() -{ - recognizer = new SpeechRecognizer(); - - // Add an event handler for the AudioLevelUpdated event. - recognizer.AudioLevelUpdated += - new EventHandler(recognizer_AudioLevelUpdated); - - // Add other initialization code here. - -} - -// Write the audio level to the console when the AudioLevelUpdated event is raised. -void recognizer_AudioLevelUpdated(object sender, AudioLevelUpdatedEventArgs e) -{ - Console.WriteLine("The audio level is now: {0}.", e.AudioLevel); -} -``` - + property of the associated . To get the current audio level of the input to the recognizer, use the recognizer's property. + + When you create a delegate for an `AudioLevelUpdated` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example adds a handler for the `AudioLevelUpdated` event to a object. The handler outputs the new audio level to the console. + +```csharp +private SpeechRecognizer recognizer; + +// Initialize the SpeechRecognizer object. +private void Initialize() +{ + recognizer = new SpeechRecognizer(); + + // Add an event handler for the AudioLevelUpdated event. + recognizer.AudioLevelUpdated += + new EventHandler(recognizer_AudioLevelUpdated); + + // Add other initialization code here. + +} + +// Write the audio level to the console when the AudioLevelUpdated event is raised. +void recognizer_AudioLevelUpdated(object sender, AudioLevelUpdatedEventArgs e) +{ + Console.WriteLine("The audio level is now: {0}.", e.AudioLevel); +} +``` + ]]> @@ -422,91 +422,91 @@ void recognizer_AudioLevelUpdated(object sender, AudioLevelUpdatedEventArgs e) Gets the current location in the audio stream being generated by the device that is providing input to the speech recognizer. The current location in the speech recognizer's audio input stream through which it has received input. - property references the recognizer's position in processing audio input. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. - - - -## Examples - In the following example, the shared speech recognizer uses a dictation grammar to match speech input. A handler for the event writes to the console the , , and when the speech recognizer detects speech at its input. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognizer recognizer; - public static void Main(string[] args) - { - - // Initialize a shared speech recognition engine. - recognizer = new SpeechRecognizer(); - - // Add handlers for events. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.StateChanged += - new EventHandler(recognizer_StateChanged); - recognizer.SpeechDetected += - new EventHandler(recognizer_SpeechDetected); - - // Create a dictation grammar. - Grammar dictation = new DictationGrammar(); - dictation.Name = "Dictation"; - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(dictation); - - // Keep the console window open. - Console.ReadLine(); - } - - // Gather information about detected speech and write it to the console. - static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine(); - Console.WriteLine("Speech detected:"); - Console.WriteLine(" Audio level: " + recognizer.AudioLevel); - Console.WriteLine(" Audio position: " + recognizer.AudioPosition); - Console.WriteLine(" Recognizer audio position: " + recognizer.RecognizerAudioPosition); - } - - // Write the text of the recognition result to the console. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Speech recognized: " + e.Result.Text); - - // Add event handler code here. - } - - // Write the name of the loaded grammar to the console. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - - // Put the shared speech recognizer into "listening" mode. - static void recognizer_StateChanged(object sender, StateChangedEventArgs e) - { - if (e.RecognizerState != RecognizerState.Stopped) - { - recognizer.EmulateRecognizeAsync("Start listening"); - } - } - } -} - -``` - + property references the recognizer's position in processing audio input. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. + + + +## Examples + In the following example, the shared speech recognizer uses a dictation grammar to match speech input. A handler for the event writes to the console the , , and when the speech recognizer detects speech at its input. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognizer recognizer; + public static void Main(string[] args) + { + + // Initialize a shared speech recognition engine. + recognizer = new SpeechRecognizer(); + + // Add handlers for events. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.StateChanged += + new EventHandler(recognizer_StateChanged); + recognizer.SpeechDetected += + new EventHandler(recognizer_SpeechDetected); + + // Create a dictation grammar. + Grammar dictation = new DictationGrammar(); + dictation.Name = "Dictation"; + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(dictation); + + // Keep the console window open. + Console.ReadLine(); + } + + // Gather information about detected speech and write it to the console. + static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine(); + Console.WriteLine("Speech detected:"); + Console.WriteLine(" Audio level: " + recognizer.AudioLevel); + Console.WriteLine(" Audio position: " + recognizer.AudioPosition); + Console.WriteLine(" Recognizer audio position: " + recognizer.RecognizerAudioPosition); + } + + // Write the text of the recognition result to the console. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Speech recognized: " + e.Result.Text); + + // Add event handler code here. + } + + // Write the name of the loaded grammar to the console. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + + // Put the shared speech recognizer into "listening" mode. + static void recognizer_StateChanged(object sender, StateChangedEventArgs e) + { + if (e.RecognizerState != RecognizerState.Stopped) + { + recognizer.EmulateRecognizeAsync("Start listening"); + } + } + } +} + +``` + ]]> @@ -532,50 +532,50 @@ namespace SampleRecognition Occurs when the recognizer encounters a problem in the audio signal. - property of the associated . - - When you create a delegate for an `AudioSignalProblemOccurred` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example defines an event handler that gathers information about an `AudioSignalProblemOccurred` event. - -``` -private SpeechRecognizer recognizer; - -// Initialize the speech recognition engine. -private void Initialize() -{ - recognizer = new SpeechRecognizer(); - - // Add a handler for the AudioSignalProblemOccurred event. - recognizer.AudioSignalProblemOccurred += - new EventHandler( - recognizer_AudioSignalProblemOccurred); -} - -// Gather information when the AudioSignalProblemOccurred event is raised. -void recognizer_AudioSignalProblemOccurred(object sender, AudioSignalProblemOccurredEventArgs e) -{ - StringBuilder details = new StringBuilder(); - - details.AppendLine("Audio signal problem information:"); - details.AppendFormat( - " Audio level: {0}" + Environment.NewLine + - " Audio position: {1}" + Environment.NewLine + - " Audio signal problem: {2}" + Environment.NewLine + - " Recognition engine audio position: {3}" + Environment.NewLine, - e.AudioLevel, e.AudioPosition, e.AudioSignalProblem, - e.recoEngineAudioPosition); - - // Insert additional event handler code here. -} -``` - + property of the associated . + + When you create a delegate for an `AudioSignalProblemOccurred` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example defines an event handler that gathers information about an `AudioSignalProblemOccurred` event. + +``` +private SpeechRecognizer recognizer; + +// Initialize the speech recognition engine. +private void Initialize() +{ + recognizer = new SpeechRecognizer(); + + // Add a handler for the AudioSignalProblemOccurred event. + recognizer.AudioSignalProblemOccurred += + new EventHandler( + recognizer_AudioSignalProblemOccurred); +} + +// Gather information when the AudioSignalProblemOccurred event is raised. +void recognizer_AudioSignalProblemOccurred(object sender, AudioSignalProblemOccurredEventArgs e) +{ + StringBuilder details = new StringBuilder(); + + details.AppendLine("Audio signal problem information:"); + details.AppendFormat( + " Audio level: {0}" + Environment.NewLine + + " Audio position: {1}" + Environment.NewLine + + " Audio signal problem: {2}" + Environment.NewLine + + " Recognition engine audio position: {3}" + Environment.NewLine, + e.AudioLevel, e.AudioPosition, e.AudioSignalProblem, + e.recoEngineAudioPosition); + + // Insert additional event handler code here. +} +``` + ]]> @@ -626,91 +626,91 @@ void recognizer_AudioSignalProblemOccurred(object sender, AudioSignalProblemOccu Occurs when the state changes in the audio being received by the recognizer. - property of the associated . To get the current audio state of the input to the recognizer, use the recognizer's property. For more information about audio state, see the enumeration. - - When you create a delegate for an `AudioStateChanged` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example uses a handler for the `AudioStateChanged` event to write the recognizer's new to the console each time it changes using a member of the enumeration. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognizer recognizer; - public static void Main(string[] args) - { - - // Initialize a shared speech recognition engine. - recognizer = new SpeechRecognizer(); - - // Create and load a grammar. - Grammar dictation = new DictationGrammar(); - dictation.Name = "Dictation Grammar"; - recognizer.LoadGrammar(dictation); - - // Attach event handlers. - recognizer.AudioStateChanged += - new EventHandler(recognizer_AudioStateChanged); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.StateChanged += - new EventHandler(recognizer_StateChanged); - - // Keep the console window open. - Console.ReadLine(); - } - - // Handle the AudioStateChanged event. - static void recognizer_AudioStateChanged(object sender, AudioStateChangedEventArgs e) - { - Console.WriteLine("The new audio state is: " + e.AudioState); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null && e.Result.Text != null) - { - Console.WriteLine(); - Console.WriteLine(" Recognized text = {0}", e.Result.Text); - Console.WriteLine(); - } - else - { - Console.WriteLine(" Recognized text not available."); - } - - Console.WriteLine(); - Console.WriteLine("Done."); - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Put the recognizer into Listening mode. - static void recognizer_StateChanged(object sender, StateChangedEventArgs e) - { - if (e.RecognizerState != RecognizerState.Stopped) - { - Console.WriteLine(); - recognizer.EmulateRecognizeAsync("Start listening"); - } - } - } -} - -``` - + property of the associated . To get the current audio state of the input to the recognizer, use the recognizer's property. For more information about audio state, see the enumeration. + + When you create a delegate for an `AudioStateChanged` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example uses a handler for the `AudioStateChanged` event to write the recognizer's new to the console each time it changes using a member of the enumeration. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognizer recognizer; + public static void Main(string[] args) + { + + // Initialize a shared speech recognition engine. + recognizer = new SpeechRecognizer(); + + // Create and load a grammar. + Grammar dictation = new DictationGrammar(); + dictation.Name = "Dictation Grammar"; + recognizer.LoadGrammar(dictation); + + // Attach event handlers. + recognizer.AudioStateChanged += + new EventHandler(recognizer_AudioStateChanged); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.StateChanged += + new EventHandler(recognizer_StateChanged); + + // Keep the console window open. + Console.ReadLine(); + } + + // Handle the AudioStateChanged event. + static void recognizer_AudioStateChanged(object sender, AudioStateChangedEventArgs e) + { + Console.WriteLine("The new audio state is: " + e.AudioState); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null && e.Result.Text != null) + { + Console.WriteLine(); + Console.WriteLine(" Recognized text = {0}", e.Result.Text); + Console.WriteLine(); + } + else + { + Console.WriteLine(" Recognized text not available."); + } + + Console.WriteLine(); + Console.WriteLine("Done."); + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Put the recognizer into Listening mode. + static void recognizer_StateChanged(object sender, StateChangedEventArgs e) + { + if (e.RecognizerState != RecognizerState.Stopped) + { + Console.WriteLine(); + recognizer.EmulateRecognizeAsync("Start listening"); + } + } + } +} + +``` + ]]> @@ -788,21 +788,21 @@ namespace SampleRecognition Emulates input to the shared speech recognizer, using text instead of audio for synchronous speech recognition. - [!NOTE] -> If Windows Speech Recognition is in the **Sleeping** state, then these methods return `null`. - - The shared recognizer raises the , , , and events as if the recognition operation is not emulated. The recognizer ignores new lines and extra white space and treats punctuation as literal input. - +> If Windows Speech Recognition is in the **Sleeping** state, then these methods return `null`. + + The shared recognizer raises the , , , and events as if the recognition operation is not emulated. The recognizer ignores new lines and extra white space and treats punctuation as literal input. + > [!NOTE] -> The object generated by the shared recognizer in response to emulated input has a value of `null` for its property. - - To emulate asynchronous recognition, use the method. - +> The object generated by the shared recognizer in response to emulated input has a value of `null` for its property. + + To emulate asynchronous recognition, use the method. + ]]> @@ -832,74 +832,74 @@ namespace SampleRecognition Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition. The recognition result for the recognition operation, or , if the operation is not successful or Windows Speech Recognition is in the **Sleeping** state. - enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. - - - -## Examples - The following example loads a sample grammar to the shared recognizer and emulates input to the recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. - -```csharp - -using System; -using System.Speech.Recognition; - -namespace SharedRecognizer -{ - class Program - { - - static void Main(string[] args) - { - // Initialize an instance of the shared recognizer. - using (SpeechRecognizer recognizer = new SpeechRecognizer()) - { - // Create and load a sample grammar. - Grammar testGrammar = - new Grammar(new GrammarBuilder("testing testing")); - testGrammar.Name = "Test Grammar"; - - recognizer.LoadGrammar(testGrammar); - - RecognitionResult result; - - // This EmulateRecognize call matches the grammar and returns a - // recognition result. - result = recognizer.EmulateRecognize("testing testing"); - OutputResult(result); - - // This EmulateRecognize call does not match the grammar and - // returns null. - result = recognizer.EmulateRecognize("testing one two three"); - OutputResult(result); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Output information about a recognition result to the console. - private static void OutputResult(RecognitionResult result) - { - if (result != null) - { - Console.WriteLine("Recognition result = {0}", - result.Text ?? ""); - } - else - { - Console.WriteLine("No recognition result"); - } - } - } -} - -``` - + enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. + + + +## Examples + The following example loads a sample grammar to the shared recognizer and emulates input to the recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. + +```csharp + +using System; +using System.Speech.Recognition; + +namespace SharedRecognizer +{ + class Program + { + + static void Main(string[] args) + { + // Initialize an instance of the shared recognizer. + using (SpeechRecognizer recognizer = new SpeechRecognizer()) + { + // Create and load a sample grammar. + Grammar testGrammar = + new Grammar(new GrammarBuilder("testing testing")); + testGrammar.Name = "Test Grammar"; + + recognizer.LoadGrammar(testGrammar); + + RecognitionResult result; + + // This EmulateRecognize call matches the grammar and returns a + // recognition result. + result = recognizer.EmulateRecognize("testing testing"); + OutputResult(result); + + // This EmulateRecognize call does not match the grammar and + // returns null. + result = recognizer.EmulateRecognize("testing one two three"); + OutputResult(result); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Output information about a recognition result to the console. + private static void OutputResult(RecognitionResult result) + { + if (result != null) + { + Console.WriteLine("Recognition result = {0}", + result.Text ?? ""); + } + else + { + Console.WriteLine("No recognition result"); + } + } + } +} + +``` + ]]> @@ -937,13 +937,13 @@ namespace SharedRecognizer Emulates input of specific words to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars. The recognition result for the recognition operation, or , if the operation is not successful or Windows Speech Recognition is in the **Sleeping** state. - object using the information provided in the `wordUnits` parameter. - - The recognizer uses the `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + object using the information provided in the `wordUnits` parameter. + + The recognizer uses the `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. + ]]> @@ -981,11 +981,11 @@ namespace SharedRecognizer Emulates input of a phrase to the shared speech recognizer, using text instead of audio for synchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars. The recognition result for the recognition operation, or , if the operation is not successful or Windows Speech Recognition is in the **Sleeping** state. - or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. + ]]> @@ -1004,21 +1004,21 @@ namespace SharedRecognizer Emulates input to the shared speech recognizer, using text instead of audio for asynchronous speech recognition. - , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. The recognizer ignores new lines and extra white space and treats punctuation as literal input. - + , , , and events as if the recognition operation is not emulated. When the recognizer completes the asynchronous recognition operation, it raises the event. The recognizer ignores new lines and extra white space and treats punctuation as literal input. + > [!NOTE] -> If Windows Speech Recognition is in the **Sleeping** state, then the shared recognizer does not process input and does not raise the and related events, but still raises the event. - +> If Windows Speech Recognition is in the **Sleeping** state, then the shared recognizer does not process input and does not raise the and related events, but still raises the event. + > [!NOTE] -> The object generated by the shared recognizer in response to emulated input has a value of `null` for its property. - - To emulate synchronous recognition, use the method. - +> The object generated by the shared recognizer in response to emulated input has a value of `null` for its property. + + To emulate synchronous recognition, use the method. + ]]> @@ -1047,103 +1047,103 @@ namespace SharedRecognizer The input for the recognition operation. Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition. - enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. - + enumeration values and . The recognizers also ignore new lines and extra white space and treat punctuation as literal input. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . - -## Examples - The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. - -```csharp -using System; -using System.Speech.Recognition; -using System.Threading; - -namespace SharedRecognizer -{ - class Program - { - static bool completed; - - static void Main(string[] args) - { - // Initialize an instance of the shared recognizer. - using (SpeechRecognizer recognizer = new SpeechRecognizer()) - { - // Create and load a sample grammar. - Grammar testGrammar = - new Grammar(new GrammarBuilder("testing testing")); - testGrammar.Name = "Test Grammar"; - - recognizer.LoadGrammar(testGrammar); - - // Attach event handlers for recognition events. - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.EmulateRecognizeCompleted += - new EventHandler( - EmulateRecognizeCompletedHandler); - - completed = false; - - // This EmulateRecognizeAsync call generates a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing testing"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - completed = false; - - // This EmulateRecognizeAsync call does not match the grammar - // or generate a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing one two three"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null) - { - Console.WriteLine("Recognition result = {0}", - e.Result.Text ?? ""); - } - else - { - Console.WriteLine("No recognition result"); - } - } - - // Handle the EmulateRecognizeCompleted event. - static void EmulateRecognizeCompletedHandler( - object sender, EmulateRecognizeCompletedEventArgs e) - { - if (e.Result == null) - { - Console.WriteLine("No result generated."); - } - - completed = true; - } - } + +## Examples + The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. + +```csharp +using System; +using System.Speech.Recognition; +using System.Threading; + +namespace SharedRecognizer +{ + class Program + { + static bool completed; + + static void Main(string[] args) + { + // Initialize an instance of the shared recognizer. + using (SpeechRecognizer recognizer = new SpeechRecognizer()) + { + // Create and load a sample grammar. + Grammar testGrammar = + new Grammar(new GrammarBuilder("testing testing")); + testGrammar.Name = "Test Grammar"; + + recognizer.LoadGrammar(testGrammar); + + // Attach event handlers for recognition events. + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.EmulateRecognizeCompleted += + new EventHandler( + EmulateRecognizeCompletedHandler); + + completed = false; + + // This EmulateRecognizeAsync call generates a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing testing"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + completed = false; + + // This EmulateRecognizeAsync call does not match the grammar + // or generate a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing one two three"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null) + { + Console.WriteLine("Recognition result = {0}", + e.Result.Text ?? ""); + } + else + { + Console.WriteLine("No recognition result"); + } + } + + // Handle the EmulateRecognizeCompleted event. + static void EmulateRecognizeCompletedHandler( + object sender, EmulateRecognizeCompletedEventArgs e) + { + if (e.Result == null) + { + Console.WriteLine("No result generated."); + } + + completed = true; + } + } } ``` @@ -1183,13 +1183,13 @@ namespace SharedRecognizer A bitwise combination of the enumeration values that describe the type of comparison to use for the emulated recognition operation. Emulates input of specific words to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the words and the loaded speech recognition grammars. - object using the information provided in the `wordUnits` parameter. - - The recognizer uses the `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + object using the information provided in the `wordUnits` parameter. + + The recognizer uses the `compareOptions` when it applies grammar rules to the input phrase. The recognizers that ship with Vista and Windows 7 ignore case if the or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> @@ -1228,11 +1228,11 @@ namespace SharedRecognizer A bitwise combination of the enumeration values that describe the type of comparison to use for the emulated recognition operation. Emulates input of a phrase to the shared speech recognizer, using text instead of audio for asynchronous speech recognition, and specifies how the recognizer handles Unicode comparison between the phrase and the loaded speech recognition grammars. - or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. - + or value is present. The recognizers always ignore the character width and never ignore the Kana type. The recognizers also ignore new lines and extra white space and treats punctuation as literal input. For more information about character width and Kana type, see the enumeration. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> @@ -1266,113 +1266,113 @@ namespace SharedRecognizer Occurs when the shared recognizer finalizes an asynchronous recognition operation for emulated input. - method begins an asynchronous recognition operation. The recognizer raises the `EmulateRecognizeCompleted` event when it finalizes the asynchronous operation. - - The asynchronous recognition operation can raise the , , , and events. The event is the last such event that the recognizer raises for a given operation. - - When you create a delegate for an `EmulateRecognizeCompleted` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** mode, then always returns null. - -```csharp -using System; -using System.Speech.Recognition; -using System.Threading; - -namespace SharedRecognizer -{ - class Program - { - // Indicate whether the asynchronous emulate recognition - // operation has completed. - static bool completed; - - static void Main(string[] args) - { - - // Initialize an instance of the shared recognizer. - using (SpeechRecognizer recognizer = new SpeechRecognizer()) - { - // Create and load a sample grammar. - Grammar testGrammar = - new Grammar(new GrammarBuilder("testing testing")); - testGrammar.Name = "Test Grammar"; - recognizer.LoadGrammar(testGrammar); - - // Attach event handlers for recognition events. - recognizer.SpeechRecognized += - new EventHandler(SpeechRecognizedHandler); - recognizer.EmulateRecognizeCompleted += - new EventHandler( - EmulateRecognizeCompletedHandler); - - completed = false; - - // This EmulateRecognizeAsync call generates a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing testing"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - completed = false; - - // This EmulateRecognizeAsync call does not match the grammar - // or generate a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing one two three"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null) - { - Console.WriteLine("Recognition result = {0}", - e.Result.Text ?? ""); - } - else - { - Console.WriteLine("No recognition result"); - } - } - - // Handle the EmulateRecognizeCompleted event. - static void EmulateRecognizeCompletedHandler( - object sender, EmulateRecognizeCompletedEventArgs e) - { - if (e.Result == null) - { - Console.WriteLine("No result generated."); - } - - // Indicate the asynchronous operation is complete. - completed = true; - } - } -} - -``` - + method begins an asynchronous recognition operation. The recognizer raises the `EmulateRecognizeCompleted` event when it finalizes the asynchronous operation. + + The asynchronous recognition operation can raise the , , , and events. The event is the last such event that the recognizer raises for a given operation. + + When you create a delegate for an `EmulateRecognizeCompleted` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** mode, then always returns null. + +```csharp +using System; +using System.Speech.Recognition; +using System.Threading; + +namespace SharedRecognizer +{ + class Program + { + // Indicate whether the asynchronous emulate recognition + // operation has completed. + static bool completed; + + static void Main(string[] args) + { + + // Initialize an instance of the shared recognizer. + using (SpeechRecognizer recognizer = new SpeechRecognizer()) + { + // Create and load a sample grammar. + Grammar testGrammar = + new Grammar(new GrammarBuilder("testing testing")); + testGrammar.Name = "Test Grammar"; + recognizer.LoadGrammar(testGrammar); + + // Attach event handlers for recognition events. + recognizer.SpeechRecognized += + new EventHandler(SpeechRecognizedHandler); + recognizer.EmulateRecognizeCompleted += + new EventHandler( + EmulateRecognizeCompletedHandler); + + completed = false; + + // This EmulateRecognizeAsync call generates a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing testing"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + completed = false; + + // This EmulateRecognizeAsync call does not match the grammar + // or generate a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing one two three"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null) + { + Console.WriteLine("Recognition result = {0}", + e.Result.Text ?? ""); + } + else + { + Console.WriteLine("No recognition result"); + } + } + + // Handle the EmulateRecognizeCompleted event. + static void EmulateRecognizeCompletedHandler( + object sender, EmulateRecognizeCompletedEventArgs e) + { + if (e.Result == null) + { + Console.WriteLine("No result generated."); + } + + // Indicate the asynchronous operation is complete. + completed = true; + } + } +} + +``` + ]]> @@ -1405,13 +1405,13 @@ namespace SharedRecognizer if this object is performing speech recognition; otherwise, . - class. - - By default, the value of the property is `true` for a newly instantiated instance of . While the recognizer is disabled, none of the recognizer's speech recognition grammars are available for recognition operations. Setting the recognizer's property has no effect on the recognizer's property. - + class. + + By default, the value of the property is `true` for a newly instantiated instance of . While the recognizer is disabled, none of the recognizer's speech recognition grammars are available for recognition operations. Setting the recognizer's property has no effect on the recognizer's property. + ]]> @@ -1438,64 +1438,64 @@ namespace SharedRecognizer Gets a collection of the objects that are loaded in this instance. A collection of the objects that the application loaded into the current instance of the shared recognizer. - grammars = new List(recognizer.Grammars); - if (grammars.Count > 0) - { - Console.WriteLine("Loaded grammars:"); - foreach (Grammar g in grammars) - { - Console.WriteLine(" Grammar: {0}", - (g.Name != null) ? g.Name : ""); - } - } - else - { - Console.WriteLine("No grammars loaded."); - } - } -} - -``` - + grammars = new List(recognizer.Grammars); + if (grammars.Count > 0) + { + Console.WriteLine("Loaded grammars:"); + foreach (Grammar g in grammars) + { + Console.WriteLine(" Grammar: {0}", + (g.Name != null) ? g.Name : ""); + } + } + else + { + Console.WriteLine("No grammars loaded."); + } + } +} + +``` + ]]> @@ -1529,111 +1529,111 @@ namespace SharedRecognizer The speech recognition grammar to load. Loads a speech recognition grammar. - to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. - - To load a speech recognition grammar asynchronously, use the method. - - - -## Examples - The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. - -```csharp -using System; -using System.Speech.Recognition; -using System.Threading; - -namespace SharedRecognizer -{ - class Program - { - // Indicate whether the asynchronous emulate recognition - // operation has completed. - static bool completed; - - static void Main(string[] args) - { - // Initialize an instance of the shared recognizer. - using (SpeechRecognizer recognizer = new SpeechRecognizer()) - { - // Create and load a sample grammar. - Grammar testGrammar = - new Grammar(new GrammarBuilder("testing testing")); - testGrammar.Name = "Test Grammar"; - - recognizer.LoadGrammar(testGrammar); - - // Attach event handlers for recognition events. - recognizer.SpeechRecognized += - new EventHandler( - SpeechRecognizedHandler); - recognizer.EmulateRecognizeCompleted += - new EventHandler( - EmulateRecognizeCompletedHandler); - - completed = false; - - // This EmulateRecognizeAsync call generates a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing testing"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - - completed = false; - - // This EmulateRecognizeAsync call does not match the grammar - // or generate a SpeechRecognized event. - recognizer.EmulateRecognizeAsync("testing one two three"); - - // Wait for the asynchronous operation to complete. - while (!completed) - { - Thread.Sleep(333); - } - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Handle the SpeechRecognized event. - static void SpeechRecognizedHandler( - object sender, SpeechRecognizedEventArgs e) - { - if (e.Result != null) - { - Console.WriteLine("Recognition result = {0}", - e.Result.Text ?? ""); - } - else - { - Console.WriteLine("No recognition result"); - } - } - - // Handle the EmulateRecognizeCompleted event. - static void EmulateRecognizeCompletedHandler( - object sender, EmulateRecognizeCompletedEventArgs e) - { - if (e.Result == null) - { - Console.WriteLine("No result generated."); - } - - completed = true; - } - } -} - -``` - + to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. + + To load a speech recognition grammar asynchronously, use the method. + + + +## Examples + The following example is part of a console application that loads a speech recognition grammar and demonstrates asynchronous emulated input, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. If Windows Speech Recognition is in the **Sleeping** state, then always returns null. + +```csharp +using System; +using System.Speech.Recognition; +using System.Threading; + +namespace SharedRecognizer +{ + class Program + { + // Indicate whether the asynchronous emulate recognition + // operation has completed. + static bool completed; + + static void Main(string[] args) + { + // Initialize an instance of the shared recognizer. + using (SpeechRecognizer recognizer = new SpeechRecognizer()) + { + // Create and load a sample grammar. + Grammar testGrammar = + new Grammar(new GrammarBuilder("testing testing")); + testGrammar.Name = "Test Grammar"; + + recognizer.LoadGrammar(testGrammar); + + // Attach event handlers for recognition events. + recognizer.SpeechRecognized += + new EventHandler( + SpeechRecognizedHandler); + recognizer.EmulateRecognizeCompleted += + new EventHandler( + EmulateRecognizeCompletedHandler); + + completed = false; + + // This EmulateRecognizeAsync call generates a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing testing"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + + completed = false; + + // This EmulateRecognizeAsync call does not match the grammar + // or generate a SpeechRecognized event. + recognizer.EmulateRecognizeAsync("testing one two three"); + + // Wait for the asynchronous operation to complete. + while (!completed) + { + Thread.Sleep(333); + } + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Handle the SpeechRecognized event. + static void SpeechRecognizedHandler( + object sender, SpeechRecognizedEventArgs e) + { + if (e.Result != null) + { + Console.WriteLine("Recognition result = {0}", + e.Result.Text ?? ""); + } + else + { + Console.WriteLine("No recognition result"); + } + } + + // Handle the EmulateRecognizeCompleted event. + static void EmulateRecognizeCompletedHandler( + object sender, EmulateRecognizeCompletedEventArgs e) + { + if (e.Result == null) + { + Console.WriteLine("No result generated."); + } + + completed = true; + } + } +} + +``` + ]]> @@ -1666,13 +1666,13 @@ namespace SharedRecognizer The speech recognition grammar to load. Asynchronously loads a speech recognition grammar. - event. The recognizer throws an exception if the speech recognition grammar is already loaded, is being asynchronously loaded, or has failed to load into any recognizer. If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. - - To load a speech recognition grammar synchronously, use the method. - + event. The recognizer throws an exception if the speech recognition grammar is already loaded, is being asynchronously loaded, or has failed to load into any recognizer. If the recognizer is running, applications must use to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. + + To load a speech recognition grammar synchronously, use the method. + This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For the stored exceptions, see the exceptions thrown by . ]]> @@ -1705,114 +1705,114 @@ namespace SharedRecognizer Occurs when the recognizer finishes the asynchronous loading of a speech recognition grammar. - method initiates an asynchronous operation. The recognizer raises the `LoadGrammarCompleted` event when it completes the operation. To get the object that the recognizer loaded, use the property of the associated . To get the current objects the recognizer has loaded, use the recognizer's property. - - When you create a delegate for a `LoadGrammarCompleted` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example creates a shared speech recognizer, and then creates two types of grammars for recognizing specific words and for accepting free dictation. The example asynchronously loads all the created grammars to the recognizer. Handlers for the recognizer's and events write to the console the name of the grammar that was used to perform the recognition and the text of the recognition result, respectively. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognizer recognizer; - public static void Main(string[] args) - { - - // Initialize a shared speech recognition engine. - recognizer = new SpeechRecognizer(); - - // Add a handler for the LoadGrammarCompleted event. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - - // Add a handler for the SpeechRecognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Add a handler for the StateChanged event. - recognizer.StateChanged += - new EventHandler(recognizer_StateChanged); - - // Create "yesno" grammar. - Choices yesChoices = new Choices(new string[] { "yes", "yup", "yeah}" }); - SemanticResultValue yesValue = - new SemanticResultValue(yesChoices, (bool)true); - Choices noChoices = new Choices(new string[] { "no", "nope", "neah" }); - SemanticResultValue noValue = - new SemanticResultValue(noChoices, (bool)false); - SemanticResultKey yesNoKey = - new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue })); - Grammar yesnoGrammar = new Grammar(yesNoKey); - yesnoGrammar.Name = "yesNo"; - - // Create "done" grammar. - Grammar doneGrammar = - new Grammar(new Choices(new string[] { "done", "exit", "quit", "stop" })); - doneGrammar.Name = "Done"; - - // Create dictation grammar. - Grammar dictation = new DictationGrammar(); - dictation.Name = "Dictation"; - - // Load grammars to the recognizer. - recognizer.LoadGrammarAsync(yesnoGrammar); - recognizer.LoadGrammarAsync(doneGrammar); - recognizer.LoadGrammarAsync(dictation); - - // Keep the console window open. - Console.ReadLine(); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); - - // Add event handler code here. - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - string grammarName = e.Grammar.Name; - bool grammarLoaded = e.Grammar.Loaded; - - if (e.Error != null) - { - Console.WriteLine("LoadGrammar for {0} failed with a {1}.", - grammarName, e.Error.GetType().Name); - - // Add exception handling code here. - } - - Console.WriteLine("Grammar {0} {1} loaded.", - grammarName, (grammarLoaded) ? "is" : "is not"); - } - - // Put the shared speech recognizer into "listening" mode. - static void recognizer_StateChanged(object sender, StateChangedEventArgs e) - { - if (e.RecognizerState != RecognizerState.Stopped) - { - recognizer.EmulateRecognizeAsync("Start listening"); - } - } - } -} - -``` - + method initiates an asynchronous operation. The recognizer raises the `LoadGrammarCompleted` event when it completes the operation. To get the object that the recognizer loaded, use the property of the associated . To get the current objects the recognizer has loaded, use the recognizer's property. + + When you create a delegate for a `LoadGrammarCompleted` event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example creates a shared speech recognizer, and then creates two types of grammars for recognizing specific words and for accepting free dictation. The example asynchronously loads all the created grammars to the recognizer. Handlers for the recognizer's and events write to the console the name of the grammar that was used to perform the recognition and the text of the recognition result, respectively. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognizer recognizer; + public static void Main(string[] args) + { + + // Initialize a shared speech recognition engine. + recognizer = new SpeechRecognizer(); + + // Add a handler for the LoadGrammarCompleted event. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + + // Add a handler for the SpeechRecognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Add a handler for the StateChanged event. + recognizer.StateChanged += + new EventHandler(recognizer_StateChanged); + + // Create "yesno" grammar. + Choices yesChoices = new Choices(new string[] { "yes", "yup", "yeah}" }); + SemanticResultValue yesValue = + new SemanticResultValue(yesChoices, (bool)true); + Choices noChoices = new Choices(new string[] { "no", "nope", "neah" }); + SemanticResultValue noValue = + new SemanticResultValue(noChoices, (bool)false); + SemanticResultKey yesNoKey = + new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue })); + Grammar yesnoGrammar = new Grammar(yesNoKey); + yesnoGrammar.Name = "yesNo"; + + // Create "done" grammar. + Grammar doneGrammar = + new Grammar(new Choices(new string[] { "done", "exit", "quit", "stop" })); + doneGrammar.Name = "Done"; + + // Create dictation grammar. + Grammar dictation = new DictationGrammar(); + dictation.Name = "Dictation"; + + // Load grammars to the recognizer. + recognizer.LoadGrammarAsync(yesnoGrammar); + recognizer.LoadGrammarAsync(doneGrammar); + recognizer.LoadGrammarAsync(dictation); + + // Keep the console window open. + Console.ReadLine(); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); + + // Add event handler code here. + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + string grammarName = e.Grammar.Name; + bool grammarLoaded = e.Grammar.Loaded; + + if (e.Error != null) + { + Console.WriteLine("LoadGrammar for {0} failed with a {1}.", + grammarName, e.Error.GetType().Name); + + // Add exception handling code here. + } + + Console.WriteLine("Grammar {0} {1} loaded.", + grammarName, (grammarLoaded) ? "is" : "is not"); + } + + // Put the shared speech recognizer into "listening" mode. + static void recognizer_StateChanged(object sender, StateChangedEventArgs e) + { + if (e.RecognizerState != RecognizerState.Stopped) + { + recognizer.EmulateRecognizeAsync("Start listening"); + } + } + } +} + +``` + ]]> @@ -1842,13 +1842,13 @@ namespace SampleRecognition Gets or sets the maximum number of alternate recognition results that the shared recognizer returns for each recognition operation. The maximum number of alternate results that the speech recognizer returns for each recognition operation. - property of the class contains the collection of objects that represent other candidate interpretations of the input. - - The default value for is 10. - + property of the class contains the collection of objects that represent other candidate interpretations of the input. + + The default value for is 10. + ]]> @@ -1877,20 +1877,20 @@ namespace SampleRecognition if the shared recognizer waits to process input while any application is handling the event; otherwise, . - event handler your application needs to change the state of the speech recognition service or change the loaded or enabled speech recognition grammars before the speech recognition service processes more input. - + event handler your application needs to change the state of the speech recognition service or change the loaded or enabled speech recognition grammars before the speech recognition service processes more input. + > [!NOTE] -> Setting the property to `true` causes each event handler in every application to block the Windows speech recognition service. - - To synchronize the changes to the shared recognizer with your application state, use the method. - - When is `true`, during the execution of the handler the speech recognition service pauses and buffers new audio input as it arrives. Once the event handler exits, the speech recognition service resumes recognition and starts processing information from its input buffer. - - To enable or disable the speech recognition service, use the property. - +> Setting the property to `true` causes each event handler in every application to block the Windows speech recognition service. + + To synchronize the changes to the shared recognizer with your application state, use the method. + + When is `true`, during the execution of the handler the speech recognition service pauses and buffers new audio input as it arrives. Once the event handler exits, the speech recognition service resumes recognition and starts processing information from its input buffer. + + To enable or disable the speech recognition service, use the property. + ]]> @@ -1919,11 +1919,11 @@ namespace SampleRecognition Gets the current location of the recognizer in the audio input that it is processing. The position of the recognizer in the audio input that it is processing. - property references the input device's position in its generated audio stream. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. - + property references the input device's position in its generated audio stream. These positions can be different. For example, if the recognizer has received input for which it has not yet generated a recognition result then the value of the property is less than the value of the property. + ]]> @@ -1950,44 +1950,44 @@ namespace SampleRecognition Gets information about the shared speech recognizer. Information about the shared speech recognizer. - @@ -2015,118 +2015,118 @@ namespace SharedRecognizer Occurs when the recognizer pauses to synchronize recognition and other operations. - to pause a running instance of before modifying its objects. For example, while the is paused, you can load, unload, enable, and disable objects. The raises this event when it is ready to accept modifications. - - When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. - - At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. - -```csharp -using System; -using System.Speech.Recognition; -using System.Collections.Generic; -using System.Threading; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognizer recognizer; - public static void Main(string[] args) - { - - // Initialize a shared speech recognition engine. - recognizer = new SpeechRecognizer(); - - // Create the first grammar - Farm. - Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); - GrammarBuilder farm = new GrammarBuilder(animals); - Grammar farmAnimals = new Grammar(farm); - farmAnimals.Name = "Farm"; - - // Create the second grammar - Fruit. - Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); - GrammarBuilder favorite = new GrammarBuilder(fruit); - Grammar favoriteFruit = new Grammar(favorite); - favoriteFruit.Name = "Fruit"; - - // Attach event handlers. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.RecognizerUpdateReached += - new EventHandler(recognizer_RecognizerUpdateReached); - recognizer.StateChanged += - new EventHandler(recognizer_StateChanged); - - // Load the Farm grammar. - recognizer.LoadGrammar(farmAnimals); - Console.WriteLine("Grammar Farm is loaded"); - - // Pause to recognize farm animals. - Thread.Sleep(7000); - Console.WriteLine(); - - // Request an update and load the Fruit grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.LoadGrammarAsync(favoriteFruit); - Thread.Sleep(5000); - - // Request an update and unload the Farm grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.UnloadGrammar(farmAnimals); - Thread.Sleep(5000); - - // Keep the console window open. - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Put the shared speech recognizer into "listening" mode. - static void recognizer_StateChanged(object sender, StateChangedEventArgs e) - { - if (e.RecognizerState != RecognizerState.Stopped) - { - recognizer.EmulateRecognizeAsync("Start listening"); - } - } - - // At the update, get the names and enabled status of the currently loaded grammars. - public static void recognizer_RecognizerUpdateReached( - object sender, RecognizerUpdateReachedEventArgs e) - { - Console.WriteLine(); - Console.WriteLine("Update reached:"); - Thread.Sleep(1000); - - string qualifier; - List grammars = new List(recognizer.Grammars); - foreach (Grammar g in grammars) - { - qualifier = (g.Enabled) ? "enabled" : "disabled"; - Console.WriteLine(" Grammar {0} is loaded and is {1}.", - g.Name, qualifier); - } - } - - // Write the text of the recognized phrase to the console. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" Speech recognized: " + e.Result.Text); - } - } -} - -``` - + to pause a running instance of before modifying its objects. For example, while the is paused, you can load, unload, enable, and disable objects. The raises this event when it is ready to accept modifications. + + When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. + + At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. + +```csharp +using System; +using System.Speech.Recognition; +using System.Collections.Generic; +using System.Threading; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognizer recognizer; + public static void Main(string[] args) + { + + // Initialize a shared speech recognition engine. + recognizer = new SpeechRecognizer(); + + // Create the first grammar - Farm. + Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); + GrammarBuilder farm = new GrammarBuilder(animals); + Grammar farmAnimals = new Grammar(farm); + farmAnimals.Name = "Farm"; + + // Create the second grammar - Fruit. + Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); + GrammarBuilder favorite = new GrammarBuilder(fruit); + Grammar favoriteFruit = new Grammar(favorite); + favoriteFruit.Name = "Fruit"; + + // Attach event handlers. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.RecognizerUpdateReached += + new EventHandler(recognizer_RecognizerUpdateReached); + recognizer.StateChanged += + new EventHandler(recognizer_StateChanged); + + // Load the Farm grammar. + recognizer.LoadGrammar(farmAnimals); + Console.WriteLine("Grammar Farm is loaded"); + + // Pause to recognize farm animals. + Thread.Sleep(7000); + Console.WriteLine(); + + // Request an update and load the Fruit grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.LoadGrammarAsync(favoriteFruit); + Thread.Sleep(5000); + + // Request an update and unload the Farm grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.UnloadGrammar(farmAnimals); + Thread.Sleep(5000); + + // Keep the console window open. + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Put the shared speech recognizer into "listening" mode. + static void recognizer_StateChanged(object sender, StateChangedEventArgs e) + { + if (e.RecognizerState != RecognizerState.Stopped) + { + recognizer.EmulateRecognizeAsync("Start listening"); + } + } + + // At the update, get the names and enabled status of the currently loaded grammars. + public static void recognizer_RecognizerUpdateReached( + object sender, RecognizerUpdateReachedEventArgs e) + { + Console.WriteLine(); + Console.WriteLine("Update reached:"); + Thread.Sleep(1000); + + string qualifier; + List grammars = new List(recognizer.Grammars); + foreach (Grammar g in grammars) + { + qualifier = (g.Enabled) ? "enabled" : "disabled"; + Console.WriteLine(" Grammar {0} is loaded and is {1}.", + g.Name, qualifier); + } + } + + // Write the text of the recognized phrase to the console. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" Speech recognized: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -2141,131 +2141,131 @@ namespace SampleRecognition Requests that the shared recognizer pause and update its state. - event to synchronize your application behavior with the state of the recognizer. - - When this method is called, the recognizer pauses or completes asynchronous operations and generates a event. A event handler can then modify the state of the recognizer in between recognition operations. - - When this method is called: - -- If the recognizer is not processing input, the recognizer immediately generates the event. - -- If the recognizer is processing input that consists of silence or background noise, the recognizer pauses the recognition operation and generates the event. - -- If the recognizer is processing input that does not consist of silence or background noise, the recognizer completes the recognition operation and then generates the event. - - While the recognizer is handling the event: - -- The recognizer does not process input, and the value of the property remains the same. - -- The recognizer continues to collect input, and the value of the property can change. - - To change whether the shared recognizer pauses recognition operations while an application is handling a event, use the property. - - - -## Examples - The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. - - At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. - -```csharp - -using System; -using System.Speech.Recognition; -using System.Collections.Generic; -using System.Threading; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognizer recognizer; - public static void Main(string[] args) - { - - // Initialize an in-process speech recognition engine and configure its input. - recognizer = new SpeechRecognizer(); - - // Create the first grammar - Farm. - Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); - GrammarBuilder farm = new GrammarBuilder(animals); - Grammar farmAnimals = new Grammar(farm); - farmAnimals.Name = "Farm"; - - // Create the second grammar - Fruit. - Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); - GrammarBuilder favorite = new GrammarBuilder(fruit); - Grammar favoriteFruit = new Grammar(favorite); - favoriteFruit.Name = "Fruit"; - - // Attach event handlers. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.RecognizerUpdateReached += - new EventHandler(recognizer_RecognizerUpdateReached); - - // Check to see if recognizer is loaded, wait if it is not loaded. - if (recognizer.State != RecognizerState.Listening) - { - Thread.Sleep(5000); - - // Put recognizer in listening state. - recognizer.EmulateRecognizeAsync("Start listening"); - } - - // Load the Farm grammar. - recognizer.LoadGrammar(farmAnimals); - Console.WriteLine("Grammar Farm is loaded"); - - // Pause to recognize farm animals. - Thread.Sleep(7000); - Console.WriteLine(); - - // Request an update and load the Fruit grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.LoadGrammarAsync(favoriteFruit); - Thread.Sleep(5000); - - // Request an update and unload the Farm grammar. - recognizer.RequestRecognizerUpdate(); - recognizer.UnloadGrammar(farmAnimals); - Thread.Sleep(5000); - - // Keep the console window open. - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - public static void recognizer_RecognizerUpdateReached(object sender, RecognizerUpdateReachedEventArgs e) - { - // At the update, get the names and enabled status of the currently loaded grammars. - Console.WriteLine(); - Console.WriteLine("Update reached:"); - Thread.Sleep(1000); - string qualifier; - List grammars = new List(recognizer.Grammars); - foreach (Grammar g in grammars) - { - qualifier = (g.Enabled) ? "enabled" : "disabled"; - Console.WriteLine(" Grammar {0} is loaded and is {1}.", - g.Name, qualifier); - } - } - - // Write the text of the recognized phrase to the console. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine(" Speech recognized: " + e.Result.Text); - } - } -} - -``` - + event to synchronize your application behavior with the state of the recognizer. + + When this method is called, the recognizer pauses or completes asynchronous operations and generates a event. A event handler can then modify the state of the recognizer in between recognition operations. + + When this method is called: + +- If the recognizer is not processing input, the recognizer immediately generates the event. + +- If the recognizer is processing input that consists of silence or background noise, the recognizer pauses the recognition operation and generates the event. + +- If the recognizer is processing input that does not consist of silence or background noise, the recognizer completes the recognition operation and then generates the event. + + While the recognizer is handling the event: + +- The recognizer does not process input, and the value of the property remains the same. + +- The recognizer continues to collect input, and the value of the property can change. + + To change whether the shared recognizer pauses recognition operations while an application is handling a event, use the property. + + + +## Examples + The following example shows a console application that loads and unloads objects. The application uses the method to request the speech recognition engine to pause so it can receive an update. The application then loads or unloads a object. + + At each update, a handler for event writes the name and status of the currently loaded objects to the console. As grammars are loaded and unloaded, the application first recognizes the names of farm animals, then the names of farm animals and the names of fruits, then only the names of fruits. + +```csharp + +using System; +using System.Speech.Recognition; +using System.Collections.Generic; +using System.Threading; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognizer recognizer; + public static void Main(string[] args) + { + + // Initialize an in-process speech recognition engine and configure its input. + recognizer = new SpeechRecognizer(); + + // Create the first grammar - Farm. + Choices animals = new Choices(new string[] { "cow", "pig", "goat" }); + GrammarBuilder farm = new GrammarBuilder(animals); + Grammar farmAnimals = new Grammar(farm); + farmAnimals.Name = "Farm"; + + // Create the second grammar - Fruit. + Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" }); + GrammarBuilder favorite = new GrammarBuilder(fruit); + Grammar favoriteFruit = new Grammar(favorite); + favoriteFruit.Name = "Fruit"; + + // Attach event handlers. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.RecognizerUpdateReached += + new EventHandler(recognizer_RecognizerUpdateReached); + + // Check to see if recognizer is loaded, wait if it is not loaded. + if (recognizer.State != RecognizerState.Listening) + { + Thread.Sleep(5000); + + // Put recognizer in listening state. + recognizer.EmulateRecognizeAsync("Start listening"); + } + + // Load the Farm grammar. + recognizer.LoadGrammar(farmAnimals); + Console.WriteLine("Grammar Farm is loaded"); + + // Pause to recognize farm animals. + Thread.Sleep(7000); + Console.WriteLine(); + + // Request an update and load the Fruit grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.LoadGrammarAsync(favoriteFruit); + Thread.Sleep(5000); + + // Request an update and unload the Farm grammar. + recognizer.RequestRecognizerUpdate(); + recognizer.UnloadGrammar(farmAnimals); + Thread.Sleep(5000); + + // Keep the console window open. + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + public static void recognizer_RecognizerUpdateReached(object sender, RecognizerUpdateReachedEventArgs e) + { + // At the update, get the names and enabled status of the currently loaded grammars. + Console.WriteLine(); + Console.WriteLine("Update reached:"); + Thread.Sleep(1000); + string qualifier; + List grammars = new List(recognizer.Grammars); + foreach (Grammar g in grammars) + { + qualifier = (g.Enabled) ? "enabled" : "disabled"; + Console.WriteLine(" Grammar {0} is loaded and is {1}.", + g.Name, qualifier); + } + } + + // Write the text of the recognized phrase to the console. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine(" Speech recognized: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -2293,13 +2293,13 @@ namespace SampleRecognition Requests that the shared recognizer pause and update its state. - event, the property of the is `null`. - - To provide a user token, use the or method. To specify an audio position offset, use the method. - + event, the property of the is `null`. + + To provide a user token, use the or method. To specify an audio position offset, use the method. + ]]> @@ -2331,13 +2331,13 @@ namespace SampleRecognition User-defined information that contains information for the operation. Requests that the shared recognizer pause and update its state and provides a user token for the associated event. - event, the property of the contains the value of the `userToken` parameter. - - To specify an audio position offset, use the method. - + event, the property of the contains the value of the `userToken` parameter. + + To specify an audio position offset, use the method. + ]]> @@ -2371,13 +2371,13 @@ namespace SampleRecognition The offset from the current to delay the request. Requests that the shared recognizer pause and update its state and provides an offset and a user token for the associated event. - equals the current plus the value of the `audioPositionAheadToRaiseUpdate` parameter. - - When the recognizer generates the event, the property of the contains the value of the `userToken` parameter. - + equals the current plus the value of the `audioPositionAheadToRaiseUpdate` parameter. + + When the recognizer generates the event, the property of the contains the value of the `userToken` parameter. + ]]> @@ -2406,84 +2406,84 @@ namespace SampleRecognition Occurs when the recognizer detects input that it can identify as speech. - property of the associated object indicates location in the input stream where the recognizer detected speech. For more information see the and properties and the and methods. - - When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example is part of a console application for choosing origin and destination cities for a flight. The application recognizes phrases such as "I want to fly from Miami to Chicago." The example uses the event to report the each time speech is detected. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize a shared speech recognition engine. - { - using (SpeechRecognizer recognizer = - new SpeechRecognizer()) - { - - // Create a grammar. - Choices cities = new Choices(new string[] { - "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); - - GrammarBuilder gb = new GrammarBuilder(); - gb.Append("I would like to fly from"); - gb.Append(cities); - gb.Append("to"); - gb.Append(cities); - - // Create a Grammar object and load it to the recognizer. - Grammar g = new Grammar(gb); - g.Name = ("City Chooser"); - recognizer.LoadGrammarAsync(g); - - // Attach event handlers. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - recognizer.SpeechDetected += - new EventHandler(recognizer_SpeechDetected); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the SpeechDetected event. - static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) - { - Console.WriteLine("Speech detected at AudioPosition = {0}", e.AudioPosition); - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Speech recognized: " + e.Result.Text); - } - } -} - -``` - + property of the associated object indicates location in the input stream where the recognizer detected speech. For more information see the and properties and the and methods. + + When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example is part of a console application for choosing origin and destination cities for a flight. The application recognizes phrases such as "I want to fly from Miami to Chicago." The example uses the event to report the each time speech is detected. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize a shared speech recognition engine. + { + using (SpeechRecognizer recognizer = + new SpeechRecognizer()) + { + + // Create a grammar. + Choices cities = new Choices(new string[] { + "Los Angeles", "New York", "Chicago", "San Francisco", "Miami", "Dallas" }); + + GrammarBuilder gb = new GrammarBuilder(); + gb.Append("I would like to fly from"); + gb.Append(cities); + gb.Append("to"); + gb.Append(cities); + + // Create a Grammar object and load it to the recognizer. + Grammar g = new Grammar(gb); + g.Name = ("City Chooser"); + recognizer.LoadGrammarAsync(g); + + // Attach event handlers. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + recognizer.SpeechDetected += + new EventHandler(recognizer_SpeechDetected); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the SpeechDetected event. + static void recognizer_SpeechDetected(object sender, SpeechDetectedEventArgs e) + { + Console.WriteLine("Speech detected at AudioPosition = {0}", e.AudioPosition); + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Speech recognized: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -2511,89 +2511,89 @@ namespace SampleRecognition Occurs when the recognizer has recognized a word or words that may be a component of multiple complete phrases in a grammar. - event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example recognizes phrases such as "Display the list of artists in the jazz category". The example uses the event to display incomplete phrase fragments in the console as they are recognized. - -``` -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize a shared speech recognition engine. - { - using (SpeechRecognizer recognizer = - new SpeechRecognizer()) - { - - // Create a grammar. - // Create lists of alternative choices. - Choices listTypes = new Choices(new string[] { "albums", "artists" }); - Choices genres = new Choices(new string[] { - "blues", "classical", "gospel", "jazz", "rock" }); - - // Create a GrammarBuilder object and assemble the grammar components. - GrammarBuilder mediaMenu = new GrammarBuilder("Display the list of"); - mediaMenu.Append(listTypes); - mediaMenu.Append("in the"); - mediaMenu.Append(genres); - mediaMenu.Append("category."); - - // Build a Grammar object from the GrammarBuilder. - Grammar mediaMenuGrammar = new Grammar(mediaMenu); - mediaMenuGrammar.Name = "Media Chooser"; - - // Attach event handlers. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.SpeechHypothesized += - new EventHandler(recognizer_SpeechHypothesized); - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(mediaMenuGrammar); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the SpeechHypothesized event. - static void recognizer_SpeechHypothesized(object sender, SpeechHypothesizedEventArgs e) - { - Console.WriteLine("Speech hypothesized: " + e.Result.Text); - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Speech recognized: " + e.Result.Text); - } - } -} - -``` - + event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example recognizes phrases such as "Display the list of artists in the jazz category". The example uses the event to display incomplete phrase fragments in the console as they are recognized. + +``` +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize a shared speech recognition engine. + { + using (SpeechRecognizer recognizer = + new SpeechRecognizer()) + { + + // Create a grammar. + // Create lists of alternative choices. + Choices listTypes = new Choices(new string[] { "albums", "artists" }); + Choices genres = new Choices(new string[] { + "blues", "classical", "gospel", "jazz", "rock" }); + + // Create a GrammarBuilder object and assemble the grammar components. + GrammarBuilder mediaMenu = new GrammarBuilder("Display the list of"); + mediaMenu.Append(listTypes); + mediaMenu.Append("in the"); + mediaMenu.Append(genres); + mediaMenu.Append("category."); + + // Build a Grammar object from the GrammarBuilder. + Grammar mediaMenuGrammar = new Grammar(mediaMenu); + mediaMenuGrammar.Name = "Media Chooser"; + + // Attach event handlers. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.SpeechHypothesized += + new EventHandler(recognizer_SpeechHypothesized); + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(mediaMenuGrammar); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the SpeechHypothesized event. + static void recognizer_SpeechHypothesized(object sender, SpeechHypothesizedEventArgs e) + { + Console.WriteLine("Speech hypothesized: " + e.Result.Text); + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Speech recognized: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -2623,92 +2623,92 @@ namespace SampleRecognition Occurs when the recognizer receives input that does not match any of the speech recognition grammars it has loaded. - property of the contains the rejected object. - - Confidence thresholds for the shared recognizer, managed by , are associated with a user profile and stored in the Windows registry. Applications should not write changes to the registry for the properties of the shared recognizer. - - When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example recognizes phrases such as "Display the list of artists in the jazz category" or "Display albums gospel". The example uses a handler for the event to display a notification in the console when the speech input cannot be matched to the contents of the grammar with sufficient confidence to produce a successful recognition. - -```csharp -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize a shared speech recognition engine. - { - using (SpeechRecognizer recognizer = - new SpeechRecognizer()) - { - - // Create a grammar. - // Create lists of alternative choices. - Choices listTypes = new Choices(new string[] { "albums", "artists" }); - Choices genres = new Choices(new string[] { - "blues", "classical", "gospel", "jazz", "rock" }); - - // Create a GrammarBuilder object and assemble the grammar components. - GrammarBuilder mediaMenu = new GrammarBuilder("Display"); - mediaMenu.Append("the list of", 0, 1); - mediaMenu.Append(listTypes); - mediaMenu.Append("in the", 0, 1); - mediaMenu.Append(genres); - mediaMenu.Append("category", 0, 1); - - // Build a Grammar object from the GrammarBuilder. - Grammar mediaMenuGrammar = new Grammar(mediaMenu); - mediaMenuGrammar.Name = "Media Chooser"; - - // Attach event handlers. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - recognizer.SpeechRecognitionRejected += - new EventHandler(recognizer_SpeechRecognitionRejected); - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(mediaMenuGrammar); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the SpeechRecognitionRejected event. - static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) - { - Console.WriteLine("Speech input was rejected."); - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Speech recognized: " + e.Result.Text); - } - } -} - -``` - + property of the contains the rejected object. + + Confidence thresholds for the shared recognizer, managed by , are associated with a user profile and stored in the Windows registry. Applications should not write changes to the registry for the properties of the shared recognizer. + + When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example recognizes phrases such as "Display the list of artists in the jazz category" or "Display albums gospel". The example uses a handler for the event to display a notification in the console when the speech input cannot be matched to the contents of the grammar with sufficient confidence to produce a successful recognition. + +```csharp +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize a shared speech recognition engine. + { + using (SpeechRecognizer recognizer = + new SpeechRecognizer()) + { + + // Create a grammar. + // Create lists of alternative choices. + Choices listTypes = new Choices(new string[] { "albums", "artists" }); + Choices genres = new Choices(new string[] { + "blues", "classical", "gospel", "jazz", "rock" }); + + // Create a GrammarBuilder object and assemble the grammar components. + GrammarBuilder mediaMenu = new GrammarBuilder("Display"); + mediaMenu.Append("the list of", 0, 1); + mediaMenu.Append(listTypes); + mediaMenu.Append("in the", 0, 1); + mediaMenu.Append(genres); + mediaMenu.Append("category", 0, 1); + + // Build a Grammar object from the GrammarBuilder. + Grammar mediaMenuGrammar = new Grammar(mediaMenu); + mediaMenuGrammar.Name = "Media Chooser"; + + // Attach event handlers. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + recognizer.SpeechRecognitionRejected += + new EventHandler(recognizer_SpeechRecognitionRejected); + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(mediaMenuGrammar); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the SpeechRecognitionRejected event. + static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e) + { + Console.WriteLine("Speech input was rejected."); + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Speech recognized: " + e.Result.Text); + } + } +} + +``` + ]]> @@ -2738,100 +2738,100 @@ namespace SampleRecognition Occurs when the recognizer receives input that matches one of its speech recognition grammars. - property of the contains the accepted object. - - Confidence thresholds for the shared recognizer, managed by , are associated with a user profile and stored in the Windows registry. Applications should not write changes to the registry for the properties of the shared recognizer. - - When the recognizer receives input that matches a grammar, the object can raise the event. The object's event is raised prior to the speech recognizer's event. - - When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example is part of a console application that loads a speech recognition grammar and demonstrates speech input to the shared recognizer, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. - - Spoken input such as "I want to fly from Chicago to Miami" will trigger a event. Speaking the phrase "Fly me from Houston to Chicago " will not trigger a event. - - The example uses a handler for the event to display successfully recognized phrases and the semantics they contain in the console. - -```csharp -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - static void Main(string[] args) - - // Initialize a shared speech recognition engine. - { - using (SpeechRecognizer recognizer = new SpeechRecognizer()) - { - - // Create SemanticResultValue objects that contain cities and airport codes. - SemanticResultValue chicago = new SemanticResultValue("Chicago", "ORD"); - SemanticResultValue boston = new SemanticResultValue("Boston", "BOS"); - SemanticResultValue miami = new SemanticResultValue("Miami", "MIA"); - SemanticResultValue dallas = new SemanticResultValue("Dallas", "DFW"); - - // Create a Choices object and add the SemanticResultValue objects, using - // implicit conversion from SemanticResultValue to GrammarBuilder - Choices cities = new Choices(); - cities.Add(new Choices(new GrammarBuilder[] { chicago, boston, miami, dallas })); - - // Build the phrase and add SemanticResultKeys. - GrammarBuilder chooseCities = new GrammarBuilder(); - chooseCities.Append("I want to fly from"); - chooseCities.Append(new SemanticResultKey("origin", cities)); - chooseCities.Append("to"); - chooseCities.Append(new SemanticResultKey("destination", cities)); - - // Build a Grammar object from the GrammarBuilder. - Grammar bookFlight = new Grammar(chooseCities); - bookFlight.Name = "Book Flight"; - - // Add a handler for the LoadGrammarCompleted event. - recognizer.LoadGrammarCompleted += - new EventHandler(recognizer_LoadGrammarCompleted); - - // Add a handler for the SpeechRecognized event. - recognizer.SpeechRecognized += - new EventHandler(recognizer_SpeechRecognized); - - // Load the grammar object to the recognizer. - recognizer.LoadGrammarAsync(bookFlight); - - // Keep the console window open. - Console.ReadLine(); - } - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - Console.WriteLine("Grammar loaded: " + e.Grammar.Name); - Console.WriteLine(); - } - - // Handle the SpeechRecognized event. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Speech recognized: " + e.Result.Text); - Console.WriteLine(); - Console.WriteLine("Semantic results:"); - Console.WriteLine(" The flight origin is " + e.Result.Semantics["origin"].Value); - Console.WriteLine(" The flight destination is " + e.Result.Semantics["destination"].Value); - } - } -} - -``` - + property of the contains the accepted object. + + Confidence thresholds for the shared recognizer, managed by , are associated with a user profile and stored in the Windows registry. Applications should not write changes to the registry for the properties of the shared recognizer. + + When the recognizer receives input that matches a grammar, the object can raise the event. The object's event is raised prior to the speech recognizer's event. + + When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example is part of a console application that loads a speech recognition grammar and demonstrates speech input to the shared recognizer, the associated recognition results, and the associated events raised by the speech recognizer. If Windows Speech Recognition is not running, then starting this application will also start Windows Speech Recognition. + + Spoken input such as "I want to fly from Chicago to Miami" will trigger a event. Speaking the phrase "Fly me from Houston to Chicago " will not trigger a event. + + The example uses a handler for the event to display successfully recognized phrases and the semantics they contain in the console. + +```csharp +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + static void Main(string[] args) + + // Initialize a shared speech recognition engine. + { + using (SpeechRecognizer recognizer = new SpeechRecognizer()) + { + + // Create SemanticResultValue objects that contain cities and airport codes. + SemanticResultValue chicago = new SemanticResultValue("Chicago", "ORD"); + SemanticResultValue boston = new SemanticResultValue("Boston", "BOS"); + SemanticResultValue miami = new SemanticResultValue("Miami", "MIA"); + SemanticResultValue dallas = new SemanticResultValue("Dallas", "DFW"); + + // Create a Choices object and add the SemanticResultValue objects, using + // implicit conversion from SemanticResultValue to GrammarBuilder + Choices cities = new Choices(); + cities.Add(new Choices(new GrammarBuilder[] { chicago, boston, miami, dallas })); + + // Build the phrase and add SemanticResultKeys. + GrammarBuilder chooseCities = new GrammarBuilder(); + chooseCities.Append("I want to fly from"); + chooseCities.Append(new SemanticResultKey("origin", cities)); + chooseCities.Append("to"); + chooseCities.Append(new SemanticResultKey("destination", cities)); + + // Build a Grammar object from the GrammarBuilder. + Grammar bookFlight = new Grammar(chooseCities); + bookFlight.Name = "Book Flight"; + + // Add a handler for the LoadGrammarCompleted event. + recognizer.LoadGrammarCompleted += + new EventHandler(recognizer_LoadGrammarCompleted); + + // Add a handler for the SpeechRecognized event. + recognizer.SpeechRecognized += + new EventHandler(recognizer_SpeechRecognized); + + // Load the grammar object to the recognizer. + recognizer.LoadGrammarAsync(bookFlight); + + // Keep the console window open. + Console.ReadLine(); + } + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + Console.WriteLine("Grammar loaded: " + e.Grammar.Name); + Console.WriteLine(); + } + + // Handle the SpeechRecognized event. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Speech recognized: " + e.Result.Text); + Console.WriteLine(); + Console.WriteLine("Semantic results:"); + Console.WriteLine(" The flight origin is " + e.Result.Semantics["origin"].Value); + Console.WriteLine(" The flight destination is " + e.Result.Semantics["destination"].Value); + } + } +} + +``` + ]]> @@ -2863,11 +2863,11 @@ namespace SampleRecognition Gets the state of a object. The state of the object. - enumeration. - + enumeration. + ]]> @@ -2895,110 +2895,110 @@ namespace SampleRecognition Occurs when the running state of the Windows Desktop Speech Technology recognition engine changes. - or state. - - To get the state of the shared recognizer at the time of the event, use the property of the associated . To get the current state of the shared recognizer, use the recognizer's property. - - When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). - - - -## Examples - The following example creates a shared speech recognizer, and then creates two types of grammars for recognizing specific words and for accepting free dictation. The example asynchronously loads all the created grammars to the recognizer. A handler for the event uses the method to put Windows Recognition in "listening" mode. - -```csharp -using System; -using System.Speech.Recognition; - -namespace SampleRecognition -{ - class Program - { - private static SpeechRecognizer recognizer; - public static void Main(string[] args) - { - - // Initialize a shared speech recognition engine. - recognizer = new SpeechRecognizer(); - - // Add a handler for the LoadGrammarCompleted event. - recognizer.LoadGrammarCompleted += new EventHandler(recognizer_LoadGrammarCompleted); - - // Add a handler for the SpeechRecognized event. - recognizer.SpeechRecognized += new EventHandler(recognizer_SpeechRecognized); - - // Add a handler for the StateChanged event. - recognizer.StateChanged += new EventHandler(recognizer_StateChanged); - - // Create "yesno" grammar. - Choices yesChoices = new Choices(new string[] { "yes", "yup", "yah}" }); - SemanticResultValue yesValue = - new SemanticResultValue(yesChoices, (bool)true); - Choices noChoices = new Choices(new string[] { "no", "nope", "nah" }); - SemanticResultValue noValue = new SemanticResultValue(noChoices, (bool)false); - SemanticResultKey yesNoKey = - new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue })); - Grammar yesnoGrammar = new Grammar(yesNoKey); - yesnoGrammar.Name = "yesNo"; - - // Create "done" grammar. - Grammar doneGrammar = - new Grammar(new Choices(new string[] { "done", "exit", "quit", "stop" })); - doneGrammar.Name = "Done"; - - // Create dictation grammar. - Grammar dictation = new DictationGrammar(); - dictation.Name = "Dictation"; - - // Load grammars to the recognizer. - recognizer.LoadGrammarAsync(yesnoGrammar); - recognizer.LoadGrammarAsync(doneGrammar); - recognizer.LoadGrammarAsync(dictation); - - // Keep the console window open. - Console.ReadLine(); - } - - // Put the shared speech recognizer into "listening" mode. - static void recognizer_StateChanged(object sender, StateChangedEventArgs e) - { - if (e.RecognizerState != RecognizerState.Stopped) - { - recognizer.EmulateRecognizeAsync("Start listening"); - } - } - - // Write the text of the recognized phrase to the console. - static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) - { - Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); - - // Add event handler code here. - } - - // Handle the LoadGrammarCompleted event. - static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) - { - string grammarName = e.Grammar.Name; - bool grammarLoaded = e.Grammar.Loaded; - if (e.Error != null) - { - Console.WriteLine("LoadGrammar for {0} failed with a {1}.", - grammarName, e.Error.GetType().Name); - } - - // Add exception handling code here. - Console.WriteLine("Grammar {0} {1} loaded.", - grammarName, (grammarLoaded) ? "is" : "is not"); - } - } -} - -``` - + or state. + + To get the state of the shared recognizer at the time of the event, use the property of the associated . To get the current state of the shared recognizer, use the recognizer's property. + + When you create a delegate for a event, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see [Events and Delegates](https://go.microsoft.com/fwlink/?LinkId=162418). + + + +## Examples + The following example creates a shared speech recognizer, and then creates two types of grammars for recognizing specific words and for accepting free dictation. The example asynchronously loads all the created grammars to the recognizer. A handler for the event uses the method to put Windows Recognition in "listening" mode. + +```csharp +using System; +using System.Speech.Recognition; + +namespace SampleRecognition +{ + class Program + { + private static SpeechRecognizer recognizer; + public static void Main(string[] args) + { + + // Initialize a shared speech recognition engine. + recognizer = new SpeechRecognizer(); + + // Add a handler for the LoadGrammarCompleted event. + recognizer.LoadGrammarCompleted += new EventHandler(recognizer_LoadGrammarCompleted); + + // Add a handler for the SpeechRecognized event. + recognizer.SpeechRecognized += new EventHandler(recognizer_SpeechRecognized); + + // Add a handler for the StateChanged event. + recognizer.StateChanged += new EventHandler(recognizer_StateChanged); + + // Create "yesno" grammar. + Choices yesChoices = new Choices(new string[] { "yes", "yup", "yah}" }); + SemanticResultValue yesValue = + new SemanticResultValue(yesChoices, (bool)true); + Choices noChoices = new Choices(new string[] { "no", "nope", "nah" }); + SemanticResultValue noValue = new SemanticResultValue(noChoices, (bool)false); + SemanticResultKey yesNoKey = + new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue })); + Grammar yesnoGrammar = new Grammar(yesNoKey); + yesnoGrammar.Name = "yesNo"; + + // Create "done" grammar. + Grammar doneGrammar = + new Grammar(new Choices(new string[] { "done", "exit", "quit", "stop" })); + doneGrammar.Name = "Done"; + + // Create dictation grammar. + Grammar dictation = new DictationGrammar(); + dictation.Name = "Dictation"; + + // Load grammars to the recognizer. + recognizer.LoadGrammarAsync(yesnoGrammar); + recognizer.LoadGrammarAsync(doneGrammar); + recognizer.LoadGrammarAsync(dictation); + + // Keep the console window open. + Console.ReadLine(); + } + + // Put the shared speech recognizer into "listening" mode. + static void recognizer_StateChanged(object sender, StateChangedEventArgs e) + { + if (e.RecognizerState != RecognizerState.Stopped) + { + recognizer.EmulateRecognizeAsync("Start listening"); + } + } + + // Write the text of the recognized phrase to the console. + static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) + { + Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text); + + // Add event handler code here. + } + + // Handle the LoadGrammarCompleted event. + static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e) + { + string grammarName = e.Grammar.Name; + bool grammarLoaded = e.Grammar.Loaded; + if (e.Error != null) + { + Console.WriteLine("LoadGrammar for {0} failed with a {1}.", + grammarName, e.Error.GetType().Name); + } + + // Add exception handling code here. + Console.WriteLine("Grammar {0} {1} loaded.", + grammarName, (grammarLoaded) ? "is" : "is not"); + } + } +} + +``` + ]]> @@ -3027,13 +3027,13 @@ namespace SampleRecognition Unloads all speech recognition grammars from the shared recognizer. - method. - + method. + ]]> @@ -3066,11 +3066,11 @@ namespace SampleRecognition The grammar to unload. Unloads a specified speech recognition grammar from the shared recognizer. - to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. To unload all grammars, use the method. - + to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar. To unload all grammars, use the method. + ]]> diff --git a/xml/System.Speech.Recognition/SubsetMatchingMode.xml b/xml/System.Speech.Recognition/SubsetMatchingMode.xml index 0a85cd8a4ce..89e077b0bef 100644 --- a/xml/System.Speech.Recognition/SubsetMatchingMode.xml +++ b/xml/System.Speech.Recognition/SubsetMatchingMode.xml @@ -34,11 +34,11 @@ This mode indicates that a subset of the phrase will be used to successfully recognize the entire phrase if the following are true: -- One or more words in the phrase are recognized in the audio input. +- One or more words in the phrase are recognized in the audio input. -- The relative order of those recognized words is the same as in the phrase. +- The relative order of those recognized words is the same as in the phrase. -- Matched words may consist of only prepositions and articles. +- Matched words may consist of only prepositions and articles. Adding the phrase "a car the truck a boat that plane" to a grammar using OrderedSubset mode produces the following result on recognition: @@ -54,11 +54,11 @@ This mode indicates that a subset of the phrase will be used to successfully recognize the entire phrase if the following are true: -- One or more words in the phrase are recognized in the audio input, and +- One or more words in the phrase are recognized in the audio input, and -- The relative order of those recognized words is the same as in the phrase. +- The relative order of those recognized words is the same as in the phrase. -- Matched words cannot consist of only prepositions and articles. +- Matched words cannot consist of only prepositions and articles. Adding the phrase "a car the truck a boat that plane" to a grammar using OrderedSubsetContentRequired mode produces the following result on recognition: @@ -74,11 +74,11 @@ This mode indicates that a subset of the phrase will be used to successfully recognize the entire phrase if the following are true: -- One or more words in the phrase are recognized in the audio input as a sequence of the phrase, and +- One or more words in the phrase are recognized in the audio input as a sequence of the phrase, and -- The relative order of those recognized words is the same as in the phrase. +- The relative order of those recognized words is the same as in the phrase. -- Matched words may consist of only prepositions and articles. +- Matched words may consist of only prepositions and articles. Adding the phrase "a car the truck a boat that plane" to a grammar using Subsequence mode produces the following result on recognition: @@ -94,9 +94,9 @@ This mode indicates that a subset of the phrase will be used to successfully recognize the entire phrase if the following are true: -- One or more words in the match string are recognized in the audio input as a sequence of the phrase. +- One or more words in the match string are recognized in the audio input as a sequence of the phrase. -- Matched words cannot consist of only prepositions and articles. +- Matched words cannot consist of only prepositions and articles. Adding the phrase "a car the truck a boat that plane" to a grammar using SubsequenceContentRequired mode produces the following result on recognition: diff --git a/xml/System.Speech.Synthesis.TtsEngine/FragmentState.xml b/xml/System.Speech.Synthesis.TtsEngine/FragmentState.xml index a597e2bccbe..6c62167f3e5 100644 --- a/xml/System.Speech.Synthesis.TtsEngine/FragmentState.xml +++ b/xml/System.Speech.Synthesis.TtsEngine/FragmentState.xml @@ -32,19 +32,19 @@ Provides detailed information about a . - instances are obtained from the on objects. - - The information in is obtained by parsing the attributes decorating speech text in the Synthesize Speech Markup Language (SSML) used as an input to a synthesis engine. - - A object can exist for any synthesizer action request as specified by its property. However, the meaning of its members may change for different actions. For more information on synthesize actions, see for more information about specifying synthesizer actions. - -- Specification and control of the quality of the spoken output is largely handled through the , , and - -- Phonetic, language, and linguist structure information is available through , , and . - + instances are obtained from the on objects. + + The information in is obtained by parsing the attributes decorating speech text in the Synthesize Speech Markup Language (SSML) used as an input to a synthesis engine. + + A object can exist for any synthesizer action request as specified by its property. However, the meaning of its members may change for different actions. For more information on synthesize actions, see for more information about specifying synthesizer actions. + +- Specification and control of the quality of the spoken output is largely handled through the , , and + +- Phonetic, language, and linguist structure information is available through , , and . + ]]> @@ -83,36 +83,36 @@ The id of the language being used. Corresponds to the XML xml:lang attribute. The emphasis to be applied to speech output or pauses. The time allotted to speak the text of the . - A member of the class, indicating the type of text of the and the level of detail required for accurate rendering of the contained text. - - Corresponds to the <say-as> XML tag in the SSML specification - + A member of the class, indicating the type of text of the and the level of detail required for accurate rendering of the contained text. + + Corresponds to the <say-as> XML tag in the SSML specification + The argument may be . - A object indicating characteristics of the speech output such as pitch, speaking rate and volume. - + A object indicating characteristics of the speech output such as pitch, speaking rate and volume. + Corresponds to the <prosody> XML tag in the SSML specification. - An array of objects providing the phonetic pronunciation for text contained in the , using the International Phonetic Alphabet (IPA) specification. - - Corresponds to the <phoneme> XML tag in the SSML specification. - + An array of objects providing the phonetic pronunciation for text contained in the , using the International Phonetic Alphabet (IPA) specification. + + Corresponds to the <phoneme> XML tag in the SSML specification. + This argument may be . Constructs a new instance of . - objects. Instead, instances are created by applications using the members of the name space. - - If the value specified by the `action` argument is , the value supplied by the `emphasis` argument is either: - -- If positive, the time in millisecond to pause - -- If negative a member of the enumeration - - If the value specified by the `action` argument is not , the `emphasis` argument must be of type . - - If the value of the `duration` argument and The property or the object specified by the `prosody` argument differ, the value on the object is used. - + objects. Instead, instances are created by applications using the members of the name space. + + If the value specified by the `action` argument is , the value supplied by the `emphasis` argument is either: + +- If positive, the time in millisecond to pause + +- If negative a member of the enumeration + + If the value specified by the `action` argument is not , the `emphasis` argument must be of type . + + If the value of the `duration` argument and The property or the object specified by the `prosody` argument differ, the value on the object is used. + ]]> International Phonetic Alphabet @@ -203,23 +203,23 @@ Returns instructions on how to emphasize a . Returns an value indicating how to emphasize a . - depends on the value returned by the property on the current . - -1. If the value of is - - - If is positive, the value returned should be interpreted as the length of the silence in milliseconds. - - - If is negative, the value returned should be interpreted as a member of the . - - Emphasis information returned by when the property is corresponds to the attributes of the `` element of SSML input to a speech synthesizer engine. - -2. For all other values of , the values should be interpreted as being of . - - Emphasis information returned by for spoken words corresponds to the attributes of the `` element of SSML input to a speech synthesizer engine. - + depends on the value returned by the property on the current . + +1. If the value of is + + - If is positive, the value returned should be interpreted as the length of the silence in milliseconds. + + - If is negative, the value returned should be interpreted as a member of the . + + Emphasis information returned by when the property is corresponds to the attributes of the `` element of SSML input to a speech synthesizer engine. + +2. For all other values of , the values should be interpreted as being of . + + Emphasis information returned by for spoken words corresponds to the attributes of the `` element of SSML input to a speech synthesizer engine. + ]]> @@ -258,11 +258,11 @@ Determines if a given object is an instance equal to the current instance of . Returns , if the current instance of and that obtained from the provided by the argument describe the same state. Returns if the current and the argument do not support the same state. - provided by the `obj` argument cannot be cast to . - + provided by the `obj` argument cannot be cast to . + ]]> @@ -349,11 +349,11 @@ Returns the language supported by the current . Returns an containing an identifier for the language used by the current . - are those used with the Windows Speech API (SAPI) and are generated from the "`xml:lang`" attribute on SSML input to a speech synthesizer engine. - + are those used with the Windows Speech API (SAPI) and are generated from the "`xml:lang`" attribute on SSML input to a speech synthesizer engine. + ]]> @@ -447,13 +447,13 @@ Returns phonetic information for a . To be added. - property corresponds to the `` XML tag of SSML input to a synthesis engine. - - The array of `char` objects returned by property expresses pronunciation using the International Phonetic Alphabet (IPA). - + property corresponds to the `` XML tag of SSML input to a synthesis engine. + + The array of `char` objects returned by property expresses pronunciation using the International Phonetic Alphabet (IPA). + ]]> International Phonetic Alphabet @@ -486,11 +486,11 @@ Returns detailed information about the pitch, speaking rate, and volume of speech output. Returns a valid instance of containing the pitch, speaking rate, and volume settings, and changes to those setting, for speech output. - corresponds to the `` XML tag in the SSML specification - + corresponds to the `` XML tag in the SSML specification + ]]> @@ -522,17 +522,17 @@ Returns information about the context for the generation of speech from text. Returns a value instance if the SSML used by a speech synthesis engine contains detailed information about the context to be used to generate speech, otherwise . - corresponds to the `` tag and its attributes in the SSML specification, and can specify: - -- The content type (such as currency, date, or address) or language construct represented by property of a . - -- Optional formatting information to handle the content type represented by property of a , for example, a date syntax. - -- The detail to be used in generating speech from the property of a , for example, whether to explicitly render punctuation. - + corresponds to the `` tag and its attributes in the SSML specification, and can specify: + +- The content type (such as currency, date, or address) or language construct represented by property of a . + +- Optional formatting information to handle the content type represented by property of a , for example, a date syntax. + +- The detail to be used in generating speech from the property of a , for example, whether to explicitly render punctuation. + ]]> diff --git a/xml/System.Speech.Synthesis/InstalledVoice.xml b/xml/System.Speech.Synthesis/InstalledVoice.xml index a007892810d..a4eea979673 100644 --- a/xml/System.Speech.Synthesis/InstalledVoice.xml +++ b/xml/System.Speech.Synthesis/InstalledVoice.xml @@ -28,88 +28,88 @@ Contains information about a speech synthesis voice installed in Windows. - property, a speech synthesis engine that supports that language-country code must be installed. The speech synthesis engines that shipped with Microsoft Windows 7 work with the following language-country codes: - -- en-US. English (United States) - -- zh-CN. Chinese (China) - -- zh-TW. Chinese (Taiwan) - - Two-letter language codes such as "en" are also permitted. - - - -## Examples - The following example is part of a console application that initializes a object and outputs to the console a list of the installed voices (engines for speech synthesis) and demonstrates the information that is available for each voice. - -```csharp -using System; -using System.Speech.Synthesis; -using System.Speech.AudioFormat; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Output information about all of the installed voices. - Console.WriteLine("Installed voices -"); - foreach (InstalledVoice voice in synth.GetInstalledVoices()) - { - VoiceInfo info = voice.VoiceInfo; - string AudioFormats = ""; - foreach (SpeechAudioFormatInfo fmt in info.SupportedAudioFormats) - { - AudioFormats += String.Format("{0}\n", - fmt.EncodingFormat.ToString()); - } - - Console.WriteLine(" Name: " + info.Name); - Console.WriteLine(" Culture: " + info.Culture); - Console.WriteLine(" Age: " + info.Age); - Console.WriteLine(" Gender: " + info.Gender); - Console.WriteLine(" Description: " + info.Description); - Console.WriteLine(" ID: " + info.Id); - Console.WriteLine(" Enabled: " + voice.Enabled); - if (info.SupportedAudioFormats.Count != 0) - { - Console.WriteLine( " Audio formats: " + AudioFormats); - } - else - { - Console.WriteLine(" No supported audio formats found"); - } - - string AdditionalInfo = ""; - foreach (string key in info.AdditionalInfo.Keys) - { - AdditionalInfo += String.Format(" {0}: {1}\n", key, info.AdditionalInfo[key]); - } - - Console.WriteLine(" Additional Info - " + AdditionalInfo); - Console.WriteLine(); - } - } - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + property, a speech synthesis engine that supports that language-country code must be installed. The speech synthesis engines that shipped with Microsoft Windows 7 work with the following language-country codes: + +- en-US. English (United States) + +- zh-CN. Chinese (China) + +- zh-TW. Chinese (Taiwan) + + Two-letter language codes such as "en" are also permitted. + + + +## Examples + The following example is part of a console application that initializes a object and outputs to the console a list of the installed voices (engines for speech synthesis) and demonstrates the information that is available for each voice. + +```csharp +using System; +using System.Speech.Synthesis; +using System.Speech.AudioFormat; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Output information about all of the installed voices. + Console.WriteLine("Installed voices -"); + foreach (InstalledVoice voice in synth.GetInstalledVoices()) + { + VoiceInfo info = voice.VoiceInfo; + string AudioFormats = ""; + foreach (SpeechAudioFormatInfo fmt in info.SupportedAudioFormats) + { + AudioFormats += String.Format("{0}\n", + fmt.EncodingFormat.ToString()); + } + + Console.WriteLine(" Name: " + info.Name); + Console.WriteLine(" Culture: " + info.Culture); + Console.WriteLine(" Age: " + info.Age); + Console.WriteLine(" Gender: " + info.Gender); + Console.WriteLine(" Description: " + info.Description); + Console.WriteLine(" ID: " + info.Id); + Console.WriteLine(" Enabled: " + voice.Enabled); + if (info.SupportedAudioFormats.Count != 0) + { + Console.WriteLine( " Audio formats: " + AudioFormats); + } + else + { + Console.WriteLine(" No supported audio formats found"); + } + + string AdditionalInfo = ""; + foreach (string key in info.AdditionalInfo.Keys) + { + AdditionalInfo += String.Format(" {0}: {1}\n", key, info.AdditionalInfo[key]); + } + + Console.WriteLine(" Additional Info - " + AdditionalInfo); + Console.WriteLine(); + } + } + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -145,11 +145,11 @@ namespace SampleSynthesis Gets or sets whether a voice can be used to generate speech. Returns a that represents the enabled state of the voice. - property is `true` by default. When an application calls , the method verifies that each of the voices it finds in the registry meets certain minimum criteria. For any voice that fails verification, sets its property to `false`. An application cannot select a voice whose property is `false`. Typically, applications will not set a voice's property. - + property is `true` by default. When an application calls , the method verifies that each of the voices it finds in the registry meets certain minimum criteria. For any voice that fails verification, sets its property to `false`. An application cannot select a voice whose property is `false`. Typically, applications will not set a voice's property. + ]]> @@ -182,11 +182,11 @@ namespace SampleSynthesis Determines if a given object is an instance of and equal to the current instance of . Returns if the current instance of and that obtained from the argument are equal, otherwise returns . - provided by the `obj` argument cannot be cast to . - + provided by the `obj` argument cannot be cast to . + ]]> diff --git a/xml/System.Speech.Synthesis/PromptBuilder.xml b/xml/System.Speech.Synthesis/PromptBuilder.xml index 6ba4aeaa02f..3efd2f091dc 100644 --- a/xml/System.Speech.Synthesis/PromptBuilder.xml +++ b/xml/System.Speech.Synthesis/PromptBuilder.xml @@ -29,21 +29,21 @@ Creates an empty object and provides methods for adding content, selecting voices, controlling voice attributes, and controlling the pronunciation of spoken words. - , you can add a variety of content types to a prompt, including plain text, SSML markup (as a string or a file), recorded audio, or even another object. - - To append text to a object and optionally control voice attributes such as emphasis, rate, and volume, use one of the methods. You can also control voice attributes as a group with the and methods. - - You can append text and control what is spoken or how it is pronounced using the , , , , or methods. - - Change the currently selected speaking voice in the prompt using one of the overloaded methods, naming a specific voice to use or specifying required voice characteristics, such as age and gender. - - To generate speech from a object, you can pass it as an argument to the method. - - For more information, see [Constructing a Complex Prompt](https://learn.microsoft.com/previous-versions/office/developer/speech-technologies/hh361616(v%3doffice.14)). - + , you can add a variety of content types to a prompt, including plain text, SSML markup (as a string or a file), recorded audio, or even another object. + + To append text to a object and optionally control voice attributes such as emphasis, rate, and volume, use one of the methods. You can also control voice attributes as a group with the and methods. + + You can append text and control what is spoken or how it is pronounced using the , , , , or methods. + + Change the currently selected speaking voice in the prompt using one of the overloaded methods, naming a specific voice to use or specifying required voice characteristics, such as age and gender. + + To generate speech from a object, you can pass it as an argument to the method. + + For more information, see [Constructing a Complex Prompt](https://learn.microsoft.com/previous-versions/office/developer/speech-technologies/hh361616(v%3doffice.14)). + ]]> @@ -74,30 +74,30 @@ Creates a new instance of the class. - instance and adds a text string to it. - -```csharp -using System.Speech.Synthesis; - -public void MySimpleText () -{ - PromptBuilder builder = new PromptBuilder (); - builder.AppendText("Hello world!"); -} -``` - - The following markup shows the equivalent in Speech Synthesis Markup Language (SSML), (`xml:lang` is a required attribute of the `speak` element): - -```xml - - Hello world! - -``` - + instance and adds a text string to it. + +```csharp +using System.Speech.Synthesis; + +public void MySimpleText () +{ + PromptBuilder builder = new PromptBuilder (); + builder.AppendText("Hello world!"); +} +``` + + The following markup shows the equivalent in Speech Synthesis Markup Language (SSML), (`xml:lang` is a required attribute of the `speak` element): + +```xml + + Hello world! + +``` + ]]> @@ -123,47 +123,47 @@ public void MySimpleText () Provides information about a specific culture, such as its language, the name of the culture, the writing system, the calendar used, and how to format dates and sort strings. Creates a new instance of the class and specifies a culture. - property. The object will attempt to select an installed voice that supports the language specified by the `culture` parameter to process the prompt. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. - - To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. - - Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: - -- en-US. English (United States) - -- zh-CN. Chinese (China) - -- zh-TW. Chinese (Taiwan) - - Two-letter language codes such as "en" are also permitted. - - - -## Examples - The example that follows creates a instance and specifies its . - -```csharp -using System.Speech.Synthesis; - -public void MySimpleText () -{ - PromptBuilder builder = new PromptBuilder(new System.Globalization.CultureInfo("en-US")); - builder.AppendText("Hello world!"); -} -``` - - The following markup shows the equivalent SSML: - -```xml - - Hello world! - -``` - + property. The object will attempt to select an installed voice that supports the language specified by the `culture` parameter to process the prompt. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. + + To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. + + Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: + +- en-US. English (United States) + +- zh-CN. Chinese (China) + +- zh-TW. Chinese (Taiwan) + + Two-letter language codes such as "en" are also permitted. + + + +## Examples + The example that follows creates a instance and specifies its . + +```csharp +using System.Speech.Synthesis; + +public void MySimpleText () +{ + PromptBuilder builder = new PromptBuilder(new System.Globalization.CultureInfo("en-US")); + builder.AppendText("Hello world!"); +} +``` + + The following markup shows the equivalent SSML: + +```xml + + Hello world! + +``` + ]]> @@ -227,35 +227,35 @@ public void MySimpleText () URI for the audio file. Appends the audio file at the specified URI to the . - class and then adds text to it, followed by an audio file. - -```csharp -using System.Speech.PromptBuilder; - -public void SimpleConcatenation() -{ - // Add a prompt fragment from a .wav file. - PromptBuilder builder = new PromptBuilder (); - builder.AppendText("How are you today?"); - builder.AppendAudio(new Uri ("http://www.speech.microsoft.com/ding.wav")); -} -``` - - The following markup shows the equivalent SSML markup. - -```xml - - - How are you today? - -``` - + class and then adds text to it, followed by an audio file. + +```csharp +using System.Speech.PromptBuilder; + +public void SimpleConcatenation() +{ + // Add a prompt fragment from a .wav file. + PromptBuilder builder = new PromptBuilder (); + builder.AppendText("How are you today?"); + builder.AppendAudio(new Uri ("http://www.speech.microsoft.com/ding.wav")); +} +``` + + The following markup shows the equivalent SSML markup. + +```xml + + + How are you today? + +``` + ]]> @@ -286,39 +286,39 @@ public void SimpleConcatenation() A string containing alternate text representing the audio. Appends the specified audio file and alternate text to the . - instance and specifies text to speak if the audio file cannot be played. - -```csharp -using System.Speech.PromptBuilder; - -public void SimpleConcatenation() -{ - - // Concatenate a prompt fragment from a .wav file. - PromptBuilder builder = new PromptBuilder (); - builder.AppendAudio(new Uri ("C:\\OnHold.wav"), "Your call will be answered in the order it was received"); -} -``` - - The following markup shows the equivalent SSML markup. - -```xml - - - - - -``` - + instance and specifies text to speak if the audio file cannot be played. + +```csharp +using System.Speech.PromptBuilder; + +public void SimpleConcatenation() +{ + + // Concatenate a prompt fragment from a .wav file. + PromptBuilder builder = new PromptBuilder (); + builder.AppendAudio(new Uri ("C:\\OnHold.wav"), "Your call will be answered in the order it was received"); +} +``` + + The following markup shows the equivalent SSML markup. + +```xml + + + + + +``` + ]]> @@ -347,73 +347,73 @@ public void SimpleConcatenation() A string containing the name of the appended bookmark. Appends a bookmark to the object. - event if it encounters a bookmark while speaking a prompt using any of the , , , or methods. - - - -## Examples - The following example creates a prompt that includes two bookmarks and sends the output to a WAV file for playback. The handler for the event writes the name of the bookmark and its position in the audio stream when the event was raised to the console. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToWaveFile(@"C:\test\weather.wav"); - - // Create a SoundPlayer instance to play the output audio file. - System.Media.SoundPlayer m_SoundPlayer = - new System.Media.SoundPlayer(@"C:\test\weather.wav"); - - // Build a prompt and append bookmarks. - PromptBuilder builder = new PromptBuilder( - new System.Globalization.CultureInfo("en-US")); - builder.AppendText( - "The weather forecast for today is partly cloudy with some sun breaks."); - builder.AppendBookmark("Daytime forecast"); - builder.AppendText( - "Tonight's weather will be cloudy with a 30% chance of showers."); - builder.AppendBookmark("Nighttime forecast"); - - // Add a handler for the BookmarkReached event. - synth.BookmarkReached += - new EventHandler(synth_BookmarkReached); - - // Speak the prompt and play back the output file. - synth.Speak(builder); - m_SoundPlayer.Play(); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - - // Write the name and position of the bookmark to the console. - static void synth_BookmarkReached(object sender, BookmarkReachedEventArgs e) - { - Console.WriteLine("Bookmark ({0}) reached at: {1} ", - e.Bookmark, e.AudioPosition); - } - } -} - -``` - + event if it encounters a bookmark while speaking a prompt using any of the , , , or methods. + + + +## Examples + The following example creates a prompt that includes two bookmarks and sends the output to a WAV file for playback. The handler for the event writes the name of the bookmark and its position in the audio stream when the event was raised to the console. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToWaveFile(@"C:\test\weather.wav"); + + // Create a SoundPlayer instance to play the output audio file. + System.Media.SoundPlayer m_SoundPlayer = + new System.Media.SoundPlayer(@"C:\test\weather.wav"); + + // Build a prompt and append bookmarks. + PromptBuilder builder = new PromptBuilder( + new System.Globalization.CultureInfo("en-US")); + builder.AppendText( + "The weather forecast for today is partly cloudy with some sun breaks."); + builder.AppendBookmark("Daytime forecast"); + builder.AppendText( + "Tonight's weather will be cloudy with a 30% chance of showers."); + builder.AppendBookmark("Nighttime forecast"); + + // Add a handler for the BookmarkReached event. + synth.BookmarkReached += + new EventHandler(synth_BookmarkReached); + + // Speak the prompt and play back the output file. + synth.Speak(builder); + m_SoundPlayer.Play(); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + + // Write the name and position of the bookmark to the console. + static void synth_BookmarkReached(object sender, BookmarkReachedEventArgs e) + { + Console.WriteLine("Bookmark ({0}) reached at: {1} ", + e.Bookmark, e.AudioPosition); + } + } +} + +``` + ]]> @@ -448,56 +448,56 @@ namespace SampleSynthesis Appends a break to the object. - will determine a duration value based on the linguistic context. - - - -## Examples - The following example builds a prompt containing two sentences separated by a break and speaks the prompt to the default audio device on the computer. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Build a prompt with two sentences separated by a break. - PromptBuilder builder = new PromptBuilder( - new System.Globalization.CultureInfo("en-US")); - builder.AppendText( - "Tonight's movie showings in theater A are at 5:45, 7:15, and 8:45."); - builder.AppendBreak(); - builder.AppendText( - "Tonight's movie showings in theater B are at 5:15, 7:30, and 9:15."); - - // Speak the prompt. - synth.Speak(builder); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + will determine a duration value based on the linguistic context. + + + +## Examples + The following example builds a prompt containing two sentences separated by a break and speaks the prompt to the default audio device on the computer. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Build a prompt with two sentences separated by a break. + PromptBuilder builder = new PromptBuilder( + new System.Globalization.CultureInfo("en-US")); + builder.AppendText( + "Tonight's movie showings in theater A are at 5:45, 7:15, and 8:45."); + builder.AppendBreak(); + builder.AppendText( + "Tonight's movie showings in theater B are at 5:15, 7:30, and 9:15."); + + // Speak the prompt. + synth.Speak(builder); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -526,59 +526,59 @@ namespace SampleSynthesis Indicates the duration of the break. Appends a break to the object and specifies its strength (duration). - enumeration represent a range of separation intervals (pauses) between word boundaries. The speech synthesis engine determines the exact duration of the interval. When a break is requested, one of these values is passed to the text-to-speech (TTS) engine, which contains a mapping between these values and the corresponding millisecond break values. - -## Examples - The following example builds a prompt containing two sentences separated by a break and sends the output to a WAV file for playback. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToWaveFile(@"C:\test\weather.wav"); - - // Create a SoundPlayer instance to play the output audio file. - System.Media.SoundPlayer m_SoundPlayer = - new System.Media.SoundPlayer(@"C:\test\weather.wav"); - - // Build a prompt with two sentences separated by a break. - PromptBuilder builder = new PromptBuilder( - new System.Globalization.CultureInfo("en-US")); - builder.AppendText( - "Tonight's movie showings in theater A are at 5:45, 7:15, and 8:45"); - builder.AppendBreak(PromptBreak.Medium); - builder.AppendText( - "Tonight's movie showings in theater B are at 5:15, 7:15, and 9:15"); - - // Speak the prompt and play back the output file. - synth.Speak(builder); - m_SoundPlayer.Play(); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + +## Examples + The following example builds a prompt containing two sentences separated by a break and sends the output to a WAV file for playback. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToWaveFile(@"C:\test\weather.wav"); + + // Create a SoundPlayer instance to play the output audio file. + System.Media.SoundPlayer m_SoundPlayer = + new System.Media.SoundPlayer(@"C:\test\weather.wav"); + + // Build a prompt with two sentences separated by a break. + PromptBuilder builder = new PromptBuilder( + new System.Globalization.CultureInfo("en-US")); + builder.AppendText( + "Tonight's movie showings in theater A are at 5:45, 7:15, and 8:45"); + builder.AppendBreak(PromptBreak.Medium); + builder.AppendText( + "Tonight's movie showings in theater B are at 5:15, 7:15, and 9:15"); + + // Speak the prompt and play back the output file. + synth.Speak(builder); + m_SoundPlayer.Play(); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -607,55 +607,55 @@ namespace SampleSynthesis The time in ticks, where one tick equals 100 nanoseconds. Appends a break of the specified duration to the object. - @@ -684,64 +684,64 @@ namespace SampleSynthesis The content to append. Appends a object to another object. - instances and then appends them to a third . - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToWaveFile(@"C:\test\showtimes.wav"); - - // Create a SoundPlayer instance to play the output audio file. - System.Media.SoundPlayer m_SoundPlayer = - new System.Media.SoundPlayer(@"C:\test\showtimes.wav"); - - // Build child prompts. - PromptBuilder theatreA = new PromptBuilder(); - theatreA.AppendText( - "Tonight's movie showings in theater A are at 5:45, 7:15, and 9:30"); - theatreA.AppendBreak(PromptBreak.Large); - PromptBuilder theatreB = new PromptBuilder(); - theatreB.AppendText( - "Tonight's movie showings in theater B are at 5:15, 7:15, and 9:15"); - - // Build the parent prompt and append the two child prompts. - PromptBuilder showTimes = new PromptBuilder( - new System.Globalization.CultureInfo("en-US")); - showTimes.AppendText( - "The following are the show times for tonight's movies:"); - showTimes.AppendPromptBuilder(theatreA); - showTimes.AppendPromptBuilder(theatreB); - - // Speak the prompt and play back the output file. - synth.Speak(showTimes); - m_SoundPlayer.Play(); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + instances and then appends them to a third . + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToWaveFile(@"C:\test\showtimes.wav"); + + // Create a SoundPlayer instance to play the output audio file. + System.Media.SoundPlayer m_SoundPlayer = + new System.Media.SoundPlayer(@"C:\test\showtimes.wav"); + + // Build child prompts. + PromptBuilder theatreA = new PromptBuilder(); + theatreA.AppendText( + "Tonight's movie showings in theater A are at 5:45, 7:15, and 9:30"); + theatreA.AppendBreak(PromptBreak.Large); + PromptBuilder theatreB = new PromptBuilder(); + theatreB.AppendText( + "Tonight's movie showings in theater B are at 5:15, 7:15, and 9:15"); + + // Build the parent prompt and append the two child prompts. + PromptBuilder showTimes = new PromptBuilder( + new System.Globalization.CultureInfo("en-US")); + showTimes.AppendText( + "The following are the show times for tonight's movies:"); + showTimes.AppendPromptBuilder(theatreA); + showTimes.AppendPromptBuilder(theatreB); + + // Speak the prompt and play back the output file. + synth.Speak(showTimes); + m_SoundPlayer.Play(); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -779,66 +779,66 @@ namespace SampleSynthesis A fully qualified path to the SSML file to append. Appends the SSML file at the specified path to the object. - . - - - -## Examples - The example that follows creates a object and appends the contents of an SSML file using the method. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and append a file that defines an SSML prompt. - PromptBuilder ssmlFile = new PromptBuilder(); - ssmlFile.AppendSsml("c:\\test\\Weather.ssml"); - - // Speak the contents of the SSML prompt. - synth.Speak(ssmlFile); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - - The following is the SSML file that the preceding example references. - -```xml - - - - The weather forecast for today is partly cloudy with some sun breaks. - - -``` - + . + + + +## Examples + The example that follows creates a object and appends the contents of an SSML file using the method. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and append a file that defines an SSML prompt. + PromptBuilder ssmlFile = new PromptBuilder(); + ssmlFile.AppendSsml("c:\\test\\Weather.ssml"); + + // Speak the contents of the SSML prompt. + synth.Speak(ssmlFile); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + + The following is the SSML file that the preceding example references. + +```xml + + + + The weather forecast for today is partly cloudy with some sun breaks. + + +``` + ]]> @@ -867,65 +867,65 @@ namespace SampleSynthesis A fully qualified URI to the SSML file to append. Appends the SSML file at the specified URI to the object. - . - - - -## Examples - The example that follows creates a object and appends the contents of an SSML file using the method. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and append a file that defines an SSML prompt. - PromptBuilder ssmlFile = new PromptBuilder(); - ssmlFile.AppendSsml(new Uri("c:\\test\\Weather.ssml")); - - // Speak the contents of the SSML prompt. - synth.Speak(ssmlFile); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} -``` - - The following is the SSML file that the preceding example references. - -```xml - - - - The weather forecast for today is partly cloudy with some sun breaks. - - -``` - + . + + + +## Examples + The example that follows creates a object and appends the contents of an SSML file using the method. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and append a file that defines an SSML prompt. + PromptBuilder ssmlFile = new PromptBuilder(); + ssmlFile.AppendSsml(new Uri("c:\\test\\Weather.ssml")); + + // Speak the contents of the SSML prompt. + synth.Speak(ssmlFile); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} +``` + + The following is the SSML file that the preceding example references. + +```xml + + + + The weather forecast for today is partly cloudy with some sun breaks. + + +``` + ]]> @@ -954,70 +954,70 @@ namespace SampleSynthesis A fully qualified name to the XML file to append. Appends an XMLReader object that references an SSML prompt to the object. - . - - - -## Examples - The following example creates a object from an object that references a file containing Speech Synthesis Markup Language (SSML) markup. - -```csharp -using System; -using System.Xml; -using System.IO; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToWaveFile(@"C:\test\weather.wav"); - - // Create a SoundPlayer instance to play the output audio file. - System.Media.SoundPlayer m_SoundPlayer = - new System.Media.SoundPlayer(@"C:\test\weather.wav"); - - // Create the path to the SSML file. - string weatherFile = Path.GetFullPath("c:\\test\\Weather.xml"); - PromptBuilder builder = null; - - // Create an XML Reader from the file, create a PromptBuilder and - // append the XmlReader. - if (File.Exists(weatherFile)) - { - XmlReader reader = XmlReader.Create(weatherFile); - builder = new PromptBuilder(); - builder.AppendSsml(reader); - reader.Close(); - } - - // Speak the prompt and play back the output file. - synth.Speak(builder); - m_SoundPlayer.Play(); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + . + + + +## Examples + The following example creates a object from an object that references a file containing Speech Synthesis Markup Language (SSML) markup. + +```csharp +using System; +using System.Xml; +using System.IO; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToWaveFile(@"C:\test\weather.wav"); + + // Create a SoundPlayer instance to play the output audio file. + System.Media.SoundPlayer m_SoundPlayer = + new System.Media.SoundPlayer(@"C:\test\weather.wav"); + + // Create the path to the SSML file. + string weatherFile = Path.GetFullPath("c:\\test\\Weather.xml"); + PromptBuilder builder = null; + + // Create an XML Reader from the file, create a PromptBuilder and + // append the XmlReader. + if (File.Exists(weatherFile)) + { + XmlReader reader = XmlReader.Create(weatherFile); + builder = new PromptBuilder(); + builder.AppendSsml(reader); + reader.Close(); + } + + // Speak the prompt and play back the output file. + synth.Speak(builder); + m_SoundPlayer.Play(); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -1056,30 +1056,30 @@ namespace SampleSynthesis A string containing SSML markup. Appends the specified string containing SSML markup to the object. - chair "); -``` - + chair "); +``` + > [!NOTE] -> The string used as an argument to cannot include a `speak` element. - - When using to specify inline pronunciations in a `phoneme` element, you can use phones from any of the following phonetic alphabets, provided that the current speech engine supports it: - -- International Phonetic Alphabet (IPA) - -- Universal Phone Set (UPS) - -- SAPI Phone Set - - Any SSML-compliant speech engine will speak phones from the IPA. - - You can also append a file containing SSML markup using one of the methods. To append text to be spoken that is not formatted with markup language, use one of the , , , or methods. - +> The string used as an argument to cannot include a `speak` element. + + When using to specify inline pronunciations in a `phoneme` element, you can use phones from any of the following phonetic alphabets, provided that the current speech engine supports it: + +- International Phonetic Alphabet (IPA) + +- Universal Phone Set (UPS) + +- SAPI Phone Set + + Any SSML-compliant speech engine will speak phones from the IPA. + + You can also append a file containing SSML markup using one of the methods. To append text to be spoken that is not formatted with markup language, use one of the , , , or methods. + ]]> @@ -1117,50 +1117,50 @@ builder.AppendSsmlMarkup(" chair A string containing the text to be spoken. Specifies text to append to the object. - . - - - -## Examples - The example that follows creates a object and appends a text string using the method. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and append a text string. - PromptBuilder speakText = new PromptBuilder(); - speakText.AppendText("Say the name of the song you want to hear"); - - // Speak the contents of the prompt. - synth.Speak(speakText); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} -``` - + . + + + +## Examples + The example that follows creates a object and appends a text string using the method. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and append a text string. + PromptBuilder speakText = new PromptBuilder(); + speakText.AppendText("Say the name of the song you want to hear"); + + // Speak the contents of the prompt. + synth.Speak(speakText); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} +``` + ]]> @@ -1191,11 +1191,11 @@ namespace SampleSynthesis The value for the emphasis or stress to apply to the text. Appends text to the object and specifies the degree of emphasis for the text. - @@ -1226,48 +1226,48 @@ namespace SampleSynthesis The value for the speaking rate to apply to the text. Appends text to the object and specifies the speaking rate for the text. - object and appends text strings. The example uses the method to specify a slow speaking rate for the string being added, which enumerates the contents of an order. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and add content. - PromptBuilder speakRate = new PromptBuilder(); - speakRate.AppendText("Your order for"); - speakRate.AppendText("one kitchen sink and one faucet", PromptRate.Slow); - speakRate.AppendText("has been confirmed."); - - // Speak the contents of the SSML prompt. - synth.Speak(speakRate); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + object and appends text strings. The example uses the method to specify a slow speaking rate for the string being added, which enumerates the contents of an order. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and add content. + PromptBuilder speakRate = new PromptBuilder(); + speakRate.AppendText("Your order for"); + speakRate.AppendText("one kitchen sink and one faucet", PromptRate.Slow); + speakRate.AppendText("has been confirmed."); + + // Speak the contents of the SSML prompt. + synth.Speak(speakRate); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -1298,54 +1298,54 @@ namespace SampleSynthesis The value for the speaking volume (loudness) to apply to the text. Appends text to the object and specifies the volume to speak the text. - setting for is full volume, which is the same as . The other settings decrease the volume of speech output relative to full volume. - - - -## Examples - The following example uses the method to specify volume settings that the should apply to speech output. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Build a prompt that applies different volume settings. - PromptBuilder builder = new PromptBuilder(); - builder.AppendText("This is the default speaking volume.", PromptVolume.Default); - builder.AppendBreak(); - builder.AppendText("This is the extra loud speaking volume.", PromptVolume.ExtraLoud); - builder.AppendBreak(); - builder.AppendText("This is the medium speaking volume.", PromptVolume.Medium); - - // Speak the prompt. - synth.Speak(builder); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} -``` - + setting for is full volume, which is the same as . The other settings decrease the volume of speech output relative to full volume. + + + +## Examples + The following example uses the method to specify volume settings that the should apply to speech output. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Build a prompt that applies different volume settings. + PromptBuilder builder = new PromptBuilder(); + builder.AppendText("This is the default speaking volume.", PromptVolume.Default); + builder.AppendBreak(); + builder.AppendText("This is the extra loud speaking volume.", PromptVolume.ExtraLoud); + builder.AppendBreak(); + builder.AppendText("This is the medium speaking volume.", PromptVolume.Medium); + + // Speak the prompt. + synth.Speak(builder); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} +``` + ]]> @@ -1376,21 +1376,21 @@ namespace SampleSynthesis A string containing the text to be spoken. Appends text to the object and specifies the alias text to be spoken in place of the appended text. - object. The synthesizer will pronounce "S S M L". - -``` -PromptBuilder alias = new PromptBuilder(); -alias.AppendTextWithAlias("Speech Synthesis Markup Language","SSML"); -``` - + object. The synthesizer will pronounce "S S M L". + +``` +PromptBuilder alias = new PromptBuilder(); +alias.AppendTextWithAlias("Speech Synthesis Markup Language","SSML"); +``` + ]]> @@ -1430,57 +1430,57 @@ alias.AppendTextWithAlias("Speech Synthesis Markup Language","SSML"); The content type of the text. Appends text to the object and specifies the content type using a member of the enumeration. - @@ -1511,11 +1511,11 @@ namespace SampleSynthesis The content type of the text. Appends text to the object and a that specifies the content type of the text. - enumeration. However, the TTS engine must support the parameter that you specify. - + enumeration. However, the TTS engine must support the parameter that you specify. + ]]> @@ -1546,45 +1546,45 @@ namespace SampleSynthesis A string containing phones to be spoken from the International Phonetic Alphabet (IPA). Appends text to the object and specifies the pronunciation for the text. - . - - The IPA publishes a [chart](https://www.phon.ucl.ac.uk/home/wells/ipa-unicode.htm) that lists its phones and maps them to Unicode numbers. - - Some phones in the IPA alphabet have the same representations as letters in the Latin alphabet. In those cases, it is possible to type the Latin character and have the proper representation for a phone. Because the Latin characters as commonly used in text may represent several phones of the IPA phone set, simply typing the Latin character might not result in the precise IPA phone desired. Other phones of the IPA alphabet need to be represented in code as character references consisting of an ampersand (&), the number sign (#), and a Unicode number for the desired phone in hexadecimal or decimal, all followed by a semicolon (;). For example, a schwa (&\#x0259;) would be represented by `ə`. - - To add new or custom pronunciations for multiple words, for example to express regional dialects or to add proper names or vocabulary that is specific to an educational or medical discipline, build a lexicon and add it to the using . - - - -## Examples - The following example initializes a new instance of the class. It then appends the text string "My name is" to the instance. Finally, it appends a string containing the proper name "DuBois" and specifies the pronunciation of the name. - -```csharp -public void ProperName() -{ - PromptBuilder builder = new PromptBuilder(); - builder.AppendText("My name is"); - - // Add a proper name and its pronunciation. - builder.AppendTextWithPronunciation("DuBois", "duˈbwɑ"); -} -``` - - The following markup shows the SSML that this object generates. - -```xml - - My name is DuBois - -``` - + . + + The IPA publishes a [chart](https://www.phon.ucl.ac.uk/home/wells/ipa-unicode.htm) that lists its phones and maps them to Unicode numbers. + + Some phones in the IPA alphabet have the same representations as letters in the Latin alphabet. In those cases, it is possible to type the Latin character and have the proper representation for a phone. Because the Latin characters as commonly used in text may represent several phones of the IPA phone set, simply typing the Latin character might not result in the precise IPA phone desired. Other phones of the IPA alphabet need to be represented in code as character references consisting of an ampersand (&), the number sign (#), and a Unicode number for the desired phone in hexadecimal or decimal, all followed by a semicolon (;). For example, a schwa (&\#x0259;) would be represented by `ə`. + + To add new or custom pronunciations for multiple words, for example to express regional dialects or to add proper names or vocabulary that is specific to an educational or medical discipline, build a lexicon and add it to the using . + + + +## Examples + The following example initializes a new instance of the class. It then appends the text string "My name is" to the instance. Finally, it appends a string containing the proper name "DuBois" and specifies the pronunciation of the name. + +```csharp +public void ProperName() +{ + PromptBuilder builder = new PromptBuilder(); + builder.AppendText("My name is"); + + // Add a proper name and its pronunciation. + builder.AppendTextWithPronunciation("DuBois", "duˈbwɑ"); +} +``` + + The following markup shows the SSML that this object generates. + +```xml + + My name is DuBois + +``` + ]]> International Phonetic Association @@ -1640,25 +1640,25 @@ public void ProperName() Gets or sets the culture information for the object. To be added. - object will attempt to select an installed voice that supports the language specified by the property to process the prompt. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. - - A culture may also be specified within the prompt for discreet sections of content using the , , and methods. A culture specified for a portion of content using one of the above methods will override the property while in effect, and the will attempt to select an installed voice that supports the language specified by the `culture` parameter of the method. - - To correctly pronounce words in the language specified by the property, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. - - Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: - -- en-US. English (United States) - -- zh-CN. Chinese (China) - -- zh-TW. Chinese (Taiwan) - - Two-letter language codes such as "en" are also permitted. For a comprehensive list of language codes, see [Language Identifier Constants and Strings](/windows/win32/intl/language-identifier-constants-and-strings). - + object will attempt to select an installed voice that supports the language specified by the property to process the prompt. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. + + A culture may also be specified within the prompt for discreet sections of content using the , , and methods. A culture specified for a portion of content using one of the above methods will override the property while in effect, and the will attempt to select an installed voice that supports the language specified by the `culture` parameter of the method. + + To correctly pronounce words in the language specified by the property, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. + + Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: + +- en-US. English (United States) + +- zh-CN. Chinese (China) + +- zh-TW. Chinese (Taiwan) + + Two-letter language codes such as "en" are also permitted. For a comprehensive list of language codes, see [Language Identifier Constants and Strings](/windows/win32/intl/language-identifier-constants-and-strings). + ]]> @@ -1684,11 +1684,11 @@ public void ProperName() Specifies the end of a paragraph in the object. - for an example. - + for an example. + ]]> @@ -1714,11 +1714,11 @@ public void ProperName() Specifies the end of a sentence in the object. - for an example. - + for an example. + ]]> @@ -1744,11 +1744,11 @@ public void ProperName() Specifies the end of a style in the object. - method stops the current speaking style. The speaking style reverts to the setting that was in effect before the method initiated a new speaking style. See for an example. - + method stops the current speaking style. The speaking style reverts to the setting that was in effect before the method initiated a new speaking style. See for an example. + ]]> @@ -1774,11 +1774,11 @@ public void ProperName() Specifies the end of use of a voice in the object. - method stops the use of the current voice for speech output. The voice reverts to the setting that was in effect before the method initiated a new voice. - + method stops the use of the current voice for speech output. The voice reverts to the setting that was in effect before the method initiated a new voice. + ]]> @@ -1814,11 +1814,11 @@ public void ProperName() Specifies the start of a paragraph in the object, and optionally specifies a language. - @@ -1850,62 +1850,62 @@ public void ProperName() Specifies the start of a paragraph in the object. - object, appends content, and organizes the content into paragraphs and sentences. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and add content as paragraphs and sentences. - PromptBuilder parSent = new PromptBuilder(); - parSent.StartParagraph(); - parSent.StartSentence(); - parSent.AppendText("Introducing the sentence element."); - parSent.EndSentence(); - parSent.StartSentence(); - parSent.AppendText("You can use it to mark individual sentences."); - parSent.EndSentence(); - parSent.EndParagraph(); - parSent.StartParagraph(); - parSent.AppendText("Another simple paragraph. Sentence structure in this paragraph" + - "is not explicitly marked."); - parSent.EndParagraph(); - - // Speak the contents of the SSML prompt. - synth.Speak(parSent); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + object, appends content, and organizes the content into paragraphs and sentences. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and add content as paragraphs and sentences. + PromptBuilder parSent = new PromptBuilder(); + parSent.StartParagraph(); + parSent.StartSentence(); + parSent.AppendText("Introducing the sentence element."); + parSent.EndSentence(); + parSent.StartSentence(); + parSent.AppendText("You can use it to mark individual sentences."); + parSent.EndSentence(); + parSent.EndParagraph(); + parSent.StartParagraph(); + parSent.AppendText("Another simple paragraph. Sentence structure in this paragraph" + + "is not explicitly marked."); + parSent.EndParagraph(); + + // Speak the contents of the SSML prompt. + synth.Speak(parSent); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -1934,25 +1934,25 @@ namespace SampleSynthesis Provides information about a specific culture, such as the language, the name of the culture, the writing system, the calendar used, and how to format dates and sort strings. Specifies the start of a paragraph in the specified culture in the object. - property of the object that contains it. While in effect, the value of the `culture` parameter will override the property. The will attempt to select an installed voice that supports the language specified by the `culture` parameter to speak the paragraph. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. To stop using the voice specified by , call . - - To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. - - Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: - -- en-US. English (United States) - -- zh-CN. Chinese (China) - -- zh-TW. Chinese (Taiwan) - - Two-letter language codes such as "en" are also permitted. - + property of the object that contains it. While in effect, the value of the `culture` parameter will override the property. The will attempt to select an installed voice that supports the language specified by the `culture` parameter to speak the paragraph. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. To stop using the voice specified by , call . + + To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. + + Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: + +- en-US. English (United States) + +- zh-CN. Chinese (China) + +- zh-TW. Chinese (Taiwan) + + Two-letter language codes such as "en" are also permitted. + ]]> @@ -1965,11 +1965,11 @@ namespace SampleSynthesis Specifies the start of a sentence in the object, and optionally specifies a language. - @@ -2001,62 +2001,62 @@ namespace SampleSynthesis Specifies the start of a sentence in the object. - object, appends content, and organizes the content into paragraphs and sentences. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and add content as paragraphs and sentences. - PromptBuilder parSent = new PromptBuilder(); - parSent.StartParagraph(); - parSent.StartSentence(); - parSent.AppendText("Introducing the sentence element."); - parSent.EndSentence(); - parSent.StartSentence(); - parSent.AppendText("You can use it to mark individual sentences."); - parSent.EndSentence(); - parSent.EndParagraph(); - parSent.StartParagraph(); - parSent.AppendText("Another simple paragraph. Sentence structure in this paragraph" + - "is not explicitly marked."); - parSent.EndParagraph(); - - // Speak the contents of the SSML prompt. - synth.Speak(parSent); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + object, appends content, and organizes the content into paragraphs and sentences. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and add content as paragraphs and sentences. + PromptBuilder parSent = new PromptBuilder(); + parSent.StartParagraph(); + parSent.StartSentence(); + parSent.AppendText("Introducing the sentence element."); + parSent.EndSentence(); + parSent.StartSentence(); + parSent.AppendText("You can use it to mark individual sentences."); + parSent.EndSentence(); + parSent.EndParagraph(); + parSent.StartParagraph(); + parSent.AppendText("Another simple paragraph. Sentence structure in this paragraph" + + "is not explicitly marked."); + parSent.EndParagraph(); + + // Speak the contents of the SSML prompt. + synth.Speak(parSent); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> @@ -2085,27 +2085,27 @@ namespace SampleSynthesis Provides information about a specific culture, such as the language, the name of the culture, the writing system, the calendar used, and how to format dates and sort strings. Specifies the start of a sentence in the specified culture in the object. - property of the object that contains them. - - While in effect, the value of the `culture` parameter will override the property and the `culture` parameter for the paragraph that contains the sentence. The will attempt to select an installed voice that supports the language specified by the `culture` parameter to speak the sentence. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. To stop using the voice specified by , call . - - To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. - - Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: - -- en-US. English (United States) - -- zh-CN. Chinese (China) - -- zh-TW. Chinese (Taiwan) - - Two-letter language codes such as "en" are also permitted. - + property of the object that contains them. + + While in effect, the value of the `culture` parameter will override the property and the `culture` parameter for the paragraph that contains the sentence. The will attempt to select an installed voice that supports the language specified by the `culture` parameter to speak the sentence. If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. To stop using the voice specified by , call . + + To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. + + Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: + +- en-US. English (United States) + +- zh-CN. Chinese (China) + +- zh-TW. Chinese (Taiwan) + + Two-letter language codes such as "en" are also permitted. + ]]> @@ -2134,58 +2134,58 @@ namespace SampleSynthesis The style to start. Specifies the start of a style in the object. - method takes a object as its argument. You can use the properties of the object to set the emphasis, speaking rate, and volume (loudness) to apply to speech output while the style is in effect. To stop using the current style, call the method. - + method takes a object as its argument. You can use the properties of the object to set the emphasis, speaking rate, and volume (loudness) to apply to speech output while the style is in effect. To stop using the current style, call the method. + > [!NOTE] -> - The speech synthesis engines in Windows do not support the emphasis parameter at this time. Setting values for the emphasis parameter will produce no audible change in the synthesized speech output. -> - The setting for is full volume, which is the same as . The other settings decrease the volume of speech output relative to full volume. - - - -## Examples - The following example creates a object and appends text strings. The example uses the method to specify a slow speaking rate for the string being added, which enumerates the contents of an order. - -```csharp -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and add content. - PromptBuilder style = new PromptBuilder(); - style.AppendText("Your order for"); - style.StartStyle(new PromptStyle(PromptRate.Slow)); - style.AppendText("one kitchen sink and one faucet"); - style.EndStyle(); - style.AppendText("has been confirmed."); - - // Speak the contents of the SSML prompt. - synth.Speak(style); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} -``` - +> - The speech synthesis engines in Windows do not support the emphasis parameter at this time. Setting values for the emphasis parameter will produce no audible change in the synthesized speech output. +> - The setting for is full volume, which is the same as . The other settings decrease the volume of speech output relative to full volume. + + + +## Examples + The following example creates a object and appends text strings. The example uses the method to specify a slow speaking rate for the string being added, which enumerates the contents of an order. + +```csharp +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and add content. + PromptBuilder style = new PromptBuilder(); + style.AppendText("Your order for"); + style.StartStyle(new PromptStyle(PromptRate.Slow)); + style.AppendText("one kitchen sink and one faucet"); + style.EndStyle(); + style.AppendText("has been confirmed."); + + // Speak the contents of the SSML prompt. + synth.Speak(style); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} +``` + ]]> @@ -2198,13 +2198,13 @@ namespace SampleSynthesis Instructs the synthesizer to change the voice in a object. - methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. - - When an application calls , the method verifies that each of the voices it finds in the registry meets certain minimum criteria. For any voice that fails verification, sets its property to `False`. An application cannot call any of the methods on a voice whose property is `False`. Typically, applications will not set a voice's property. - + methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. + + When an application calls , the method verifies that each of the voices it finds in the registry meets certain minimum criteria. For any voice that fails verification, sets its property to `False`. An application cannot call any of the methods on a voice whose property is `False`. Typically, applications will not set a voice's property. + ]]> @@ -2233,23 +2233,23 @@ namespace SampleSynthesis Provides information about a specific culture, such as the language, the name of the culture, the writing system, the calendar used, and how to format dates and sort strings. Instructs the synthesizer to change the voice in the object and specifies the culture of the voice to use. - can be different than the property of the object that contains it. While in effect, the value of the `culture` parameter will override the property. The will attempt to select an installed voice that supports the language specified by the `culture` parameter to speak the content enclosed by and . If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. To stop using the voice specified by , call . - - To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. - - Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: - -- en-US. English (United States) - -- zh-CN. Chinese (China) - -- zh-TW. Chinese (Taiwan) - - Two-letter language codes such as "en" are also permitted. - + can be different than the property of the object that contains it. While in effect, the value of the `culture` parameter will override the property. The will attempt to select an installed voice that supports the language specified by the `culture` parameter to speak the content enclosed by and . If a voice with the specified culture is found, it will be used. If a voice with the specified culture cannot be found, the default voice will be used. To stop using the voice specified by , call . + + To correctly pronounce words in the language specified by the `culture` parameter, a speech synthesis (text-to-speech or TTS) engine that supports the language must be installed. An installed TTS engine is called a voice. To get information about which voices are installed for a specific culture, use the method. + + Microsoft Windows and the System.Speech API accept all valid language-country codes as values for `culture`. The TTS engines that shipped with Windows 7 support the following language-country codes: + +- en-US. English (United States) + +- zh-CN. Chinese (China) + +- zh-TW. Chinese (Taiwan) + + Two-letter language codes such as "en" are also permitted. + ]]> @@ -2278,13 +2278,13 @@ namespace SampleSynthesis The gender of the voice to use. Instructs the synthesizer to change the voice in the object and specifies the gender of the voice to use. - methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. - - To stop using the voice specified by call . - + methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. + + To stop using the voice specified by call . + ]]> @@ -2313,13 +2313,13 @@ namespace SampleSynthesis The criteria for the voice to use. Instructs the synthesizer to change the voice in the object and specifies criteria for the new voice. - methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. - - To stop using the voice specified by call . - + methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. + + To stop using the voice specified by call . + ]]> @@ -2348,13 +2348,13 @@ namespace SampleSynthesis The name of the voice to use. Instructs the synthesizer to change the voice in the object and specifies the name of the voice to use. - methods. - - To stop using the voice specified by call . - + methods. + + To stop using the voice specified by call . + ]]> @@ -2385,13 +2385,13 @@ namespace SampleSynthesis The age of the voice to use. Instructs the synthesizer to change the voice in the object and specifies the gender and the age of the new voice. - methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. - - To stop using the voice specified by call . - + methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. + + To stop using the voice specified by call . + ]]> @@ -2424,15 +2424,15 @@ namespace SampleSynthesis An integer that specifies a preferred voice when more than one voice matches the and parameters. Instructs the synthesizer to change the voice in the object and specifies its gender, age, and a preferred voice that matches the specified gender and age. - methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. - - To stop using the voice specified by call . - + methods and class to obtain the names and attributes of installed text-to-speech (TTS) voices that you can select. + + To stop using the voice specified by call . + ]]> @@ -2460,61 +2460,61 @@ namespace SampleSynthesis Returns the SSML generated from the object. Returns the SSML generated from the object as a single line. - method makes no attempt to format the returned SSML in any way. - - - -## Examples - The following example creates a object, appends text, and then writes the SSML equivalent of the prompt to the console before speaking the contents of the prompt. - -```csharp - -using System; -using System.Speech.Synthesis; - -namespace SampleSynthesis -{ - class Program - { - static void Main(string[] args) - { - - // Initialize a new instance of the SpeechSynthesizer. - using (SpeechSynthesizer synth = new SpeechSynthesizer()) - { - - // Configure the audio output. - synth.SetOutputToDefaultAudioDevice(); - - // Create a PromptBuilder object and add content. - PromptBuilder style = new PromptBuilder(); - style.AppendText("Your order for"); - style.StartStyle(new PromptStyle(PromptRate.Slow)); - style.AppendText("one kitchen sink and one faucet"); - style.EndStyle(); - style.AppendText("has been confirmed."); - - // Write the contents of the PromptBuilder object to the console as - // an SSML-compatible XML file. - string myXml = style.ToXml(); - Console.WriteLine("This is the SSML equivalent of the PromptBuilder: \n\n" + myXml); - - // Speak the contents of the SSML prompt. - synth.Speak(style); - } - - Console.WriteLine(); - Console.WriteLine("Press any key to exit..."); - Console.ReadKey(); - } - } -} - -``` - + method makes no attempt to format the returned SSML in any way. + + + +## Examples + The following example creates a object, appends text, and then writes the SSML equivalent of the prompt to the console before speaking the contents of the prompt. + +```csharp + +using System; +using System.Speech.Synthesis; + +namespace SampleSynthesis +{ + class Program + { + static void Main(string[] args) + { + + // Initialize a new instance of the SpeechSynthesizer. + using (SpeechSynthesizer synth = new SpeechSynthesizer()) + { + + // Configure the audio output. + synth.SetOutputToDefaultAudioDevice(); + + // Create a PromptBuilder object and add content. + PromptBuilder style = new PromptBuilder(); + style.AppendText("Your order for"); + style.StartStyle(new PromptStyle(PromptRate.Slow)); + style.AppendText("one kitchen sink and one faucet"); + style.EndStyle(); + style.AppendText("has been confirmed."); + + // Write the contents of the PromptBuilder object to the console as + // an SSML-compatible XML file. + string myXml = style.ToXml(); + Console.WriteLine("This is the SSML equivalent of the PromptBuilder: \n\n" + myXml); + + // Speak the contents of the SSML prompt. + synth.Speak(style); + } + + Console.WriteLine(); + Console.WriteLine("Press any key to exit..."); + Console.ReadKey(); + } + } +} + +``` + ]]> diff --git a/xml/System.Speech.Synthesis/SpeechSynthesizer.xml b/xml/System.Speech.Synthesis/SpeechSynthesizer.xml index 0be3b45585e..06bb0260fca 100644 --- a/xml/System.Speech.Synthesis/SpeechSynthesizer.xml +++ b/xml/System.Speech.Synthesis/SpeechSynthesizer.xml @@ -33,15 +33,15 @@ This class also provides control over the following aspects of speech synthesis: -- To configure the output for the object, use the , , , and methods. +- To configure the output for the object, use the , , , and methods. -- To generate speech, use the , , , or method. The can produce speech from text, a or object, or from [Speech Synthesis Markup Language (SSML) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201763). +- To generate speech, use the , , , or method. The can produce speech from text, a or object, or from [Speech Synthesis Markup Language (SSML) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201763). -- To pause and resume speech synthesis, use the and methods. +- To pause and resume speech synthesis, use the and methods. -- To add or remove lexicons, use the and methods. The can use one or more lexicons to guide its pronunciation of words. +- To add or remove lexicons, use the and methods. The can use one or more lexicons to guide its pronunciation of words. -- To modify the delivery of speech output, use the and properties. +- To modify the delivery of speech output, use the and properties. The raises events when it encounters certain features in prompts: (, , , and ). It also raises events that report on the start () and end () of speak operations and on the change of the speaking voice (). @@ -160,9 +160,9 @@ namespace SampleSynthesis You can add multiple lexicons to a object. Two values are currently supported for the `mediaType` parameter: -- The value `application/pls+xml` indicates that the lexicon conforms to the [Pronunciation Lexicon Specification (PLS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201766). This is the preferred format to use. +- The value `application/pls+xml` indicates that the lexicon conforms to the [Pronunciation Lexicon Specification (PLS) Version 1.0](https://go.microsoft.com/fwlink/?LinkId=201766). This is the preferred format to use. -- The value `application/vdn.ms-sapi-lex` indicates that the lexicon format is Uncompressed Lexicon, which is a Microsoft-proprietary format. This is a legacy format and we recommend that you use the PLS format described above. +- The value `application/vdn.ms-sapi-lex` indicates that the lexicon format is Uncompressed Lexicon, which is a Microsoft-proprietary format. This is a legacy format and we recommend that you use the PLS format described above. @@ -548,11 +548,11 @@ namespace SampleSynthesis Microsoft Windows and the System.Speech API accept all valid language-country codes. To perform text-to-speech using the language specified in the Culture property, a speech synthesis engine that supports that language-country code must be installed. The speech synthesis engines that shipped with Microsoft Windows 7 work with the following language-country codes: -- en-US. English (United States) +- en-US. English (United States) -- zh-CN. Chinese (China) +- zh-CN. Chinese (China) -- zh-TW. Chinese (Taiwan) +- zh-TW. Chinese (Taiwan) Two-letter language codes such as "en" are also permitted. @@ -1028,11 +1028,11 @@ namespace SampleSynthesis Microsoft Windows and the System.Speech API accept all valid language-country codes. To perform text-to-speech using the language specified in the `culture` parameter, a speech synthesis engine that supports that language-country code must be installed. The speech synthesis engines that shipped with Microsoft Windows 7 work with the following language-country codes: -- en-US. English (United States) +- en-US. English (United States) -- zh-CN. Chinese (China) +- zh-CN. Chinese (China) -- zh-TW. Chinese (Taiwan) +- zh-TW. Chinese (Taiwan) Two-letter language codes such as "en" are also permitted. @@ -1997,11 +1997,11 @@ namespace SampleSynthesis ## Remarks You can also use this method to cancel an asynchronous speak operation for the following: -- The contents of a specified by a method. +- The contents of a specified by a method. -- The contents of a specified by a method. +- The contents of a specified by a method. -- The contents of a containing SSML specified by a method. +- The contents of a containing SSML specified by a method. When you call , , or , System.Speech creates a object and populates it with the contents of the method's parameter, and returns the object. If you retain a copy of the returned , you can pass it into to cancel speaking content specified in a or a object. diff --git a/xml/System.Text.RegularExpressions/CaptureCollection.xml b/xml/System.Text.RegularExpressions/CaptureCollection.xml index 53473d80bdf..97e3c78e635 100644 --- a/xml/System.Text.RegularExpressions/CaptureCollection.xml +++ b/xml/System.Text.RegularExpressions/CaptureCollection.xml @@ -107,9 +107,9 @@ Instances of the class are returned by the following properties: -- The property. Each member of the collection represents a substring captured by a capturing group. If a quantifier is not applied to a capturing group, the includes a single object that represents the same captured substring as the object. If a quantifier is applied to a capturing group, the includes one object for each captured substring, and the object provides information only about the last captured substring. +- The property. Each member of the collection represents a substring captured by a capturing group. If a quantifier is not applied to a capturing group, the includes a single object that represents the same captured substring as the object. If a quantifier is applied to a capturing group, the includes one object for each captured substring, and the object provides information only about the last captured substring. -- The `Match.Captures` property. In this case, the collection consists of a single object that provides information about the match as a whole. That is, the object provides the same information as the object. +- The `Match.Captures` property. In this case, the collection consists of a single object that provides information about the match as a whole. That is, the object provides the same information as the object. To iterate through the members of the collection, you should use the collection iteration construct provided by your language (such as `foreach` in C# and `For Each`…`Next` in Visual Basic) instead of retrieving the enumerator that is returned by the method. diff --git a/xml/System.Text.RegularExpressions/MatchCollection.xml b/xml/System.Text.RegularExpressions/MatchCollection.xml index 30727b99502..af8f248a014 100644 --- a/xml/System.Text.RegularExpressions/MatchCollection.xml +++ b/xml/System.Text.RegularExpressions/MatchCollection.xml @@ -109,11 +109,11 @@ When applying a regular expression pattern to a particular input string, the regular expression engine uses either of two techniques to build the object: -- Direct evaluation. +- Direct evaluation. The object is populated all at once, with all matches resulting from a particular call to the method. This technique is used when the collection's property is accessed. It typically is the more expensive method of populating the collection and entails a greater performance hit. -- Lazy evaluation. +- Lazy evaluation. The object is populated as needed on a match-by-match basis. It is equivalent to the regular expression engine calling the method repeatedly and adding each match to the collection. This technique is used when the collection is accessed through its method, or when it is accessed using the `foreach` statement (in C#) or the `For Each`...`Next` statement (in Visual Basic). diff --git a/xml/System.Text.RegularExpressions/Regex.xml b/xml/System.Text.RegularExpressions/Regex.xml index 917aec0f9af..0e4fe10fb97 100644 --- a/xml/System.Text.RegularExpressions/Regex.xml +++ b/xml/System.Text.RegularExpressions/Regex.xml @@ -460,9 +460,9 @@ Setting a time-out interval prevents regular expressions that rely on excessive backtracking from appearing to stop responding when they process input that contains near matches. For more information, see [Best Practices for Regular Expressions](/dotnet/standard/base-types/best-practices) and [Backtracking](/dotnet/standard/base-types/backtracking-in-regular-expressions). To set a reasonable time-out interval, consider the following factors: -- The length and complexity of the regular expression pattern. Longer and more complex regular expressions require more time than shorter and simpler ones. +- The length and complexity of the regular expression pattern. Longer and more complex regular expressions require more time than shorter and simpler ones. -- The expected machine load. Processing takes more time on systems that have high CPU and memory utilization. +- The expected machine load. Processing takes more time on systems that have high CPU and memory utilization. @@ -486,11 +486,11 @@ We recommend that you set the parameter to an appropriate value, such as two seconds. If you disable time-outs by specifying , the regular expression engine offers slightly better performance. However, you should disable time-outs only under the following conditions: -- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. +- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. -- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. +- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. -- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. +- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. Backtracking in Regular Expressions Regular Expression Language Elements @@ -951,11 +951,11 @@ ## Remarks The method generates a .NET Framework assembly in which each regular expression defined in the `regexinfos` array is represented by a class. Typically, the method is called from a separate application that generates an assembly of compiled regular expressions. Each regular expression included in the assembly has the following characteristics: -- It is derived from the class. +- It is derived from the class. -- It is assigned the fully qualified name that is defined by the `fullnamespace` and `name` parameters of its corresponding object. +- It is assigned the fully qualified name that is defined by the `fullnamespace` and `name` parameters of its corresponding object. -- It has a default (or parameterless) constructor. +- It has a default (or parameterless) constructor. Ordinarily, the code that instantiates and uses the compiled regular expression is found in an assembly or application that is separate from the code that creates the assembly. @@ -987,9 +987,9 @@ If you are developing on a system that has .NET Framework 4.5 or its point releases installed, you target .NET Framework 4, and you use the method to create an assembly that contains compiled regular expressions. Trying to use one of the regular expressions in that assembly on a system that has .NET Framework 4 throws an exception. To work around this problem, you can do either of the following: -- Build the assembly that contains the compiled regular expressions on a system that has .NET Framework 4 instead of later versions installed. +- Build the assembly that contains the compiled regular expressions on a system that has .NET Framework 4 instead of later versions installed. -- Instead of calling and retrieving the compiled regular expression from an assembly, use either static or instance methods with the option when you instantiate a object or call a regular expression pattern matching method. +- Instead of calling and retrieving the compiled regular expression from an assembly, use either static or instance methods with the option when you instantiate a object or call a regular expression pattern matching method. Compilation and Reuse @@ -1060,11 +1060,11 @@ ## Remarks The method generates a .NET Framework assembly in which each regular expression defined in the `regexinfos` array is represented by a class. Typically, the method is called from a separate application that generates an assembly of compiled regular expressions. Each regular expression included in the assembly has the following characteristics: -- It is derived from the class. +- It is derived from the class. -- It is assigned the fully qualified name that is defined by the `fullnamespace` and `name` parameters of its corresponding object. +- It is assigned the fully qualified name that is defined by the `fullnamespace` and `name` parameters of its corresponding object. -- It has a default (or parameterless) constructor. +- It has a default (or parameterless) constructor. Ordinarily, the code that instantiates and uses the compiled regular expression is found in an assembly or application that is separate from the code that creates the assembly. @@ -1112,9 +1112,9 @@ If you are developing on a system that has .NET Framework 4.5 or its point releases installed, you target .NET Framework 4, and you use the method to create an assembly that contains compiled regular expressions. Trying to use one of the regular expressions in that assembly on a system that has .NET Framework 4 throws an exception. To work around this problem, you can do either of the following: -- Build the assembly that contains the compiled regular expressions on a system that has .NET Framework 4 instead of later versions installed. +- Build the assembly that contains the compiled regular expressions on a system that has .NET Framework 4 instead of later versions installed. -- Instead of calling and retrieving the compiled regular expression from an assembly, use either static or instance methods with the option when you instantiate a object or call a regular expression pattern matching method. +- Instead of calling and retrieving the compiled regular expression from an assembly, use either static or instance methods with the option when you instantiate a object or call a regular expression pattern matching method. Compilation and Reuse @@ -1194,11 +1194,11 @@ ## Remarks The method generates a .NET Framework assembly in which each regular expression defined in the `regexinfos` array is represented by a class. Typically, the method is called from a separate application that generates an assembly of compiled regular expressions. Each regular expression included in the assembly has the following characteristics: -- It is derived from the class. +- It is derived from the class. -- It is assigned the fully qualified name that is defined by the `fullnamespace` and `name` parameters of its corresponding object. +- It is assigned the fully qualified name that is defined by the `fullnamespace` and `name` parameters of its corresponding object. -- It has a default (or parameterless) constructor. +- It has a default (or parameterless) constructor. Ordinarily, the code that instantiates and uses the compiled regular expression is found in an assembly or application that is separate from the code that creates the assembly. @@ -1231,9 +1231,9 @@ If you are developing on a system that has .NET Framework 4.5 or its point releases installed, you target .NET Framework 4, and you use the method to create an assembly that contains compiled regular expressions. Trying to use one of the regular expressions in that assembly on a system that has .NET Framework 4 throws an exception. To work around this problem, you can do either of the following: -- Build the assembly that contains the compiled regular expressions on a system that has .NET Framework 4 instead of later versions installed. +- Build the assembly that contains the compiled regular expressions on a system that has .NET Framework 4 instead of later versions installed. -- Instead of calling and retrieving the compiled regular expression from an assembly, use either static or instance methods with the option when you instantiate a object or call a regular expression pattern matching method. +- Instead of calling and retrieving the compiled regular expression from an assembly, use either static or instance methods with the option when you instantiate a object or call a regular expression pattern matching method. Compilation and Reuse @@ -3660,11 +3660,11 @@ For more details about `startat`, see the Remarks section of We recommend that you set the parameter to an appropriate value, such as two seconds. If you disable time-outs by specifying , the regular expression engine offers slightly better performance. However, you should disable time-outs only under the following conditions: -- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. +- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. -- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. +- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. -- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. +- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. Regular Expression Language Elements @@ -4206,11 +4206,11 @@ For more details about `startat`, see the Remarks section of We recommend that you set the parameter to an appropriate value, such as two seconds. If you disable time-outs by specifying , the regular expression engine offers slightly better performance. However, you should disable time-outs only under the following conditions: -- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. +- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. -- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. +- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. -- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. +- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. Regular Expression Language - Quick Reference @@ -4722,11 +4722,11 @@ For more details about `startat`, see the Remarks section of We recommend that you set the parameter to an appropriate value, such as two seconds. If you disable time-outs by specifying , the regular expression engine offers slightly better performance. However, you should disable time-outs only under the following conditions: -- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. +- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. -- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. +- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. -- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. +- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. Regular Expression Language Elements @@ -5074,11 +5074,11 @@ For more details about `startat`, see the Remarks section of method is useful for replacing a regular expression match if any of the following conditions is true: -- The replacement string cannot readily be specified by a regular expression replacement pattern. +- The replacement string cannot readily be specified by a regular expression replacement pattern. -- The replacement string results from some processing done on the matched string. +- The replacement string results from some processing done on the matched string. -- The replacement string results from conditional processing. +- The replacement string results from conditional processing. The method is equivalent to calling the method and passing each object in the returned collection to the `evaluator` delegate. @@ -5375,11 +5375,11 @@ For more details about `startat`, see the Remarks section of method is useful for replacing a regular expression match if any of the following conditions is true: -- The replacement string cannot readily be specified by a regular expression replacement pattern. +- The replacement string cannot readily be specified by a regular expression replacement pattern. -- The replacement string results from some processing done on the matched string. +- The replacement string results from some processing done on the matched string. -- The replacement string results from conditional processing. +- The replacement string results from conditional processing. The method is equivalent to calling the method and passing each object in the returned collection to the `evaluator` delegate. @@ -5474,11 +5474,11 @@ For more details about `startat`, see the Remarks section of method is useful for replacing a regular expression match if any of the following conditions is true: -- The replacement string cannot readily be specified by a regular expression replacement pattern. +- The replacement string cannot readily be specified by a regular expression replacement pattern. -- The replacement string results from some processing done on the matched string. +- The replacement string results from some processing done on the matched string. -- The replacement string results from conditional processing. +- The replacement string results from conditional processing. The method is equivalent to calling the method and passing the first `count` objects in the returned collection to the `evaluator` delegate. @@ -5803,11 +5803,11 @@ For more details about `startat`, see the Remarks section of method is useful for replacing a regular expression match in if any of the following conditions is true: -- The replacement string cannot readily be specified by a regular expression replacement pattern. +- The replacement string cannot readily be specified by a regular expression replacement pattern. -- The replacement string results from some processing done on the matched string. +- The replacement string results from some processing done on the matched string. -- The replacement string results from conditional processing. +- The replacement string results from conditional processing. The method is equivalent to calling the method and passing each object in the returned collection to the `evaluator` delegate. @@ -6055,11 +6055,11 @@ For more details about `startat`, see the Remarks section of We recommend that you set the parameter to an appropriate value, such as two seconds. If you disable time-outs by specifying , the regular expression engine offers slightly better performance. However, you should disable time-outs only under the following conditions: -- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. +- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. -- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. +- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. -- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. +- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. Substitutions in Regular Expressions @@ -6133,11 +6133,11 @@ For more details about `startat`, see the Remarks section of method is useful for replacing a regular expression match if any of the following conditions is true: -- If the replacement string cannot readily be specified by a regular expression replacement pattern. +- If the replacement string cannot readily be specified by a regular expression replacement pattern. -- If the replacement string results from some processing performed on the matched string. +- If the replacement string results from some processing performed on the matched string. -- If the replacement string results from conditional processing. +- If the replacement string results from conditional processing. The method is equivalent to calling the method and passing each object in the returned collection to the `evaluator` delegate. @@ -6179,11 +6179,11 @@ For more details about `startat`, see the Remarks section of We recommend that you set the parameter to an appropriate value, such as two seconds. If you disable time-outs by specifying , the regular expression engine offers slightly better performance. However, you should disable time-outs only under the following conditions: -- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. +- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. -- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. +- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. -- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. +- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. Substitutions in Regular Expressions @@ -6885,11 +6885,11 @@ For more details about `startat`, see the Remarks section of We recommend that you set the parameter to an appropriate value, such as two seconds. If you disable time-outs by specifying , the regular expression engine offers slightly better performance. However, you should disable time-outs only under the following conditions: -- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. +- When the input processed by a regular expression is derived from a known and trusted source or consists of static text. This excludes text that has been dynamically input by users. -- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. +- When the regular expression pattern has been thoroughly tested to ensure that it efficiently handles matches, non-matches, and near matches. -- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. +- When the regular expression pattern contains no language elements that are known to cause excessive backtracking when processing a near match. Regular Expression Language Elements @@ -7063,12 +7063,12 @@ Any objects that are included in the method performs one of the following two transformations: -- It reverses the transformation performed by the method by removing the escape character ("\\") from each character escaped by the method. These include the \\, *, +, ?, |, {, [, (,), ^, $, ., #, and white space characters. In addition, the method unescapes the closing bracket (]) and closing brace (}) characters. +- It reverses the transformation performed by the method by removing the escape character ("\\") from each character escaped by the method. These include the \\, *, +, ?, |, {, [, (,), ^, $, ., #, and white space characters. In addition, the method unescapes the closing bracket (]) and closing brace (}) characters. > [!NOTE] > cannot reverse an escaped string perfectly because it cannot deduce precisely which characters were escaped, -- It replaces the hexadecimal values in verbatim string literals with the actual printable characters. For example, it replaces @"\x07" with "\a", or @"\x0A" with "\n". It converts to supported escape characters such as \a, \b, \e, \n, \r, \f, \t, \v, and alphanumeric characters. +- It replaces the hexadecimal values in verbatim string literals with the actual printable characters. For example, it replaces @"\x07" with "\a", or @"\x0A" with "\n". It converts to supported escape characters such as \a, \b, \e, \n, \r, \f, \t, \v, and alphanumeric characters. If the method encounters other escape sequences that it cannot convert, such as \w or \s, it throws an . diff --git a/xml/System.Text.RegularExpressions/RegexCompilationInfo.xml b/xml/System.Text.RegularExpressions/RegexCompilationInfo.xml index 6e004241a10..2d3a3a3c1f9 100644 --- a/xml/System.Text.RegularExpressions/RegexCompilationInfo.xml +++ b/xml/System.Text.RegularExpressions/RegexCompilationInfo.xml @@ -45,13 +45,13 @@ Provides information about a regular expression that is used to compile a regular expression to a stand-alone assembly. - objects is passed to the method to provide information about each regular expression to be included in the assembly. Each compiled regular expression that is included in the assembly is represented as a class derived from . The properties of the type define the regular expression's class name, its fully qualified name (that is, its namespace and its type name), its regular expression pattern, any additional options (such as whether the regular expression is case-insensitive), and a time-out interval that specifies how long the regular expression engine should search for a match. - - You can instantiate a object by calling its overloaded class constructor. - + objects is passed to the method to provide information about each regular expression to be included in the assembly. Each compiled regular expression that is included in the assembly is represented as a class derived from . The properties of the type define the regular expression's class name, its fully qualified name (that is, its namespace and its type name), its regular expression pattern, any additional options (such as whether the regular expression is case-insensitive), and a time-out interval that specifies how long the regular expression engine should search for a match. + + You can instantiate a object by calling its overloaded class constructor. + ]]> @@ -111,43 +111,43 @@ to make the compiled regular expression publicly visible; otherwise, . Initializes a new instance of the class that contains information about a regular expression to be included in an assembly. - constructor directly corresponds to a property of the class. Because all properties are read/write, their values can also be assigned directly. - - The method generates an assembly that contains compiled regular expressions. Therefore, you should not specify as one of the values of `options`. - - If `ispublic` is `true`, the compiled regular expression class is given public accessibility. That is, it can be instantiated from code that executes in any assembly. If `ispublic` is `false`, the compiled regular expression class is given `internal` (in C#) or `Friend` (in Visual Basic) accessibility. That is, it can be instantiated only from code that executes in the same assembly as the regular expression class. - - - -## Examples - The following example creates and uses a compiled regular expression in two steps. - - In the first step, compile and execute the following code example. The constructor in the code example defines a compiled regular expression. The result of executing the code is an assembly named FishRegex.dll that contains a compiled regular expression type named `FishRegex`. - + constructor directly corresponds to a property of the class. Because all properties are read/write, their values can also be assigned directly. + + The method generates an assembly that contains compiled regular expressions. Therefore, you should not specify as one of the values of `options`. + + If `ispublic` is `true`, the compiled regular expression class is given public accessibility. That is, it can be instantiated from code that executes in any assembly. If `ispublic` is `false`, the compiled regular expression class is given `internal` (in C#) or `Friend` (in Visual Basic) accessibility. That is, it can be instantiated only from code that executes in the same assembly as the regular expression class. + + + +## Examples + The following example creates and uses a compiled regular expression in two steps. + + In the first step, compile and execute the following code example. The constructor in the code example defines a compiled regular expression. The result of executing the code is an assembly named FishRegex.dll that contains a compiled regular expression type named `FishRegex`. + :::code language="csharp" source="~/snippets/csharp/System.Text.RegularExpressions/RegexCompilationInfo/.ctor/genFishRegex.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/sys.txt.rgxCompInfo/vb/genFishRegex.vb" id="Snippet1"::: - - In the second step, compile the following code example using a reference to FishRegex.dll, and then run the resulting executable file. The executable file matches a target string by using the `FishRegex` type, and displays the match, group, capture group, and index position of the matches in the target string. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/sys.txt.rgxCompInfo/vb/genFishRegex.vb" id="Snippet1"::: + + In the second step, compile the following code example using a reference to FishRegex.dll, and then run the resulting executable file. The executable file matches a target string by using the `FishRegex` type, and displays the match, group, capture group, and index position of the matches in the target string. + :::code language="csharp" source="~/snippets/csharp/System.Text.RegularExpressions/RegexCompilationInfo/.ctor/useFishRegex.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/sys.txt.rgxCompInfo/vb/useFishRegex.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/sys.txt.rgxCompInfo/vb/useFishRegex.vb" id="Snippet2"::: + ]]> is . - is . - - -or- - - is . - - -or- - + is . + + -or- + + is . + + -or- + is . This constructor creates a compiled regular expression that uses the default time-out value of the application domain in which it is created. If a time-out value is defined for the application domain, the compiled regular expression uses the value , which prevents a pattern-matching operation from timing out. The recommended constructor for creating a compiled regular expression is , which lets you set the time-out interval. @@ -196,53 +196,53 @@ The default time-out interval for the regular expression. Initializes a new instance of the class that contains information about a regular expression with a specified time-out value to be included in an assembly. - constructor directly corresponds to a property of the class. Because all properties are read/write, their values can also be assigned directly. - - The method generates an assembly that contains compiled regular expressions. Therefore, you should not specify as one of the values of `options`. - - If `ispublic` is `true`, the compiled regular expression class is given public accessibility. That is, it can be instantiated from code that executes in any assembly. If `ispublic` is `false`, the compiled regular expression class is given `internal` (in C#) or `Friend` (in Visual Basic) accessibility. That is, it can be instantiated only from code that executes in the same assembly as the regular expression class. - - The `matchTimeout` parameter defines the default time-out interval for the compiled regular expression. This value represents the approximate amount of time that a compiled regular expression object will execute a single matching operation before the operation times out and the regular expression engine throws a exception during its next timing check. For additional information about the time-out value, see the property. - + constructor directly corresponds to a property of the class. Because all properties are read/write, their values can also be assigned directly. + + The method generates an assembly that contains compiled regular expressions. Therefore, you should not specify as one of the values of `options`. + + If `ispublic` is `true`, the compiled regular expression class is given public accessibility. That is, it can be instantiated from code that executes in any assembly. If `ispublic` is `false`, the compiled regular expression class is given `internal` (in C#) or `Friend` (in Visual Basic) accessibility. That is, it can be instantiated only from code that executes in the same assembly as the regular expression class. + + The `matchTimeout` parameter defines the default time-out interval for the compiled regular expression. This value represents the approximate amount of time that a compiled regular expression object will execute a single matching operation before the operation times out and the regular expression engine throws a exception during its next timing check. For additional information about the time-out value, see the property. + > [!IMPORTANT] -> We recommend that you always set a default time-out value for a compiled regular expression. Consumers of your regular expression library can override that time-out value by passing a value that represents the new time-out interval to this constructor overload. - - - -## Examples - The following example defines a single compiled regular expression named `DuplicateChars` that identifies two or more occurrences of the same character in an input string. The compiled regular expression has a default time-out of 2 seconds. When you execute the example, it creates a class library named RegexLib.dll that contains the compiled regular expression. - +> We recommend that you always set a default time-out value for a compiled regular expression. Consumers of your regular expression library can override that time-out value by passing a value that represents the new time-out interval to this constructor overload. + + + +## Examples + The following example defines a single compiled regular expression named `DuplicateChars` that identifies two or more occurrences of the same character in an input string. The compiled regular expression has a default time-out of 2 seconds. When you execute the example, it creates a class library named RegexLib.dll that contains the compiled regular expression. + :::code language="csharp" source="~/snippets/csharp/System.Text.RegularExpressions/RegexCompilationInfo/.ctor/example1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1.vb" id="Snippet1"::: - - The regular expression pattern `(\w)\1+` is defined as shown in the following table. - -|Pattern|Description| -|-------------|-----------------| -|`(\w)`|Match any word character and assign it to the first capturing group.| -|`\1+`|Match one or more occurrences of the value of the first captured group.| - - The following example uses the `DuplicatedChars` regular expression to identify duplicate characters in a string array. When it calls the `DuplicatedChars` constructor, it changes the time-out interval to .5 seconds. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1.vb" id="Snippet1"::: + + The regular expression pattern `(\w)\1+` is defined as shown in the following table. + +|Pattern|Description| +|-------------|-----------------| +|`(\w)`|Match any word character and assign it to the first capturing group.| +|`\1+`|Match one or more occurrences of the value of the first captured group.| + + The following example uses the `DuplicatedChars` regular expression to identify duplicate characters in a string array. When it calls the `DuplicatedChars` constructor, it changes the time-out interval to .5 seconds. + :::code language="csharp" source="~/snippets/csharp/System.Text.RegularExpressions/RegexCompilationInfo/.ctor/example1a.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1a.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1a.vb" id="Snippet2"::: + ]]> is . - is . - - -or- - - is . - - -or- - + is . + + -or- + + is . + + -or- + is . is negative, zero, or greater than approximately 24 days. @@ -293,11 +293,11 @@ if the regular expression has public visibility; otherwise, . - property is `false`, the regular expression class defined by the current instance can be instantiated only by code that is executing in the assembly that contains the class. However, because the method generates an assembly that contains only compiled regular expressions and does not allow additional code to be added, there is generally no reason to assign this property a value of `false`. - + property is `false`, the regular expression class defined by the current instance can be instantiated only by code that is executing in the assembly that contains the class. However, because the method generates an assembly that contains only compiled regular expressions and does not allow additional code to be added, there is generally no reason to assign this property a value of `false`. + ]]> @@ -333,48 +333,48 @@ Gets or sets the regular expression's default time-out interval. The default maximum time interval that can elapse in a pattern-matching operation before a is thrown, or if time-outs are disabled. - property defines the default time-out interval for the compiled regular expression. This value represents the approximate amount of time that a compiled regular expression will execute a single matching operation before the operation times out and the regular expression engine throws a exception during its next timing check. - + property defines the default time-out interval for the compiled regular expression. This value represents the approximate amount of time that a compiled regular expression will execute a single matching operation before the operation times out and the regular expression engine throws a exception during its next timing check. + > [!IMPORTANT] -> We recommend that you always set a default time-out value for a compiled regular expression. Consumers of your regular expression library can override that time-out value by passing a value that represents the new time-out interval to the compiled regular expression's class constructor. - - You can assign a default time-out value to a object in any of the following ways: - -- By calling the method and providing the string representation of a value for the "REGEX_DEFAULT_MATCH_TIMEOUT" property. - -- By calling the constructor and providing a value for the `matchTimeout` parameter. - -- By setting the value of this property. - - To set a reasonable time-out interval, consider the following factors: - -- The length and complexity of the regular expression pattern. Longer and more complex regular expressions require more time than shorter and simpler ones. - -- The expected machine load. Processing takes more time on systems with high CPU and memory utilization. - - - -## Examples - The following example defines a single compiled regular expression named `DuplicateChars` that identifies two or more occurrences of the same character in an input string. The compiled regular expression has a default time-out of 2 seconds. When you execute the example, it creates a class library named RegexLib.dll that contains the compiled regular expression. - +> We recommend that you always set a default time-out value for a compiled regular expression. Consumers of your regular expression library can override that time-out value by passing a value that represents the new time-out interval to the compiled regular expression's class constructor. + + You can assign a default time-out value to a object in any of the following ways: + +- By calling the method and providing the string representation of a value for the "REGEX_DEFAULT_MATCH_TIMEOUT" property. + +- By calling the constructor and providing a value for the `matchTimeout` parameter. + +- By setting the value of this property. + + To set a reasonable time-out interval, consider the following factors: + +- The length and complexity of the regular expression pattern. Longer and more complex regular expressions require more time than shorter and simpler ones. + +- The expected machine load. Processing takes more time on systems with high CPU and memory utilization. + + + +## Examples + The following example defines a single compiled regular expression named `DuplicateChars` that identifies two or more occurrences of the same character in an input string. The compiled regular expression has a default time-out of 2 seconds. When you execute the example, it creates a class library named RegexLib.dll that contains the compiled regular expression. + :::code language="csharp" source="~/snippets/csharp/System.Text.RegularExpressions/RegexCompilationInfo/.ctor/example1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1.vb" id="Snippet1"::: - - The regular expression pattern `(\w)\1+` is defined as shown in the following table. - -|Pattern|Description| -|-------------|-----------------| -|`(\w)`|Match any word character and assign it to the first capturing group.| -|`\1+`|Match one or more occurrences of the value of the first captured group.| - - The following example uses the `DuplicatedChars` regular expression to identify duplicate characters in a string array. When it calls the `DuplicatedChars` constructor, it changes the time-out interval to .5 seconds. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1.vb" id="Snippet1"::: + + The regular expression pattern `(\w)\1+` is defined as shown in the following table. + +|Pattern|Description| +|-------------|-----------------| +|`(\w)`|Match any word character and assign it to the first capturing group.| +|`\1+`|Match one or more occurrences of the value of the first captured group.| + + The following example uses the `DuplicatedChars` regular expression to identify duplicate characters in a string array. When it calls the `DuplicatedChars` constructor, it changes the time-out interval to .5 seconds. + :::code language="csharp" source="~/snippets/csharp/System.Text.RegularExpressions/RegexCompilationInfo/.ctor/example1a.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1a.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.text.regularexpressions.regexcompilationinfo.matchtimeout/vb/example1a.vb" id="Snippet2"::: + ]]> @@ -419,11 +419,11 @@ Gets or sets the name of the type that represents the compiled regular expression. The name of the new type. - class is used to define a compiled regular expression, which is represented as a class derived from . The property defines the class name of the regular expression type, and the and properties together define its fully qualified name. - + class is used to define a compiled regular expression, which is represented as a class derived from . The property defines the class name of the regular expression type, and the and properties together define its fully qualified name. + ]]> The value for this property is . @@ -469,11 +469,11 @@ Gets or sets the namespace to which the new type belongs. The namespace of the new type. - class is used to define a compiled regular expression, which is represented as a class derived from . The property defines the namespace that contains the compiled regular expression type, and the and properties together define its fully qualified name. - + class is used to define a compiled regular expression, which is represented as a class derived from . The property defines the namespace that contains the compiled regular expression type, and the and properties together define its fully qualified name. + ]]> The value for this property is . @@ -522,11 +522,11 @@ Gets or sets the options to use when compiling the regular expression. A bitwise combination of the enumeration values. - method generates an assembly that contains compiled regular expressions. Therefore, you do not have to specify as one of the values of this property. If it is present, the option is ignored. - + method generates an assembly that contains compiled regular expressions. Therefore, you do not have to specify as one of the values of this property. If it is present, the option is ignored. + ]]> @@ -570,11 +570,11 @@ Gets or sets the regular expression to compile. The regular expression to compile. - property can contain any valid regular expression. If the value of the property is not a syntactically correct regular expression pattern, the call to the method throws an . - + property can contain any valid regular expression. If the value of the property is not a syntactically correct regular expression pattern, the call to the method throws an . + ]]> The value for this property is . diff --git a/xml/System.Text.RegularExpressions/RegexMatchTimeoutException.xml b/xml/System.Text.RegularExpressions/RegexMatchTimeoutException.xml index 30e6cbcea82..841537c7b75 100644 --- a/xml/System.Text.RegularExpressions/RegexMatchTimeoutException.xml +++ b/xml/System.Text.RegularExpressions/RegexMatchTimeoutException.xml @@ -69,15 +69,15 @@ ## Remarks The presence of a exception generally indicates one of the following conditions: -- The regular expression engine is backtracking excessively as it attempts to match the input text to the regular expression pattern. +- The regular expression engine is backtracking excessively as it attempts to match the input text to the regular expression pattern. -- The time-out interval has been set too low, especially given high machine load. +- The time-out interval has been set too low, especially given high machine load. The way in which an exception handler handles an exception depends on the cause of the exception: -- If the time-out results from excessive backtracking, your exception handler should abandon the attempt to match the input and inform the user that a time-out has occurred in the regular expression pattern-matching method. If possible, information about the regular expression pattern, which is available from the property, and the input that caused excessive backtracking, which is available from the property, should be logged so that the issue can be investigated and the regular expression pattern modified. Time-outs due to excessive backtracking are always reproducible. +- If the time-out results from excessive backtracking, your exception handler should abandon the attempt to match the input and inform the user that a time-out has occurred in the regular expression pattern-matching method. If possible, information about the regular expression pattern, which is available from the property, and the input that caused excessive backtracking, which is available from the property, should be logged so that the issue can be investigated and the regular expression pattern modified. Time-outs due to excessive backtracking are always reproducible. -- If the time-out results from setting the time-out threshold too low, you can increase the time-out interval and retry the matching operation. The current time-out interval is available from the property. When a exception is thrown, the regular expression engine maintains its state so that any future invocations return the same result, as if the exception did not occur. The recommended pattern is to wait for a brief, random time interval after the exception is thrown before calling the matching method again. This can be repeated several times. However, the number of repetitions should be small in case the time-out is caused by excessive backtracking. +- If the time-out results from setting the time-out threshold too low, you can increase the time-out interval and retry the matching operation. The current time-out interval is available from the property. When a exception is thrown, the regular expression engine maintains its state so that any future invocations return the same result, as if the exception did not occur. The recommended pattern is to wait for a brief, random time interval after the exception is thrown before calling the matching method again. This can be repeated several times. However, the number of repetitions should be small in case the time-out is caused by excessive backtracking. The example in the next section illustrates both techniques for handling a . diff --git a/xml/System.Text.RegularExpressions/RegexOptions.xml b/xml/System.Text.RegularExpressions/RegexOptions.xml index 96ac2781288..3c40cd3ed6e 100644 --- a/xml/System.Text.RegularExpressions/RegexOptions.xml +++ b/xml/System.Text.RegularExpressions/RegexOptions.xml @@ -54,35 +54,35 @@ Provides enumerated values to use to set regular expression options. - class: - -- The class constructor. - -- The method. - -- The method. - -- The method. - -- The method. - -- The and methods. - - A `RegexOptions` value can also be supplied as a parameter to the constructor, or it can be assigned directly to the property. The resulting object is then used in the call to the method. - - Several options provided by members of the `RegexOptions` enumeration (in particular, by its `ExplicitCapture`, `IgnoreCase`, `Multiline`, and `Singleline` members) can instead be provided by using an inline option character in the regular expression pattern. For details, see [Regular Expression Options](/dotnet/standard/base-types/regular-expression-options). - - - -## Examples - The following example defines two regular expressions that identify repeated words in text but that are instantiated using different `RegexOptions` values. The first regular expression is case-insensitive; case is ignored when determining whether a word is identical to the preceding word. The second regular expression is case-sensitive; a word must match the case of the preceding word exactly to be considered a duplicate. + class: + +- The class constructor. + +- The method. + +- The method. + +- The method. + +- The method. + +- The and methods. + + A `RegexOptions` value can also be supplied as a parameter to the constructor, or it can be assigned directly to the property. The resulting object is then used in the call to the method. + + Several options provided by members of the `RegexOptions` enumeration (in particular, by its `ExplicitCapture`, `IgnoreCase`, `Multiline`, and `Singleline` members) can instead be provided by using an inline option character in the regular expression pattern. For details, see [Regular Expression Options](/dotnet/standard/base-types/regular-expression-options). + + + +## Examples + The following example defines two regular expressions that identify repeated words in text but that are instantiated using different `RegexOptions` values. The first regular expression is case-insensitive; case is ignored when determining whether a word is identical to the preceding word. The second regular expression is case-sensitive; a word must match the case of the preceding word exactly to be considered a duplicate. :::code language="csharp" source="~/snippets/csharp/System.Text.RegularExpressions/RegexOptions/Overview/RegexOptions.cs" interactive="try-dotnet" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.Text.RegularExpressions.RegexOptions/vb/RegexOptions.vb" id="Snippet1"::: - + ]]> diff --git a/xml/System.Text/ASCIIEncoding.xml b/xml/System.Text/ASCIIEncoding.xml index 3a9b0c7020b..0388da988b7 100644 --- a/xml/System.Text/ASCIIEncoding.xml +++ b/xml/System.Text/ASCIIEncoding.xml @@ -63,9 +63,9 @@ corresponds to the Windows code page 20127. Because ASCII is a 7-bit encoding, ASCII characters are limited to the lowest 128 Unicode characters, from U+0000 to U+007F. If you use the default encoder returned by the property or the constructor, characters outside that range are replaced with a question mark (?) before the encoding operation is performed. Because the class supports only a limited character set, the , , and classes are better suited for globalized applications. The following considerations can help you to decide whether to use : -- Some protocols require ASCII or a subset of ASCII. In these cases ASCII encoding is appropriate. +- Some protocols require ASCII or a subset of ASCII. In these cases ASCII encoding is appropriate. -- If an 8-bit encoding is expected, then ASCII probably isn't the correct choice. Instead, consider using UTF8 instead of ASCII. For the characters U+0000 through U+007F, the results are identical, but all Unicode characters are representable in UTF-8, which avoids data loss. +- If an 8-bit encoding is expected, then ASCII probably isn't the correct choice. Instead, consider using UTF8 instead of ASCII. For the characters U+0000 through U+007F, the results are identical, but all Unicode characters are representable in UTF-8, which avoids data loss. > [!CAUTION] > does not provide error detection. For security reasons, you should use , , or and enable error detection. diff --git a/xml/System.Text/CodePagesEncodingProvider.xml b/xml/System.Text/CodePagesEncodingProvider.xml index 149ac295a93..0c1d7169032 100644 --- a/xml/System.Text/CodePagesEncodingProvider.xml +++ b/xml/System.Text/CodePagesEncodingProvider.xml @@ -49,29 +49,29 @@ The .NET Framework for the Windows desktop supports a large set of Unicode and code page encodings. .NET Core, on the other hand, supports only the following encodings: -- ASCII (code page 20127), which is returned by the property. +- ASCII (code page 20127), which is returned by the property. -- ISO-8859-1 (code page 28591). +- ISO-8859-1 (code page 28591). -- UTF-7 (code page 65000), which is returned by the property. +- UTF-7 (code page 65000), which is returned by the property. -- UTF-8 (code page 65001), which is returned by the property. +- UTF-8 (code page 65001), which is returned by the property. -- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. +- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. -- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. +- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. -- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. +- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. -- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. +- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. Other than code page 20127, code page encodings are not supported. The class extends to make these code pages available to .NET Core. To use these additional code pages, you do the following: -- Retrieve a object from the static property. +- Retrieve a object from the static property. -- Pass the object to the method. +- Pass the object to the method. After an object is registered, the encodings that it supports are available by calling the overloads of ; you should not call the overloads. @@ -94,31 +94,31 @@ The .NET Framework supports a large number of character encodings and code pages. You can get a complete list of encodings by calling the method, which is available in the .NET Framework. On the other hand, .NET Core only supports the following encodings by default: -- ASCII (code page 20127), which is returned by the property. +- ASCII (code page 20127), which is returned by the property. -- ISO-8859-1 (code page 28591). +- ISO-8859-1 (code page 28591). -- UTF-7 (code page 65000), which is returned by the property. +- UTF-7 (code page 65000), which is returned by the property. -- UTF-8 (code page 65001), which is returned by the property. +- UTF-8 (code page 65001), which is returned by the property. -- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. +- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. -- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. +- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. -- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. +- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. -- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. +- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. To retrieve an encoding that is present in .NET Framework but not in .NET Core, you do the following: -- Add a reference to the *System.Text.Encoding.CodePages.dll* assembly to your project. +- Add a reference to the *System.Text.Encoding.CodePages.dll* assembly to your project. -- Get the object from the static property. +- Get the object from the static property. -- Pass the object to the method to make the encodings supplied by the object available to the common language runtime. +- Pass the object to the method to make the encodings supplied by the object available to the common language runtime. -- Call an overload to retrieve the encoding. The method will call the corresponding method to determine whether it can supply the requested encoding. +- Call an overload to retrieve the encoding. The method will call the corresponding method to determine whether it can supply the requested encoding. ]]> @@ -258,29 +258,29 @@ The .NET Framework supports a large number of character encodings and code pages The .NET Framework supports a large number of character encodings and code pages. You can get a complete list of encodings by calling the method, which is available in the .NET Framework. On the other hand, .NET Core only supports the following encodings by default: -- ASCII (code page 20127), which is returned by the property. +- ASCII (code page 20127), which is returned by the property. -- ISO-8859-1 (code page 28591). +- ISO-8859-1 (code page 28591). -- UTF-7 (code page 65000), which is returned by the property. +- UTF-7 (code page 65000), which is returned by the property. -- UTF-8 (code page 65001), which is returned by the property. +- UTF-8 (code page 65001), which is returned by the property. -- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. +- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. -- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. +- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. -- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. +- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. -- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. +- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. To retrieve an encoding that is present in the .NET Framework but not in .NET Core, you do the following: -- Get the object from the static property. +- Get the object from the static property. -- Pass the object to the method to make the encodings supplied by the object available to the common language runtime. +- Pass the object to the method to make the encodings supplied by the object available to the common language runtime. -- Call an overload to retrieve the encoding. The method will call the corresponding method to determine whether it can supply the requested encoding. +- Call an overload to retrieve the encoding. The method will call the corresponding method to determine whether it can supply the requested encoding. ]]> diff --git a/xml/System.Text/DecoderFallback.xml b/xml/System.Text/DecoderFallback.xml index 921c46f522e..665c3a0e063 100644 --- a/xml/System.Text/DecoderFallback.xml +++ b/xml/System.Text/DecoderFallback.xml @@ -67,31 +67,31 @@ Provides a failure-handling mechanism, called a fallback, for an encoded input byte sequence that cannot be converted to an output character. - class. Specifically, a character is encoded to a byte sequence by calling the encoding type's method, and the byte sequence is decoded to a character array or a string by calling the or method. - - A decoding operation can fail if the input byte sequence cannot be mapped by the encoding. For example, an object cannot decode a byte sequence if that sequence represents a character that has a code point value that is outside the range U+0000 to U+007F. - - When a decoding conversion cannot be performed, the .NET Framework provides a failure-handling mechanism called a fallback. Your application can use predefined .NET Framework decoder fallbacks, or it can create a custom decoder fallback derived from the and classes. - - and are the base classes for all decoding fallback handlers in the .NET Framework. They support the following three kinds of fallback handling mechanisms: - -- Best-fit fallback, which maps valid Unicode characters that cannot be decoded to an approximate equivalent. For example, a best-fit fallback handler for the class might map Æ (U+00C6) to AE (U+0041 + U+0045). A best-fit fallback handler might also be implemented to transliterate one alphabet (such as Cyrillic) to another (such as Latin or Roman). The .NET Framework does not provide any public best-fit fallback implementations. - -- Replacement fallback, which replaces each character that cannot be decoded with a predefined string. The .NET Framework provides a predefined replacement fallback handler. The class replaces each byte sequence that cannot be decoded with a question mark character ("?", or U+003F) or a REPLACEMENT CHARACTER (U+FFFD). You can customize the replacement string by specifying a substitute in the call to the constructor. After the substitute string is emitted, the decoding operation continues converting the remainder of the input. - -- Exception fallback, which throws an exception when a byte sequence cannot be decoded. The .NET Framework provides a predefined exception fallback handler. The class throws a when an invalid byte sequence is encountered, and the decoding operation terminates. - - If you choose to implement a custom solution, you must override the following abstract members of the class: - -- The method, which returns a class instance derived from . Depending on the type of fallback handler that you are developing, the implementation is responsible for performing the mapping or replacement, or for throwing the exception. - -- The property, which returns the maximum number of characters that the fallback implementation can return. For an exception fallback handler, its value should be zero. - - For more information about encoding, decoding, and fallback strategies, see [Character Encoding in the .NET Framework](/dotnet/standard/base-types/character-encoding). - + class. Specifically, a character is encoded to a byte sequence by calling the encoding type's method, and the byte sequence is decoded to a character array or a string by calling the or method. + + A decoding operation can fail if the input byte sequence cannot be mapped by the encoding. For example, an object cannot decode a byte sequence if that sequence represents a character that has a code point value that is outside the range U+0000 to U+007F. + + When a decoding conversion cannot be performed, the .NET Framework provides a failure-handling mechanism called a fallback. Your application can use predefined .NET Framework decoder fallbacks, or it can create a custom decoder fallback derived from the and classes. + + and are the base classes for all decoding fallback handlers in the .NET Framework. They support the following three kinds of fallback handling mechanisms: + +- Best-fit fallback, which maps valid Unicode characters that cannot be decoded to an approximate equivalent. For example, a best-fit fallback handler for the class might map Æ (U+00C6) to AE (U+0041 + U+0045). A best-fit fallback handler might also be implemented to transliterate one alphabet (such as Cyrillic) to another (such as Latin or Roman). The .NET Framework does not provide any public best-fit fallback implementations. + +- Replacement fallback, which replaces each character that cannot be decoded with a predefined string. The .NET Framework provides a predefined replacement fallback handler. The class replaces each byte sequence that cannot be decoded with a question mark character ("?", or U+003F) or a REPLACEMENT CHARACTER (U+FFFD). You can customize the replacement string by specifying a substitute in the call to the constructor. After the substitute string is emitted, the decoding operation continues converting the remainder of the input. + +- Exception fallback, which throws an exception when a byte sequence cannot be decoded. The .NET Framework provides a predefined exception fallback handler. The class throws a when an invalid byte sequence is encountered, and the decoding operation terminates. + + If you choose to implement a custom solution, you must override the following abstract members of the class: + +- The method, which returns a class instance derived from . Depending on the type of fallback handler that you are developing, the implementation is responsible for performing the mapping or replacement, or for throwing the exception. + +- The property, which returns the maximum number of characters that the fallback implementation can return. For an exception fallback handler, its value should be zero. + + For more information about encoding, decoding, and fallback strategies, see [Character Encoding in the .NET Framework](/dotnet/standard/base-types/character-encoding). + ]]> @@ -183,13 +183,13 @@ When overridden in a derived class, initializes a new instance of the class. An object that provides a fallback buffer for a decoder. - that is responsible for performing the fallback operation. For example, of the predefined implementations in the .NET Framework, the method returns a object, and the method returns a object. - - The method is called by a decoder when it encounters the first byte that it is unable to decode. The object returned by this method provides the fallback implementation and is responsible for returning the string that replaces the byte or bytes that could not be decoded. - + that is responsible for performing the fallback operation. For example, of the predefined implementations in the .NET Framework, the method returns a object, and the method returns a object. + + The method is called by a decoder when it encounters the first byte that it is unable to decode. The object returned by this method provides the fallback implementation and is responsible for returning the string that replaces the byte or bytes that could not be decoded. + ]]> @@ -282,11 +282,11 @@ When overridden in a derived class, gets the maximum number of characters the current object can return. The maximum number of characters the current object can return. - diff --git a/xml/System.Text/DecoderFallbackBuffer.xml b/xml/System.Text/DecoderFallbackBuffer.xml index cba230c317a..71735149f69 100644 --- a/xml/System.Text/DecoderFallbackBuffer.xml +++ b/xml/System.Text/DecoderFallbackBuffer.xml @@ -63,27 +63,27 @@ The .NET Framework provides a failure handling mechanism, called a fallback, if a conversion cannot be performed. All decoder fallback handlers must implement the following: -- A decoder fallback, which is represented by a class derived from the class. +- A decoder fallback, which is represented by a class derived from the class. -- A decoder fallback buffer, which is represented by a type derived from the class that can return a string to the conversion operation. +- A decoder fallback buffer, which is represented by a type derived from the class that can return a string to the conversion operation. Fallbacks can use three strategies to handle conversion failures: -- Best-fit mapping. The decoder fallback buffer can return a string that represents a close approximation to the input byte sequence. The .NET Framework does not provide a public best-fit implementation. +- Best-fit mapping. The decoder fallback buffer can return a string that represents a close approximation to the input byte sequence. The .NET Framework does not provide a public best-fit implementation. -- Replacement. The decoder fallback buffer can return a string, such as a question mark ("?"), that indicates that a byte sequence could not be decoded. In the .NET Framework, the and classes provide a public replacement fallback buffer implementation. The constructor of the class enables you to define the replacement string. +- Replacement. The decoder fallback buffer can return a string, such as a question mark ("?"), that indicates that a byte sequence could not be decoded. In the .NET Framework, the and classes provide a public replacement fallback buffer implementation. The constructor of the class enables you to define the replacement string. -- Exception. The implementation throws an exception, which indicates that a byte sequence cannot be decoded, and terminates the decoding operation. In this case, the fallback handler must provide a implementation, although it does not return a string to the decoder. In the .NET Framework, the and classes provide a public exception fallback implementation that throws a when a byte sequence cannot be decoded. +- Exception. The implementation throws an exception, which indicates that a byte sequence cannot be decoded, and terminates the decoding operation. In this case, the fallback handler must provide a implementation, although it does not return a string to the decoder. In the .NET Framework, the and classes provide a public exception fallback implementation that throws a when a byte sequence cannot be decoded. The buffer in a implementation represents the entire string to be returned to the decoder in response to a decoder fallback. Generally, implementations also include state information, such as the index of the next character to return to the decoder and the number of remaining characters to be returned. Because is an abstract class, it requires derived classes to implement the following members at a minimum: -- The method, which is called by the decoder when it cannot decode a byte sequence. The decoder passes two pieces of information to the fallback buffer implementation: an array containing the bytes that could not be decoded and the index of the first byte in the input byte array. In a decoder fallback exception handler, the exception is thrown in this method. Otherwise, the method returns `true` if it provides a fallback, or `false` if it does not. +- The method, which is called by the decoder when it cannot decode a byte sequence. The decoder passes two pieces of information to the fallback buffer implementation: an array containing the bytes that could not be decoded and the index of the first byte in the input byte array. In a decoder fallback exception handler, the exception is thrown in this method. Otherwise, the method returns `true` if it provides a fallback, or `false` if it does not. -- The method, which is called repeatedly by the decoder if the method returns `true`. In successive calls, the handler should return each character in its buffer. When it has returned all characters, it should return U+0000. An exception fallback handler always returns U+0000. +- The method, which is called repeatedly by the decoder if the method returns `true`. In successive calls, the handler should return each character in its buffer. When it has returned all characters, it should return U+0000. An exception fallback handler always returns U+0000. -- The method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. An exception handler always returns `false`. +- The method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. An exception handler always returns `false`. -- The property, which indicates the number of remaining characters to be returned to the decoder. An exception fallback handler always returns zero. +- The property, which indicates the number of remaining characters to be returned to the decoder. An exception fallback handler always returns zero. ]]> diff --git a/xml/System.Text/DecoderReplacementFallback.xml b/xml/System.Text/DecoderReplacementFallback.xml index 3ed787d0087..15b72b4ef1d 100644 --- a/xml/System.Text/DecoderReplacementFallback.xml +++ b/xml/System.Text/DecoderReplacementFallback.xml @@ -74,9 +74,9 @@ The replacement string used by a object is determined by the call to its class constructor. Two options are available: -- Replacement with the default character. If you call the constructor, the replacement character is "?" (U+003F). +- Replacement with the default character. If you call the constructor, the replacement character is "?" (U+003F). -- Replacement with a string of your choice. If you call the constructor, you provide the replacement string. +- Replacement with a string of your choice. If you call the constructor, you provide the replacement string. This class is one of two .NET Framework classes that implement different fallback strategies for handling decoding conversion failures. The other class is the class, which throws a when an invalid byte sequence is encountered. @@ -84,7 +84,7 @@ ## Examples The following code example demonstrates the class. - + :::code language="csharp" source="~/snippets/csharp/System.Text/DecoderReplacementFallback/Overview/fallDecRpl.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/sys.txt.fallbackDecRpl/vb/fallDecRpl.vb" id="Snippet1"::: diff --git a/xml/System.Text/EncoderFallback.xml b/xml/System.Text/EncoderFallback.xml index 1854acf4424..27ae8c0c833 100644 --- a/xml/System.Text/EncoderFallback.xml +++ b/xml/System.Text/EncoderFallback.xml @@ -67,31 +67,31 @@ Provides a failure-handling mechanism, called a fallback, for an input character that cannot be converted to an encoded output byte sequence. - class. Specifically, a character is encoded to a byte sequence by calling the encoding type's method, and the byte sequence is decoded to a character array or a string by calling the or method. - - An encoding operation can fail if the input character cannot be represented by the encoding. For example, an object cannot encode a character whose Unicode code point value is outside the range U+0000 to U+007F. - - When an encoding conversion cannot be performed, the .NET Framework provides a failure-handling mechanism called a fallback. Your application can use predefined .NET Framework encoder fallbacks, or it can create a custom encoder fallback derived from the and classes. - - and are the base classes for all encoding fallback handlers in the .NET Framework. They support the following three kinds of fallback handling mechanisms: - -- Best-fit fallback, which maps valid Unicode characters that cannot be encoded to an approximate equivalent. For example, a best-fit fallback handler for the class might map Æ (U+00C6) to AE (U+0041 + U+0045). A best-fit fallback handler might also be implemented to transliterate one alphabet (such as Cyrillic) to another (such as Latin or Roman). The .NET Framework does not provide any public best-fit fallback implementations. - -- Replacement fallback, which replaces each character that cannot be encoded with a predefined string. The .NET Framework provides a predefined replacement fallback handler. The class replaces each byte sequence that cannot be decoded with a question mark character ("?", or U+003F) or a REPLACEMENT CHARACTER (U+FFFD). You can customize the replacement string by specifying a substitute in the call to the constructor. After the substitute string is emitted, the encoding operation continues converting the remainder of the input. - -- Exception fallback, which throws an exception when a character cannot be encoded. The .NET Framework provides a predefined exception fallback handler. The class throws an when an invalid character is encountered, and the encoding operation terminates. - - If you choose to implement a custom solution, you must override the following abstract members of the class: - -- The method, which returns a class instance derived from . Depending on the type of fallback handler that you are developing, the implementation is responsible for performing the mapping or replacement, or for throwing the exception. - -- The property, which returns the maximum number of characters that the fallback implementation can return. For an exception fallback handler, its value should be zero. - - For more information about encoding, decoding, and fallback strategies, see [Character Encoding in the .NET Framework](/dotnet/standard/base-types/character-encoding). - + class. Specifically, a character is encoded to a byte sequence by calling the encoding type's method, and the byte sequence is decoded to a character array or a string by calling the or method. + + An encoding operation can fail if the input character cannot be represented by the encoding. For example, an object cannot encode a character whose Unicode code point value is outside the range U+0000 to U+007F. + + When an encoding conversion cannot be performed, the .NET Framework provides a failure-handling mechanism called a fallback. Your application can use predefined .NET Framework encoder fallbacks, or it can create a custom encoder fallback derived from the and classes. + + and are the base classes for all encoding fallback handlers in the .NET Framework. They support the following three kinds of fallback handling mechanisms: + +- Best-fit fallback, which maps valid Unicode characters that cannot be encoded to an approximate equivalent. For example, a best-fit fallback handler for the class might map Æ (U+00C6) to AE (U+0041 + U+0045). A best-fit fallback handler might also be implemented to transliterate one alphabet (such as Cyrillic) to another (such as Latin or Roman). The .NET Framework does not provide any public best-fit fallback implementations. + +- Replacement fallback, which replaces each character that cannot be encoded with a predefined string. The .NET Framework provides a predefined replacement fallback handler. The class replaces each byte sequence that cannot be decoded with a question mark character ("?", or U+003F) or a REPLACEMENT CHARACTER (U+FFFD). You can customize the replacement string by specifying a substitute in the call to the constructor. After the substitute string is emitted, the encoding operation continues converting the remainder of the input. + +- Exception fallback, which throws an exception when a character cannot be encoded. The .NET Framework provides a predefined exception fallback handler. The class throws an when an invalid character is encountered, and the encoding operation terminates. + + If you choose to implement a custom solution, you must override the following abstract members of the class: + +- The method, which returns a class instance derived from . Depending on the type of fallback handler that you are developing, the implementation is responsible for performing the mapping or replacement, or for throwing the exception. + +- The property, which returns the maximum number of characters that the fallback implementation can return. For an exception fallback handler, its value should be zero. + + For more information about encoding, decoding, and fallback strategies, see [Character Encoding in the .NET Framework](/dotnet/standard/base-types/character-encoding). + ]]> @@ -183,13 +183,13 @@ When overridden in a derived class, initializes a new instance of the class. An object that provides a fallback buffer for an encoder. - that is responsible for performing the fallback operation. For example, of the predefined implementations in the .NET Framework, the method returns an object, and the method returns an object. - - The method is called by an encoder when it encounters the first character that it is unable to encode. The object returned by this method provides the fallback implementation and is responsible for returning the byte array that replaces the character or characters that could not be encoded. - + that is responsible for performing the fallback operation. For example, of the predefined implementations in the .NET Framework, the method returns an object, and the method returns an object. + + The method is called by an encoder when it encounters the first character that it is unable to encode. The object returned by this method provides the fallback implementation and is responsible for returning the byte array that replaces the character or characters that could not be encoded. + ]]> @@ -282,11 +282,11 @@ When overridden in a derived class, gets the maximum number of characters the current object can return. The maximum number of characters the current object can return. - diff --git a/xml/System.Text/EncoderFallbackBuffer.xml b/xml/System.Text/EncoderFallbackBuffer.xml index 8ca071942af..3cc8600a59a 100644 --- a/xml/System.Text/EncoderFallbackBuffer.xml +++ b/xml/System.Text/EncoderFallbackBuffer.xml @@ -56,35 +56,35 @@ Provides a buffer that allows a fallback handler to return an alternate string to an encoder when it cannot encode an input character. - class. - -- An encoder fallback buffer, which is represented by a type derived from the class that can return a string to the conversion operation. - - Fallbacks can use three strategies to handle conversion failures: - -- Best-fit mapping. The encoder fallback buffer can return a string that represents a close approximation to the input character. The .NET Framework does not provide a public best-fit implementation. - -- Replacement. The encoder fallback buffer can return a string, such as a question mark ("?"), that indicates that a character could not be encoded. In the .NET Framework, the and classes provide a public replacement fallback buffer implementation. The constructor of the class enables you to define the replacement string. - -- Exception. The implementation throws an exception, which indicates that a character cannot be encoded, and terminates the encoding operation. In this case, the fallback handler must provide an implementation, although it does not return a string to the encoder. In the .NET Framework, the and classes provide a public exception fallback implementation that throws an when a character cannot be encoded. - - The buffer in an implementation represents the entire string to be returned to the encoder in response to an encoder fallback. Generally, implementations also include state information, such as the index of the next character to return to the encoder and the number of remaining characters to be returned. Because is an abstract class, it requires derived classes to implement the following members at a minimum: - -- The overloaded method, which is called by the encoder when it cannot encode a character. The encoder passes two pieces of information to the fallback buffer implementation: the character or surrogate pair that could not be encoded and the index of the character in the input. In an encoder fallback exception handler, the exception is thrown in this method. Otherwise, the method returns `true` if it provides a fallback, or `false` if it does not. - -- The method, which is called repeatedly by the encoder if the method returns `true`. In successive calls, the handler should return each character in its buffer. When it has returned all characters, it should return U+0000. An exception handler always returns U+0000. - -- The method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. An exception handler always returns `false`. - -- The property, which indicates the number of remaining characters to be returned to the encoder. An exception fallback handler always returns zero. - + class. + +- An encoder fallback buffer, which is represented by a type derived from the class that can return a string to the conversion operation. + + Fallbacks can use three strategies to handle conversion failures: + +- Best-fit mapping. The encoder fallback buffer can return a string that represents a close approximation to the input character. The .NET Framework does not provide a public best-fit implementation. + +- Replacement. The encoder fallback buffer can return a string, such as a question mark ("?"), that indicates that a character could not be encoded. In the .NET Framework, the and classes provide a public replacement fallback buffer implementation. The constructor of the class enables you to define the replacement string. + +- Exception. The implementation throws an exception, which indicates that a character cannot be encoded, and terminates the encoding operation. In this case, the fallback handler must provide an implementation, although it does not return a string to the encoder. In the .NET Framework, the and classes provide a public exception fallback implementation that throws an when a character cannot be encoded. + + The buffer in an implementation represents the entire string to be returned to the encoder in response to an encoder fallback. Generally, implementations also include state information, such as the index of the next character to return to the encoder and the number of remaining characters to be returned. Because is an abstract class, it requires derived classes to implement the following members at a minimum: + +- The overloaded method, which is called by the encoder when it cannot encode a character. The encoder passes two pieces of information to the fallback buffer implementation: the character or surrogate pair that could not be encoded and the index of the character in the input. In an encoder fallback exception handler, the exception is thrown in this method. Otherwise, the method returns `true` if it provides a fallback, or `false` if it does not. + +- The method, which is called repeatedly by the encoder if the method returns `true`. In successive calls, the handler should return each character in its buffer. When it has returned all characters, it should return U+0000. An exception handler always returns U+0000. + +- The method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. An exception handler always returns `false`. + +- The property, which indicates the number of remaining characters to be returned to the encoder. An exception fallback handler always returns zero. + ]]> @@ -189,11 +189,11 @@ if the fallback buffer can process ; if the fallback buffer ignores . - and methods call if they encounter an unknown input character that cannot be encoded. A return value of `true` indicates that the fallback buffer can process the input character, which causes the calling method to call the method to obtain each character of the fallback buffer. Because it does not process individual characters, the method in an exception fallback handler throws an exception. - + and methods call if they encounter an unknown input character that cannot be encoded. A return value of `true` indicates that the fallback buffer can process the input character, which causes the calling method to call the method to obtain each character of the fallback buffer. Because it does not process individual characters, the method in an exception fallback handler throws an exception. + ]]> @@ -249,11 +249,11 @@ if the fallback buffer can process and ; if the fallback buffer ignores the surrogate pair. - and methods call if they encounter a surrogate pair in their input. A return value of `true` indicates that the fallback buffer can process the surrogate pair, which causes the calling method to call the method to obtain each character of the fallback buffer. Because it does not process individual characters, the method in an exception fallback handler throws an exception. - + and methods call if they encounter a surrogate pair in their input. A return value of `true` indicates that the fallback buffer can process the surrogate pair, which causes the calling method to call the method to obtain each character of the fallback buffer. Because it does not process individual characters, the method in an exception fallback handler throws an exception. + ]]> @@ -301,13 +301,13 @@ When overridden in a derived class, retrieves the next character in the fallback buffer. The next character in the fallback buffer. - method if the operation encounters an unknown character or surrogate pair in the input. For example, in the case of a replacement fallback, if the method returns `true`, a substitute string exists that can be encoded instead of the unknown input. The encoding operation calls the method repeatedly and obtains the substitute string one character at a time. When all characters in the fallback buffer have been returned to the encoder, the method should return U+0000. - - For an exception fallback handler, the method should return U+0000. - + method if the operation encounters an unknown character or surrogate pair in the input. For example, in the case of a replacement fallback, if the method returns `true`, a substitute string exists that can be encoded instead of the unknown input. The encoding operation calls the method repeatedly and obtains the substitute string one character at a time. When all characters in the fallback buffer have been returned to the encoder, the method should return U+0000. + + For an exception fallback handler, the method should return U+0000. + ]]> @@ -356,11 +356,11 @@ if the operation was successful; otherwise, . - @@ -407,13 +407,13 @@ When overridden in a derived class, gets the number of characters in the current object that remain to be processed. The number of characters in the current fallback buffer that have not yet been processed. - method returns `true` if is a nonzero value. - - For an exception fallback handler, the method should return zero. - + method returns `true` if is a nonzero value. + + For an exception fallback handler, the method should return zero. + ]]> diff --git a/xml/System.Text/EncoderReplacementFallback.xml b/xml/System.Text/EncoderReplacementFallback.xml index 3e9121d530b..faa3caf6761 100644 --- a/xml/System.Text/EncoderReplacementFallback.xml +++ b/xml/System.Text/EncoderReplacementFallback.xml @@ -74,9 +74,9 @@ The replacement string used by an object is determined by the call to its class constructor. Two options are available: -- Replacement with the default character. If you call the constructor, the replacement character is "?" (U+003F). +- Replacement with the default character. If you call the constructor, the replacement character is "?" (U+003F). -- Replacement with a string of your choice. If you call the constructor, you provide the replacement string. +- Replacement with a string of your choice. If you call the constructor, you provide the replacement string. If you choose a fallback string to use with this class, make sure that the string is composed entirely of characters that can be encoded in the target encoding. Otherwise, a recursive fallback results, causing an . @@ -86,7 +86,7 @@ ## Examples The following example demonstrates the class. - + :::code language="csharp" source="~/snippets/csharp/System.Text/EncoderReplacementFallback/Overview/fallEncRpl.cs" id="Snippet1"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR/sys.txt.fallbackEncRpl/vb/fallEncRpl.vb" id="Snippet1"::: diff --git a/xml/System.Text/EncodingProvider.xml b/xml/System.Text/EncodingProvider.xml index 0a202e72cc3..89285f0eeae 100644 --- a/xml/System.Text/EncodingProvider.xml +++ b/xml/System.Text/EncodingProvider.xml @@ -72,21 +72,21 @@ The .NET Framework supports a large number of character encodings and code pages. You can get a complete list of encodings available in the .NET Framework by calling the method. .NET Core, on the other hand, by default supports only the following encodings: -- ASCII (code page 20127), which is returned by the property. +- ASCII (code page 20127), which is returned by the property. -- ISO-8859-1 (code page 28591). +- ISO-8859-1 (code page 28591). -- UTF-7 (code page 65000), which is returned by the property. +- UTF-7 (code page 65000), which is returned by the property. -- UTF-8 (code page 65001), which is returned by the property. +- UTF-8 (code page 65001), which is returned by the property. -- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. +- UTF-16 and UTF-16LE (code page 1200), which is returned by the property. -- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. +- UTF-16BE (code page 1201), which is instantiated by calling the or constructor with a `bigEndian` value of `true`. -- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. +- UTF-32 and UTF-32LE (code page 12000), which is returned by the property. -- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. +- UTF-32BE (code page 12001), which is instantiated by calling an constructor that has a `bigEndian` parameter and providing a value of `true` in the method call. Starting with the .NET Framework 4.6, is the base class that makes otherwise unavailable encodings available to the .NET Framework. This involves the following steps: diff --git a/xml/System.Text/StringBuilder.xml b/xml/System.Text/StringBuilder.xml index 1d5e59862ae..f4059a81161 100644 --- a/xml/System.Text/StringBuilder.xml +++ b/xml/System.Text/StringBuilder.xml @@ -2806,13 +2806,13 @@ The index of a format item is less than 0 (zero), or greater than or equal to th The `provider` parameter specifies an implementation that can provide formatting information for the objects in `args`. `provider` can be any of the following: -- A object that provides culture-specific formatting information. +- A object that provides culture-specific formatting information. -- A object that provides culture-specific formatting information for `arg0` if it is a numeric value. +- A object that provides culture-specific formatting information for `arg0` if it is a numeric value. -- A object that provides culture-specific formatting information for `arg0` if it is a date and time value. +- A object that provides culture-specific formatting information for `arg0` if it is a date and time value. -- A custom implementation that provides formatting information for `arg0`. Typically, such an implementation also implements the interface. +- A custom implementation that provides formatting information for `arg0`. Typically, such an implementation also implements the interface. If the `provider` parameter is `null`, formatting information is obtained from the current culture. @@ -2958,13 +2958,13 @@ The index of a format item is less than 0 (zero), or greater than or equal to th The `provider` parameter specifies an implementation that can provide formatting information for the objects in `args`. `provider` can be any of the following: -- A object that provides culture-specific formatting information. +- A object that provides culture-specific formatting information. -- A object that provides culture-specific formatting information for numeric values in `args`. +- A object that provides culture-specific formatting information for numeric values in `args`. -- A object that provides culture-specific formatting information for date and time values in `args`. +- A object that provides culture-specific formatting information for date and time values in `args`. -- A custom implementation that provides formatting information for one or more of the objects in `args`. Typically, such an implementation also implements the interface. The second example in the next section illustrates an method call with a custom implementation. +- A custom implementation that provides formatting information for one or more of the objects in `args`. Typically, such an implementation also implements the interface. The second example in the next section illustrates an method call with a custom implementation. If the `provider` parameter is `null`, format provider information is obtained from the current culture. @@ -3425,13 +3425,13 @@ The index of a format item is less than 0 (zero), or greater than or equal to th The `provider` parameter specifies an implementation that can provide formatting information for `arg0` and `arg1`. `provider` can be any of the following: -- A object that provides culture-specific formatting information. +- A object that provides culture-specific formatting information. -- A object that provides culture-specific formatting information for `arg0` or `arg1` if they are numeric values. +- A object that provides culture-specific formatting information for `arg0` or `arg1` if they are numeric values. -- A object that provides culture-specific formatting information for `arg0` or `arg1` if they are date and time values. +- A object that provides culture-specific formatting information for `arg0` or `arg1` if they are date and time values. -- A custom implementation that provides formatting information for `arg0` and `arg1`. Typically, such an implementation also implements the interface. +- A custom implementation that provides formatting information for `arg0` and `arg1`. Typically, such an implementation also implements the interface. If the `provider` parameter is `null`, format provider information is obtained from the current culture. @@ -3682,13 +3682,13 @@ The index of a format item is less than 0 (zero), or greater than or equal to th The `provider` parameter specifies an implementation that can provide formatting information for `arg0` and `arg1`. `provider` can be any of the following: -- A object that provides culture-specific formatting information. +- A object that provides culture-specific formatting information. -- A object that provides culture-specific formatting information for `arg0` or `arg1` if they are numeric values. +- A object that provides culture-specific formatting information for `arg0` or `arg1` if they are numeric values. -- A object that provides culture-specific formatting information for `arg0`, `arg1`, or `arg2` if they are date and time values. +- A object that provides culture-specific formatting information for `arg0`, `arg1`, or `arg2` if they are date and time values. -- A custom implementation that provides formatting information for `arg0`, `arg1`, and `arg2`. Typically, such an implementation also implements the interface. +- A custom implementation that provides formatting information for `arg0`, `arg1`, and `arg2`. Typically, such an implementation also implements the interface. If the `provider` parameter is `null`, format provider information is obtained from the current culture. diff --git a/xml/System.Text/UTF32Encoding.xml b/xml/System.Text/UTF32Encoding.xml index f2f6053a918..bd7e337ce73 100644 --- a/xml/System.Text/UTF32Encoding.xml +++ b/xml/System.Text/UTF32Encoding.xml @@ -62,19 +62,19 @@ The [Unicode Standard](https://go.microsoft.com/fwlink/?linkid=37123) assigns a code point (a number) to each character in every supported script. A Unicode Transformation Format (UTF) is a way to encode that code point. The [Unicode Standard](https://go.microsoft.com/fwlink/?linkid=37123) uses the following UTFs: -- UTF-8, which represents each code point as a sequence of one to four bytes. +- UTF-8, which represents each code point as a sequence of one to four bytes. -- UTF-16, which represents each code point as a sequence of one to two 16-bit integers. +- UTF-16, which represents each code point as a sequence of one to two 16-bit integers. -- UTF-32, which represents each code point as a 32-bit integer. +- UTF-32, which represents each code point as a 32-bit integer. For more information about the UTFs and other encodings supported by , see [Character Encoding in .NET](/dotnet/standard/base-types/character-encoding). The class represents a UTF-32 encoding. The encoder can use the big endian byte order (most significant byte first) or the little endian byte order (least significant byte first). For example, the Latin Capital Letter A (code point U+0041) is serialized as follows (in hexadecimal): -- Big endian byte order: 00 00 00 41 +- Big endian byte order: 00 00 00 41 -- Little endian byte order: 41 00 00 00 +- Little endian byte order: 41 00 00 00 It is generally more efficient to store Unicode characters using the native byte order. For example, it is better to use the little endian byte order on little endian platforms, such as Intel computers. corresponds to the Windows code pages 12000 (little endian byte order) and 12001 (big endian byte order). You can determine the "endianness" of a particular architecture by calling the method. @@ -380,13 +380,13 @@ ## Remarks Two objects are considered equal if all of the following conditions are true: -- Both objects use the same byte order. +- Both objects use the same byte order. -- Both objects provide the byte order mark, or both do not. +- Both objects provide the byte order mark, or both do not. -- Both objects use the same encoder fallback. +- Both objects use the same encoder fallback. -- Both objects use the same decoder fallback. +- Both objects use the same decoder fallback. @@ -1774,17 +1774,17 @@ ## Remarks The object can provide a preamble, which is an array of bytes that can be prefixed to the sequence of bytes resulting from the encoding process. Prefacing a sequence of encoded bytes with a byte order mark (code points U+0000 U+FEFF) helps the decoder determine the byte order and the transformation format, or UTF. The Unicode byte order mark (BOM) is serialized as follows (in hexadecimal): -- Big endian byte order: 00 00 FE FF +- Big endian byte order: 00 00 FE FF -- Little endian byte order: FF FE 00 00 +- Little endian byte order: FF FE 00 00 You can instantiate a object whose method returns a valid BOM in the following ways: -- By retrieving the object returned by the property. +- By retrieving the object returned by the property. -- By calling the parameterless constructor to instantiate a object. +- By calling the parameterless constructor to instantiate a object. -- By supplying `true` as the value of the `byteOrderMark` argument to the and constructors. +- By supplying `true` as the value of the `byteOrderMark` argument to the and constructors. We recommend that you use the BOM, since it provides nearly certain identification of an encoding for files that otherwise have lost reference to the object, for example, untagged or improperly tagged web data, or random text files stored when a business did not have international concerns or other data. Often, user problems might be avoided if data is consistently and properly tagged. @@ -1956,17 +1956,17 @@ ## Remarks The object can provide a preamble, which is an span of bytes that can be prefixed to the sequence of bytes resulting from the encoding process. Prefacing a sequence of encoded bytes with a byte order mark (code points `U+0000` `U+FEFF`) helps the decoder determine the byte order and the transformation format, or UTF. The Unicode byte order mark (BOM) is serialized as follows (in hexadecimal): -- Big endian byte order: `00 00 FE FF` +- Big endian byte order: `00 00 FE FF` -- Little endian byte order: `FF FE 00 00` +- Little endian byte order: `FF FE 00 00` You can instantiate a object whose property is a valid BOM in the following ways: -- By retrieving the object returned by the property. +- By retrieving the object returned by the property. -- By calling the parameterless constructor to instantiate a object. +- By calling the parameterless constructor to instantiate a object. -- By supplying `true` as the value of the `byteOrderMark` argument to the and constructors. +- By supplying `true` as the value of the `byteOrderMark` argument to the and constructors. We recommend that you use the BOM, since it provides nearly certain identification of an encoding for files that otherwise have lost a reference to the object, such as untagged or improperly tagged web data, or random text files stored when a business did not have international concerns or other data. Often, user problems might be avoided if data is consistently and properly tagged. diff --git a/xml/System.Text/UTF8Encoding.xml b/xml/System.Text/UTF8Encoding.xml index 4601e1cd32c..e3a9db1f65a 100644 --- a/xml/System.Text/UTF8Encoding.xml +++ b/xml/System.Text/UTF8Encoding.xml @@ -371,11 +371,11 @@ ## Remarks Two objects are considered equal if all of the following conditions are true: -- Both objects provide the byte order mark, or both do not. +- Both objects provide the byte order mark, or both do not. -- Both objects use the same encoder fallback. +- Both objects use the same encoder fallback. -- Both objects use the same decoder fallback. +- Both objects use the same decoder fallback. @@ -2060,9 +2060,9 @@ You can instantiate a object whose method returns a valid BOM in the following ways: -- By retrieving the object returned by the property. +- By retrieving the object returned by the property. -- By calling a constructor with a `encoderShouldEmitUTF8Identifier` parameter and setting its value set to `true`. +- By calling a constructor with a `encoderShouldEmitUTF8Identifier` parameter and setting its value set to `true`. All other objects are configured to return an empty array rather than a valid BOM. @@ -2232,9 +2232,9 @@ You can instantiate a object whose `Preamble` is a valid BOM in the following ways: -- By retrieving the object returned by the property. +- By retrieving the object returned by the property. -- By calling a constructor with an `encoderShouldEmitUTF8Identifier` parameter and setting its value set to `true`. +- By calling a constructor with an `encoderShouldEmitUTF8Identifier` parameter and setting its value set to `true`. All other objects are configured to return a default span rather than a valid BOM. diff --git a/xml/System.Text/UnicodeEncoding.xml b/xml/System.Text/UnicodeEncoding.xml index 6fcd7ab1e86..693bc5db7d7 100644 --- a/xml/System.Text/UnicodeEncoding.xml +++ b/xml/System.Text/UnicodeEncoding.xml @@ -69,19 +69,19 @@ The [Unicode Standard](https://go.microsoft.com/fwlink/?linkid=37123) assigns a code point (a number) to each character in every supported script. A Unicode Transformation Format (UTF) is a way to encode that code point. The [Unicode Standard](https://go.microsoft.com/fwlink/?linkid=37123) uses the following UTFs: -- UTF-8, which represents each code point as a sequence of one to four bytes. +- UTF-8, which represents each code point as a sequence of one to four bytes. -- UTF-16, which represents each code point as a sequence of one to two 16-bit integers. +- UTF-16, which represents each code point as a sequence of one to two 16-bit integers. -- UTF-32, which represents each code point as a 32-bit integer. +- UTF-32, which represents each code point as a 32-bit integer. For more information about the UTFs and other encodings supported by , see [Character Encoding in the .NET Framework](/dotnet/standard/base-types/character-encoding). The class represents a UTF-16 encoding. The encoder can use either big endian byte order (most significant byte first) or little endian byte order (least significant byte first). For example, the Latin Capital Letter A (code point U+0041) is serialized as follows (in hexadecimal): -- Big endian byte order: 00 00 00 41 +- Big endian byte order: 00 00 00 41 -- Little endian byte order: 41 00 00 00 +- Little endian byte order: 41 00 00 00 It is generally more efficient to store Unicode characters using the native byte order of a particular platform. For example, it is better to use the little endian byte order on little endian platforms, such as Intel computers. The class corresponds to the Windows code pages 1200 (little endian byte order) and 1201 (big endian byte order). You can determine the "endianness" of a particular architecture by calling the method. @@ -452,13 +452,13 @@ ## Remarks Two objects are considered equal if all of the following conditions are true: -- Both objects use the same byte order (little-endian or big-endian). +- Both objects use the same byte order (little-endian or big-endian). -- Both objects provide the byte order mark, or both do not. +- Both objects provide the byte order mark, or both do not. -- Both objects use the same encoder fallback. +- Both objects use the same encoder fallback. -- Both objects use the same decoder fallback. +- Both objects use the same decoder fallback. @@ -1927,17 +1927,17 @@ ## Remarks The object can provide a preamble, which is a byte array that can be prefixed to the sequence of bytes resulting from the encoding process. Prefacing a sequence of encoded bytes with a byte order mark (code point U+FEFF) helps the decoder determine the byte order and the transformation format or UTF. The Unicode byte order mark (BOM) is serialized as follows (in hexadecimal): -- Big endian byte order: FE FF +- Big endian byte order: FE FF -- Little endian byte order: FF FE +- Little endian byte order: FF FE You can instantiate a object whose method returns a valid BOM in the following ways: -- By retrieving the object returned by the or property. +- By retrieving the object returned by the or property. -- By calling the parameterless constructor to instantiate a object. +- By calling the parameterless constructor to instantiate a object. -- By supplying `true` as the value of the `byteOrderMark` argument to the or constructors. +- By supplying `true` as the value of the `byteOrderMark` argument to the or constructors. We recommended that you use the BOM, since it provides nearly certain identification of an encoding for files that otherwise have lost a reference to their encoding, such as untagged or improperly tagged web data or random text files stored when a business did not have international concerns. Often user problems might be avoided if data is consistently and properly tagged. @@ -2109,17 +2109,17 @@ ## Remarks The object can provide a preamble, which is a byte span that can be prepended to the sequence of bytes resulting from the encoding process. Prefacing a sequence of encoded bytes with a byte order mark (code point `U+FEFF`) helps the decoder determine the byte order and the transformation format or UTF. The Unicode byte order mark (BOM) is serialized as follows (in hexadecimal): -- Big endian byte order: `FE FF` +- Big endian byte order: `FE FF` -- Little endian byte order: `FF FE` +- Little endian byte order: `FF FE` You can instantiate a object whose is a valid BOM in the following ways: -- By retrieving the object returned by the or property. +- By retrieving the object returned by the or property. -- By calling the parameterless constructor to instantiate a object. +- By calling the parameterless constructor to instantiate a object. -- By supplying `true` as the value of the `byteOrderMark` argument to the or constructors. +- By supplying `true` as the value of the `byteOrderMark` argument to the or constructors. We recommended that you use the BOM, since it provides nearly certain identification of an encoding for files that otherwise have lost a reference to their encoding, such as untagged or improperly tagged web data or random text files stored when a business did not have international concerns. Often user problems might be avoided if data is consistently and properly tagged. diff --git a/xml/System.Threading.Tasks/Parallel.xml b/xml/System.Threading.Tasks/Parallel.xml index 6b927b86a3f..88a84869ed3 100644 --- a/xml/System.Threading.Tasks/Parallel.xml +++ b/xml/System.Threading.Tasks/Parallel.xml @@ -127,9 +127,9 @@ ## Remarks The `body` delegate is invoked once for each value in the iteration range (`fromInclusive`, `toExclusive`). It is provided with two arguments: -- An value that represents the iteration count. +- An value that represents the iteration count. -- A instance that can be used to break out of the loop prematurely. The object is created by the compiler; it cannot be instantiated in user code. +- A instance that can be used to break out of the loop prematurely. The object is created by the compiler; it cannot be instantiated in user code. Calling the method informs the `for` operation that iterations after the current one don't have to execute. However, all iterations before the current one will still have to be executed if they haven't already. diff --git a/xml/System.Threading.Tasks/ParallelLoopState.xml b/xml/System.Threading.Tasks/ParallelLoopState.xml index 1303f612f2b..9a1a1d0ca6f 100644 --- a/xml/System.Threading.Tasks/ParallelLoopState.xml +++ b/xml/System.Threading.Tasks/ParallelLoopState.xml @@ -49,35 +49,35 @@ Enables iterations of parallel loops to interact with other iterations. An instance of this class is provided by the class to each loop; you can not create instances in your code. - or method. The example provides an illustration. - - Constructs such as `for` and `foreach` (in C#) and `For` and `For Each` (in Visual Basic) execute sequentially from the lowest index to the highest or from the first object in a set to the last. In contrast, the and methods do not. Because individual iterations of the loop run in parallel, they can begin and end in any order. The class allows individual iterations of parallel loops to interact with one another. The class allows you to: - -- Exit the current iteration and prevent any additional iterations from starting by calling the method. This does not affect iterations that have already begun execution. - -- Prevent any iterations with an index greater than the current index from executing by calling the method. This does not affect iterations that have already begun execution. - -- Determine whether an exception has occurred in any loop iteration by retrieving the value of the property. - -- Determine whether any iteration of the loop has called the method by retrieving the value of the property. You can use this property to return from iterations of the loop that started before the call to the method but are still executing. - -- Determine whether any iteration of the loop has called the or method or has thrown an exception by retrieving the value of the property. - -- Exit from a long-running iteration whose index is greater than the index of an iteration in which Break was called by retrieving the value of the property. - - - -## Examples - The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. As the output from the example shows, no iterations whose index is greater than the property value start after the call to the method. - + or method. The example provides an illustration. + + Constructs such as `for` and `foreach` (in C#) and `For` and `For Each` (in Visual Basic) execute sequentially from the lowest index to the highest or from the first object in a set to the last. In contrast, the and methods do not. Because individual iterations of the loop run in parallel, they can begin and end in any order. The class allows individual iterations of parallel loops to interact with one another. The class allows you to: + +- Exit the current iteration and prevent any additional iterations from starting by calling the method. This does not affect iterations that have already begun execution. + +- Prevent any iterations with an index greater than the current index from executing by calling the method. This does not affect iterations that have already begun execution. + +- Determine whether an exception has occurred in any loop iteration by retrieving the value of the property. + +- Determine whether any iteration of the loop has called the method by retrieving the value of the property. You can use this property to return from iterations of the loop that started before the call to the method but are still executing. + +- Determine whether any iteration of the loop has called the or method or has thrown an exception by retrieving the value of the property. + +- Exit from a long-running iteration whose index is greater than the index of an iteration in which Break was called by retrieving the value of the property. + + + +## Examples + The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. As the output from the example shows, no iterations whose index is greater than the property value start after the call to the method. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Parallel/For/break1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: - - Because iterations of the loop are still likely to be executing when the method is called, each iteration calls the property to check whether another iteration has called the method. If the property value is `true`, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: + + Because iterations of the loop are still likely to be executing when the method is called, each iteration calls the property to check whether another iteration has called the method. If the property value is `true`, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. + ]]> A instance is meant to be used only within the body of the loop to which an instance was provided. It is not safe to use a provided instance after the associated loop ends, nor is it safe to explicitly hand it off to other threads and have those threads access it at any time. A different instance will be provided to each thread involved in a loop. @@ -121,31 +121,31 @@ Communicates that the loop should cease execution of iterations beyond the current iteration at the system's earliest convenience. - indicates that no iterations after the current iteration should be run. It effectively cancels any additional iterations of the loop. However, it does not stop any iterations that have already begun execution. For example, if is called from the 100th iteration of a parallel loop iterating from 0 to 1,000, all iterations less than 100 should still be run, but the iterations from 101 through to 1000 that have not yet started are not executed. - - For long-running iterations that may already be executing, sets the property to the current iteration's index if the current index is less than the current value of . To stop iterations whose index is greater than the lowest break iteration from competing execution, you should do the following: - -1. Check whether the property is `true`. - -2. Exit from the iteration if its index is greater than the property value. - - The example provides an illustration. - - is typically employed in search-based algorithms where an ordering is present in the data source. - - - -## Examples - The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. As the output from the example shows, no iterations whose index is greater than the property value start after the call to the method. - + indicates that no iterations after the current iteration should be run. It effectively cancels any additional iterations of the loop. However, it does not stop any iterations that have already begun execution. For example, if is called from the 100th iteration of a parallel loop iterating from 0 to 1,000, all iterations less than 100 should still be run, but the iterations from 101 through to 1000 that have not yet started are not executed. + + For long-running iterations that may already be executing, sets the property to the current iteration's index if the current index is less than the current value of . To stop iterations whose index is greater than the lowest break iteration from competing execution, you should do the following: + +1. Check whether the property is `true`. + +2. Exit from the iteration if its index is greater than the property value. + + The example provides an illustration. + + is typically employed in search-based algorithms where an ordering is present in the data source. + + + +## Examples + The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. As the output from the example shows, no iterations whose index is greater than the property value start after the call to the method. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Parallel/For/break1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: - - Because iterations of the loop are still likely to be executing when the method is called, each iteration calls the property to check whether another iteration has called the method. If the property value is `true`, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: + + Because iterations of the loop are still likely to be executing when the method is called, each iteration calls the property to check whether another iteration has called the method. If the property value is `true`, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. + ]]> The method was previously called. and may not be used in combination by iterations of the same loop. @@ -233,19 +233,19 @@ if any iteration has stopped the loop by calling the method; otherwise, . - property to determine whether any iterations of the loop that began execution before the call to the method are still executing. You can then use the value of the property to determine whether they should return immediately or execute normally. - - - -## Examples - The following example executes up to 10,000 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. Because iterations of the loop are still likely to be executing when the method is called, the lambda expression calls the method to check whether another iteration has called the method. If it returns `true`, the iteration returns immediately. - + property to determine whether any iterations of the loop that began execution before the call to the method are still executing. You can then use the value of the property to determine whether they should return immediately or execute normally. + + + +## Examples + The following example executes up to 10,000 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. Because iterations of the loop are still likely to be executing when the method is called, the lambda expression calls the method to check whether another iteration has called the method. If it returns `true`, the iteration returns immediately. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Parallel/For/stop1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/stop1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/stop1.vb" id="Snippet1"::: + ]]> Data Parallelism (Task Parallel Library) @@ -288,29 +288,29 @@ Gets the lowest iteration of the loop from which was called. The lowest iteration from which was called. In the case of a loop, the value is based on an internally-generated index. - method. If they do, this value is the smallest index of an iteration that called . If no iteration of the loop called , this property returns `null`. Note that the property value is unaffected by calls to the method. - - In long-running iterations in which all iterations after the iteration that calls the method need not run, the property is used to terminate iterations that began execution before the call to the method. To stop iterations whose index is greater than the lowest break iteration from competing execution, you should do the following: - -1. Check whether the property is `true`. - -2. Exit from the iteration if its index is greater than the property value. - - The example provides an illustration. - - - -## Examples - The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. This prevents iterations whose index is greater than the property value from starting after the call to the method, but it does not affect any iterations that have already begun executing. To prevent these from completing, each iteration calls the method to check whether another iteration has called the method. If so, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. - + method. If they do, this value is the smallest index of an iteration that called . If no iteration of the loop called , this property returns `null`. Note that the property value is unaffected by calls to the method. + + In long-running iterations in which all iterations after the iteration that calls the method need not run, the property is used to terminate iterations that began execution before the call to the method. To stop iterations whose index is greater than the lowest break iteration from competing execution, you should do the following: + +1. Check whether the property is `true`. + +2. Exit from the iteration if its index is greater than the property value. + + The example provides an illustration. + + + +## Examples + The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. This prevents iterations whose index is greater than the property value from starting after the call to the method, but it does not affect any iterations that have already begun executing. To prevent these from completing, each iteration calls the method to check whether another iteration has called the method. If so, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Parallel/For/break1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: - - Note that, because the value is out of scope outside of the parallel loop, you must assign it to a variable that is visible outside of the loop if you want to preserve its value. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: + + Note that, because the value is out of scope outside of the parallel loop, you must assign it to a variable that is visible outside of the loop if you want to preserve its value. + ]]> @@ -356,29 +356,29 @@ if the current iteration should exit; otherwise, . - property is set to `true` under any of the following conditions: - -- An iteration of the loop calls or . - -- An iteration of the loop throws an exception. - -- The loop is canceled. - - When this property is `true`, the class will proactively attempt to prohibit additional iterations of the loop from starting execution. However, there may be cases where it is unable to prevent additional iterations from starting. - - It may also be the case that a long-running iteration has already begun execution. In such cases, iterations may explicitly check the property and cease execution if the property returns `true`. - - - -## Examples - The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. This prevents iterations whose index is greater than the property value from starting after the call to the method, but it does not affect any iterations that have already begun executing. To prevent these from completing, each iteration calls the method to check whether another iteration has called the method. If so, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. - + property is set to `true` under any of the following conditions: + +- An iteration of the loop calls or . + +- An iteration of the loop throws an exception. + +- The loop is canceled. + + When this property is `true`, the class will proactively attempt to prohibit additional iterations of the loop from starting execution. However, there may be cases where it is unable to prevent additional iterations from starting. + + It may also be the case that a long-running iteration has already begun execution. In such cases, iterations may explicitly check the property and cease execution if the property returns `true`. + + + +## Examples + The following example executes up to 100 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. This prevents iterations whose index is greater than the property value from starting after the call to the method, but it does not affect any iterations that have already begun executing. To prevent these from completing, each iteration calls the method to check whether another iteration has called the method. If so, the iteration checks the value of the property and, if it is greater than the current iteration's index value, returns immediately. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Parallel/For/break1.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/break1.vb" id="Snippet2"::: + ]]> @@ -424,25 +424,25 @@ Communicates that the loop should cease execution at the system's earliest convenience. - method indicates that any iterations of the loop that have not yet started need not be run. It effectively cancels any additional iterations of the loop. However, it does not stop any iterations that have already begun execution. - - Calling the method causes the property to return `true` for any iteration of the loop that is still executing. This is particularly useful for long-running iterations, which can check the property and exit early if its value is `true`. - - is typically employed in search-based algorithms, where once a result is found, no other iterations need be executed. - - - -## Examples - The following example executes up to 10,000 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. As the output from the example shows, no iterations execute after the call to the method. - + method indicates that any iterations of the loop that have not yet started need not be run. It effectively cancels any additional iterations of the loop. However, it does not stop any iterations that have already begun execution. + + Calling the method causes the property to return `true` for any iteration of the loop that is still executing. This is particularly useful for long-running iterations, which can check the property and exit early if its value is `true`. + + is typically employed in search-based algorithms, where once a result is found, no other iterations need be executed. + + + +## Examples + The following example executes up to 10,000 iterations of a loop in parallel. Each iteration pauses for a random interval from 1 to 1,000 milliseconds. A randomly generated value determines on which iteration of the loop the method is called. As the output from the example shows, no iterations execute after the call to the method. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Parallel/For/stop1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/stop1.vb" id="Snippet1"::: - - Because iterations of the loop are still likely to be executing when the method is called, each iteration calls the method to check whether another iteration has called the method. If it returns `true`, the iteration returns immediately. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.parallelloopstate/vb/stop1.vb" id="Snippet1"::: + + Because iterations of the loop are still likely to be executing when the method is called, each iteration calls the method to check whether another iteration has called the method. If it returns `true`, the iteration returns immediately. + ]]> The method was called previously. and may not be used in combination by iterations of the same loop. diff --git a/xml/System.Threading.Tasks/ParallelOptions.xml b/xml/System.Threading.Tasks/ParallelOptions.xml index 45c08d03440..45393a7f027 100644 --- a/xml/System.Threading.Tasks/ParallelOptions.xml +++ b/xml/System.Threading.Tasks/ParallelOptions.xml @@ -94,13 +94,13 @@ By default, methods on the class attempt Initializes a new instance of the class. - is initialized to -1, signifying that there is no upper bound set on how much parallelism should be employed. is initialized to a non-cancelable token, and is initialized to the default scheduler (TaskScheduler.Default). - - All of these defaults may be overwritten using the property set accessors on the instance. - + is initialized to -1, signifying that there is no upper bound set on how much parallelism should be employed. is initialized to a non-cancelable token, and is initialized to the default scheduler (TaskScheduler.Default). + + All of these defaults may be overwritten using the property set accessors on the instance. + ]]> @@ -142,11 +142,11 @@ By default, methods on the class attempt Gets or sets the associated with this instance. The token that is associated with this instance. - to a method enables the operation to be exited early. Code external to the operation may cancel the token, and if the operation observes the token being set, it may exit early by throwing an . - + to a method enables the operation to be exited early. Code external to the operation may cancel the token, and if the operation observes the token being set, it may exit early by throwing an . + ]]> @@ -188,21 +188,21 @@ By default, methods on the class attempt Gets or sets the maximum number of concurrent tasks enabled by this instance. An integer that represents the maximum degree of parallelism. - property affects the number of concurrent operations run by method calls that are passed this instance. A positive property value limits the number of concurrent operations to the set value. If it is -1, there is no limit on the number of concurrently running operations (with the exception of the method, where -1 means ). - - By default, and will utilize however many threads the underlying scheduler provides, so changing from the default only limits how many concurrent tasks will be used. - - Generally, you do not need to modify this setting. However, you may choose to set it explicitly in advanced usage scenarios such as these: - -- When you know that a particular algorithm you're using won't scale beyond a certain number of cores. You can set the property to avoid wasting cycles on additional cores. - -- When you're running multiple algorithms concurrently and want to manually define how much of the system each algorithm can utilize. You can set a value for each. - -- When the thread pool's heuristics is unable to determine the right number of threads to use and could end up injecting too many threads. For example, in long-running loop body iterations, the thread pool might not be able to tell the difference between reasonable progress or livelock or deadlock, and might not be able to reclaim threads that were added to improve performance. In this case, you can set the property to ensure that you don't use more than a reasonable number of threads. - + property affects the number of concurrent operations run by method calls that are passed this instance. A positive property value limits the number of concurrent operations to the set value. If it is -1, there is no limit on the number of concurrently running operations (with the exception of the method, where -1 means ). + + By default, and will utilize however many threads the underlying scheduler provides, so changing from the default only limits how many concurrent tasks will be used. + + Generally, you do not need to modify this setting. However, you may choose to set it explicitly in advanced usage scenarios such as these: + +- When you know that a particular algorithm you're using won't scale beyond a certain number of cores. You can set the property to avoid wasting cycles on additional cores. + +- When you're running multiple algorithms concurrently and want to manually define how much of the system each algorithm can utilize. You can set a value for each. + +- When the thread pool's heuristics is unable to determine the right number of threads to use and could end up injecting too many threads. For example, in long-running loop body iterations, the thread pool might not be able to tell the difference between reasonable progress or livelock or deadlock, and might not be able to reclaim threads that were added to improve performance. In this case, you can set the property to ensure that you don't use more than a reasonable number of threads. + ]]> The property is being set to zero or to a value that is less than -1. diff --git a/xml/System.Threading.Tasks/Task.xml b/xml/System.Threading.Tasks/Task.xml index 06a5c59e5da..cd654e48442 100644 --- a/xml/System.Threading.Tasks/Task.xml +++ b/xml/System.Threading.Tasks/Task.xml @@ -2558,13 +2558,13 @@ End Sub ## Remarks The method is typically used to delay the operation of all or part of a task for a specified time interval. Most commonly, the time delay is introduced: -- At the beginning of the task, as the following example shows. +- At the beginning of the task, as the following example shows. :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Task/Delay/delay5.cs" id="Snippet5"::: :::code language="fsharp" source="~/snippets/fsharp/System.Threading.Tasks/Task/Delay/delay5.fs" id="Snippet5"::: :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.task.delay/vb/delay5.vb" id="Snippet5"::: -- Sometime while the task is executing. In this case, the call to the method executes as a child task within a task, as the following example shows. Note that since the task that calls the method executes asynchronously, the parent task must wait for it to complete by using the `await` keyword. +- Sometime while the task is executing. In this case, the call to the method executes as a child task within a task, as the following example shows. Note that since the task that calls the method executes asynchronously, the parent task must wait for it to complete by using the `await` keyword. :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Task/Delay/delay5.cs" id="Snippet7"::: :::code language="fsharp" source="~/snippets/fsharp/System.Threading.Tasks/Task/Delay/delay5.fs" id="Snippet7"::: @@ -3646,11 +3646,11 @@ This method is intended for compiler use rather than use directly in code. ## Remarks A will complete in the state under any of the following conditions: -- Its was marked for cancellation before the task started executing, +- Its was marked for cancellation before the task started executing, -- The task acknowledged the cancellation request on its already signaled by throwing an that bears the same . +- The task acknowledged the cancellation request on its already signaled by throwing an that bears the same . -- The task acknowledged the cancellation request on its already signaled by calling the method on the . +- The task acknowledged the cancellation request on its already signaled by calling the method on the . > [!IMPORTANT] > Retrieving the value of the property does not block the calling thread until the task has completed. @@ -3896,11 +3896,11 @@ This method is intended for compiler use rather than use directly in code. ## Remarks The method allows you to create and execute a task in a single method call and is a simpler alternative to the method. It creates a task with the following default values: -- Its cancellation token is . +- Its cancellation token is . -- Its property value is . +- Its property value is . -- It uses the default task scheduler. +- It uses the default task scheduler. For information on handling exceptions thrown by task operations, see [Exception Handling](/dotnet/standard/parallel-programming/exception-handling-task-parallel-library). @@ -4055,9 +4055,9 @@ This method is intended for compiler use rather than use directly in code. The method is a simpler alternative to the method. It creates a task with the following default values: -- Its property value is . +- Its property value is . -- It uses the default task scheduler. +- It uses the default task scheduler. For information on handling exceptions thrown by task operations, see [Exception Handling](/dotnet/standard/parallel-programming/exception-handling-task-parallel-library). @@ -4288,11 +4288,11 @@ This method is intended for compiler use rather than use directly in code. ## Remarks The method is a simpler alternative to the method. It creates a task with the following default values: -- Its cancellation token is . +- Its cancellation token is . -- Its property value is . +- Its property value is . -- It uses the default task scheduler. +- It uses the default task scheduler. For information on handling exceptions thrown by task operations, see [Exception Handling](/dotnet/standard/parallel-programming/exception-handling-task-parallel-library). @@ -4461,9 +4461,9 @@ This method is intended for compiler use rather than use directly in code. The method is a simpler alternative to the method. It creates a task with the following default values: -- Its property value is . +- Its property value is . -- It uses the default task scheduler. +- It uses the default task scheduler. For information on handling exceptions thrown by task operations, see [Exception Handling](/dotnet/standard/parallel-programming/exception-handling-task-parallel-library). @@ -5070,11 +5070,11 @@ This member is an explicit interface member implementation. It can be used only ## Remarks is a synchronization method that causes the calling thread to wait for the current task instance to complete until one of the following occurs: -- The task completes successfully. +- The task completes successfully. -- The task itself is canceled or throws an exception. In this case, you handle an exception. The property contains details about the exception or exceptions. +- The task itself is canceled or throws an exception. In this case, you handle an exception. The property contains details about the exception or exceptions. -- The interval defined by `millisecondsTimeout` elapses. In this case, the current thread resumes execution and the method returns `false`. +- The interval defined by `millisecondsTimeout` elapses. In this case, the current thread resumes execution and the method returns `false`. @@ -5147,9 +5147,9 @@ This member is an explicit interface member implementation. It can be used only ## Remarks The method creates a cancelable wait; that is, it causes the current thread to wait until one of the following occurs: -- The task completes. +- The task completes. -- The cancellation token is canceled. In this case, the call to the method throws an . +- The cancellation token is canceled. In this case, the call to the method throws an . > [!NOTE] > Canceling the `cancellationToken` cancellation token has no effect on the running task unless it has also been passed the cancellation token and is prepared to handle cancellation. Passing the `cancellationToken` object to this method simply allows the wait to be canceled. @@ -5224,11 +5224,11 @@ This member is an explicit interface member implementation. It can be used only ## Remarks is a synchronization method that causes the calling thread to wait for the current task instance to complete until one of the following occurs: -- The task completes successfully. +- The task completes successfully. -- The task itself is canceled or throws an exception. In this case, you handle an exception. The property contains details about the exception or exceptions. +- The task itself is canceled or throws an exception. In this case, you handle an exception. The property contains details about the exception or exceptions. -- The interval defined by `timeout` elapses. In this case, the current thread resumes execution and the method returns `false`. +- The interval defined by `timeout` elapses. In this case, the current thread resumes execution and the method returns `false`. @@ -5309,13 +5309,13 @@ This member is an explicit interface member implementation. It can be used only ## Remarks is a synchronization method that causes the calling thread to wait for the current task instance to complete until one of the following occurs: -- The task completes successfully. +- The task completes successfully. -- The task itself is canceled or throws an exception. In this case, you handle an exception. The property contains details about the exception or exceptions. +- The task itself is canceled or throws an exception. In this case, you handle an exception. The property contains details about the exception or exceptions. -- The `cancellationToken` cancellation token is canceled. In this case, the call to the method throws an . +- The `cancellationToken` cancellation token is canceled. In this case, the call to the method throws an . -- The interval defined by `millisecondsTimeout` elapses. In this case, the current thread resumes execution and the method returns `false`. +- The interval defined by `millisecondsTimeout` elapses. In this case, the current thread resumes execution and the method returns `false`. > [!NOTE] > Canceling the `cancellationToken` cancellation token has no effect on the running task unless it has also been passed the cancellation token and is prepared to handle cancellation. Passing the `cancellationToken` object to this method simply allows the wait to be canceled based on some condition. diff --git a/xml/System.Threading.Tasks/TaskFactory`1.xml b/xml/System.Threading.Tasks/TaskFactory`1.xml index 84350dd5f76..5644e270b49 100644 --- a/xml/System.Threading.Tasks/TaskFactory`1.xml +++ b/xml/System.Threading.Tasks/TaskFactory`1.xml @@ -74,40 +74,40 @@ The return value of the objects that the methods of this class create. Provides support for creating and scheduling objects. - class, which creates and objects. - -- The class, which creates objects. - - The class allows you to do the following: - -- Create a task and start it immediately by calling the method. You can call the overloads of this method to create and execute a task that requires non-default arguments. - + class, which creates and objects. + +- The class, which creates objects. + + The class allows you to do the following: + +- Create a task and start it immediately by calling the method. You can call the overloads of this method to create and execute a task that requires non-default arguments. + > [!WARNING] - > Starting with .NET Framework 4.5, the method provides the easiest way to create a task with default configuration values and start it immediately. - -- Create a task that starts when any one of the tasks in an array has completed by calling the or method. - -- Create a task that starts when all the tasks in an array have completed by calling the or method. - - The static property returns a default object. You can also call one of the class constructors to configure the objects that the class creates. The following example configures a new object to create tasks that have a specified cancellation token, task creation options, continuation options, and a customized task scheduler. - + > Starting with .NET Framework 4.5, the method provides the easiest way to create a task with default configuration values and start it immediately. + +- Create a task that starts when any one of the tasks in an array has completed by calling the or method. + +- Create a task that starts when all the tasks in an array have completed by calling the or method. + + The static property returns a default object. You can also call one of the class constructors to configure the objects that the class creates. The following example configures a new object to create tasks that have a specified cancellation token, task creation options, continuation options, and a customized task scheduler. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/TaskFactory`1/Overview/factoriestresult.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Misc/tpl_factories/vb/factoriestresult.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Misc/tpl_factories/vb/factoriestresult.vb" id="Snippet2"::: + In most cases, you do not have to instantiate a new instance. Instead, you can use the static property, which returns a factory object that uses default values. You can then call its methods to start new tasks or define task continuations. For an illustration, see the example. - -## Examples - The following example uses the static property to make two calls to the method. The first task returns a string array that is populated with the names of files in the user's MyDocuments directory, while the second returns a string array that is populated with the names of subdirectories of the user's MyDocuments directory. It then calls the method, which displays information about the number of files and directories in the arrays returned by the two tasks after they have completed execution. - + +## Examples + The following example uses the static property to make two calls to the method. The first task returns a string array that is populated with the names of files in the user's MyDocuments directory, while the second returns a string array that is populated with the names of subdirectories of the user's MyDocuments directory. It then calls the method, which displays information about the number of files and directories in the arrays returned by the two tasks after they have completed execution. + :::code language="csharp" source="~/snippets/csharp/System.Threading.Tasks/Task/Factory/factory2.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.task.factory/vb/factory2.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.tasks.task.factory/vb/factory2.vb" id="Snippet2"::: + ]]> All public and protected members of are thread-safe and may be used concurrently from multiple threads. @@ -163,11 +163,11 @@ Initializes a instance with the default configuration. - instance with a default configuration. The property is initialized to , the property is initialized to , and the property is initialized to the current scheduler (see ). - + instance with a default configuration. The property is initialized to , the property is initialized to , and the property is initialized to the current scheduler (see ). + ]]> Task Parallel Library (TPL) @@ -215,11 +215,11 @@ The default cancellation token that will be assigned to tasks created by this unless another cancellation token is explicitly specified when calling the factory methods. Initializes a instance with the default configuration. - instance with a default configuration. The property is initialized to , the property is initialized to , and the property is initialized to the current scheduler (see ). - + instance with a default configuration. The property is initialized to , the property is initialized to , and the property is initialized to the current scheduler (see ). + ]]> Task Parallel Library (TPL) @@ -268,11 +268,11 @@ The scheduler to use to schedule any tasks created with this . A null value indicates that the current should be used. Initializes a instance with the specified configuration. - property is initialized to , the property is initialized to , and the property is initialized to `scheduler`, unless it's `null`, in which case the property is initialized to the current scheduler (see ). - + property is initialized to , the property is initialized to , and the property is initialized to `scheduler`, unless it's `null`, in which case the property is initialized to the current scheduler (see ). + ]]> @@ -325,11 +325,11 @@ The default options to use when creating continuation tasks with this . Initializes a instance with the specified configuration. - property is initialized to `creationOptions`, the property is initialized to `continuationOptions`, and the property is initialized to the current scheduler (see ). - + property is initialized to `creationOptions`, the property is initialized to `continuationOptions`, and the property is initialized to the current scheduler (see ). + ]]> @@ -388,11 +388,11 @@ The default scheduler to use to schedule any tasks created with this . A null value indicates that should be used. Initializes a instance with the specified configuration. - property is initialized to `creationOptions`, the property is initialized to `continuationOptions`, and the property is initialized to `scheduler`, unless it's `null`, in which case the property is initialized to the current scheduler (see ). - + property is initialized to `creationOptions`, the property is initialized to `continuationOptions`, and the property is initialized to `scheduler`, unless it's `null`, in which case the property is initialized to the current scheduler (see ). + ]]> @@ -444,11 +444,11 @@ Gets the default cancellation token for this task factory. The default cancellation token for this task factory. - Task Parallel Library (TPL) @@ -497,11 +497,11 @@ Gets the enumeration value for this task factory. One of the enumeration values that specifies the default continuation options for this task factory. - Task Parallel Library (TPL) @@ -569,19 +569,19 @@ Creates a continuation task that will be started upon the completion of a set of provided tasks. The new continuation task. - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - array is . - - -or- - + array is . + + -or- + The is . The array contains a null value or is empty. Task Parallel Library (TPL) @@ -639,22 +639,22 @@ Creates a continuation task that will be started upon the completion of a set of provided tasks. The new continuation task. - , , or states. - + , , or states. + ]]> - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. - The array is . - - -or- - + The array is . + + -or- + is . The array contains a null value or is empty. Task Parallel Library (TPL) @@ -712,18 +712,18 @@ Creates a continuation task that will be started upon the completion of a set of provided Tasks. The new continuation task. - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . The argument specifies an invalid value. The array contains a null value or is empty. @@ -786,29 +786,29 @@ Creates a continuation task that will be started upon the completion of a set of provided Tasks. The new continuation task. - , , or states. - + , , or states. + ]]> - The array is . - - -or- - - The argument is . - - -or- - + The array is . + + -or- + + The argument is . + + -or- + The argument is . The array contains a null value or is empty. specifies an invalid value. - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -874,18 +874,18 @@ Creates a continuation task that will be started upon the completion of a set of provided tasks. The new continuation task. - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . The array contains a null value or is empty. Task Parallel Library (TPL) @@ -954,22 +954,22 @@ Creates a continuation task that will be started upon the completion of a set of provided tasks. The new continuation task. - , , or states. - + , , or states. + ]]> - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . The array contains a null value or is empty. Task Parallel Library (TPL) @@ -1038,18 +1038,18 @@ Creates a continuation task that will be started upon the completion of a set of provided tasks. The new continuation task. - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . The argument specifies an invalid value. The array contains a null value or is empty. @@ -1123,28 +1123,28 @@ Creates a continuation task that will be started upon the completion of a set of provided tasks. The new continuation task. - , , or states. - + , , or states. + ]]> - The array is . - - -or- - - The argument is . - - -or- - + The array is . + + -or- + + The argument is . + + -or- + The argument is . The array contains a null value or is empty. The argument specifies an invalid value. - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -1212,18 +1212,18 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation task. - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . The array contains a null value or is empty. Task Parallel Library (TPL) @@ -1281,27 +1281,27 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation task. - , , or states. - + , , or states. + ]]> - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. - The array is null. - - -or- - + The array is null. + + -or- + The argument is null. - The array contains a null value. - - -or- - + The array contains a null value. + + -or- + The array is empty. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -1358,24 +1358,24 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation task. - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . The argument specifies an invalid enumeration value. - The array contains a null value. - - -or- - + The array contains a null value. + + -or- + The array is empty. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -1436,32 +1436,32 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation task. - , , or states. - + , , or states. + ]]> - The array is . - - -or- - - The argument is . - - -or- - + The array is . + + -or- + + The argument is . + + -or- + The argument is . - The array contains a null value. - - -or- - + The array contains a null value. + + -or- + The array is empty. The argument specifies an invalid value. - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. Task Parallel Library (TPL) @@ -1528,23 +1528,23 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation . - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . - The array contains a null value. - - -or- - + The array contains a null value. + + -or- + The array is empty. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -1612,27 +1612,27 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation task. - , , or states. - + , , or states. + ]]> - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . - The array contains a null value. - - -or- - + The array contains a null value. + + -or- + The array is empty. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -1700,24 +1700,24 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation . - , , or states. - + , , or states. + ]]> One of the elements in the array has been disposed. - The array is . - - -or- - + The array is . + + -or- + The argument is . The argument specifies an invalid enumeration value. - The array contains a null value. - - -or- - + The array contains a null value. + + -or- + The array is empty. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -1789,32 +1789,32 @@ Creates a continuation task that will be started upon the completion of any task in the provided set. The new continuation . - , , or states. - + , , or states. + ]]> - The array is . - - -or- - - The argument is . - - -or- - + The array is . + + -or- + + The argument is . + + -or- + The argument is null. - The array contains a null value. - - -or- - + The array contains a null value. + + -or- + The array is empty. The argument specifies an invalid TaskContinuationOptions value. - One of the elements in the array has been disposed. - - -or- - + One of the elements in the array has been disposed. + + -or- + The that created has already been disposed. Task Parallel Library (TPL) Chaining Tasks by Using Continuation Tasks @@ -1863,11 +1863,11 @@ Gets the enumeration value for this task factory. One of the enumeration values that specifies the default creation options for this task factory. - Task Parallel Library (TPL) @@ -1934,10 +1934,10 @@ Creates a task that executes an end method function when a specified completes. A that represents the asynchronous operation. To be added. - The argument is . - - -or- - + The argument is . + + -or- + The argument is . Task Parallel Library (TPL) Using TPL with Other Asynchronous Patterns @@ -2008,17 +2008,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created task that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . Task Parallel Library (TPL) Using TPL with Other Asynchronous Patterns @@ -2074,10 +2074,10 @@ Creates a task that executes an end method function when a specified completes. A task that represents the asynchronous operation. To be added. - The argument is . - - -or- - + The argument is . + + -or- + The argument is . The argument specifies an invalid value. Task Parallel Library (TPL) @@ -2151,17 +2151,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . The argument specifies an invalid value. Task Parallel Library (TPL) @@ -2220,14 +2220,14 @@ Creates a task that executes an end method function when a specified completes. The created task that represents the asynchronous operation. To be added. - The argument is . - - -or- - - The argument is . - - -or- - + The argument is . + + -or- + + The argument is . + + -or- + The argument is . The parameter specifies an invalid value. Task Parallel Library (TPL) @@ -2312,17 +2312,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created task that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . Task Parallel Library (TPL) Using TPL with Other Asynchronous Patterns @@ -2408,17 +2408,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created task that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . The parameter specifies an invalid value. Task Parallel Library (TPL) @@ -2514,17 +2514,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created task that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . Task Parallel Library (TPL) Using TPL with Other Asynchronous Patterns @@ -2621,17 +2621,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created task that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . The parameter specifies an invalid value. Task Parallel Library (TPL) @@ -2738,17 +2738,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created task that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . Task Parallel Library (TPL) Using TPL with Other Asynchronous Patterns @@ -2856,17 +2856,17 @@ Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern. The created task that represents the asynchronous operation. - - The argument is . - - -or- - + The argument is . + + -or- + The argument is . The parameter specifies an invalid value. Task Parallel Library (TPL) @@ -2922,13 +2922,13 @@ Gets the task scheduler for this task factory. The task scheduler for this task factory. - will be used. - + will be used. + ]]> Task Parallel Library (TPL) @@ -2993,13 +2993,13 @@ Creates and starts a task. The started task. - constructors, and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors, and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The argument is . @@ -3070,13 +3070,13 @@ Creates and starts a task. The started task. - constructors and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The argument is . @@ -3132,13 +3132,13 @@ Creates and starts a task. The started task. - constructors and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The cancellation token source that created has already been disposed. @@ -3195,13 +3195,13 @@ Creates and starts a task. The started . - constructors and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The argument is . @@ -3275,13 +3275,13 @@ Creates and starts a task. The started task. - constructors and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The cancellation token source that created has already been disposed. @@ -3355,13 +3355,13 @@ Creates and starts a task. The started task. - constructors and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The argument is . @@ -3422,20 +3422,20 @@ Creates and starts a task. The started task. - constructors and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The cancellation token source that created has already been disposed. - The argument is . - - -or- - + The argument is . + + -or- + The argument is . The parameter specifies an invalid value. Task Parallel Library (TPL) @@ -3511,20 +3511,20 @@ Creates and starts a task. The started task. - constructors and then calling the method to schedule it for execution. - - However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. - + constructors and then calling the method to schedule it for execution. + + However, unless creation and scheduling must be separated, `StartNew` is the recommended approach for both simplicity and performance. + ]]> The cancellation token source that created has already been disposed. - The argument is . - - -or- - + The argument is . + + -or- + The argument is . The parameter specifies an invalid value. Task Parallel Library (TPL) diff --git a/xml/System.Threading/CancellationTokenSource.xml b/xml/System.Threading/CancellationTokenSource.xml index 1148c15c046..b62fbed9390 100644 --- a/xml/System.Threading/CancellationTokenSource.xml +++ b/xml/System.Threading/CancellationTokenSource.xml @@ -72,42 +72,42 @@ Signals to a that it should be canceled. - object, which provides a cancellation token through its property and sends a cancellation message by calling its or method. - -- A object, which indicates whether cancellation is requested. - - The general pattern for implementing the cooperative cancellation model is: - -- Instantiate a object, which manages and sends cancellation notification to the individual cancellation tokens. - -- Pass the token returned by the property to each task or thread that listens for cancellation. - -- Call the method from operations that receive the cancellation token. Provide a mechanism for each task or thread to respond to a cancellation request. Whether you choose to cancel an operation, and exactly how you do it, depends on your application logic. - -- Call the method to provide notification of cancellation. This sets the property on every copy of the cancellation token to `true`. - -- Call the method when you are finished with the object. - - For more information, see [Cancellation in Managed Threads](/dotnet/standard/threading/cancellation-in-managed-threads). - + object, which provides a cancellation token through its property and sends a cancellation message by calling its or method. + +- A object, which indicates whether cancellation is requested. + + The general pattern for implementing the cooperative cancellation model is: + +- Instantiate a object, which manages and sends cancellation notification to the individual cancellation tokens. + +- Pass the token returned by the property to each task or thread that listens for cancellation. + +- Call the method from operations that receive the cancellation token. Provide a mechanism for each task or thread to respond to a cancellation request. Whether you choose to cancel an operation, and exactly how you do it, depends on your application logic. + +- Call the method to provide notification of cancellation. This sets the property on every copy of the cancellation token to `true`. + +- Call the method when you are finished with the object. + + For more information, see [Cancellation in Managed Threads](/dotnet/standard/threading/cancellation-in-managed-threads). + > [!IMPORTANT] -> This type implements the interface. When you have finished using an instance of the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`finally` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. - - - -## Examples - The following example uses a random number generator to emulate a data collection application that reads 10 integral values from eleven different instruments. A value of zero indicates that the measurement has failed for one instrument, in which case the operation should be cancelled and no overall mean should be computed. - - To handle the possible cancellation of the operation, the example instantiates a object that generates a cancellation token which is passed to a object. The object in turn passes the cancellation token to each of the tasks responsible for collecting readings for a particular instrument. The method is called to ensure that the mean is computed only after all readings have been gathered successfully. If a task has not completed because it has been cancelled, the call to the method throws an exception. - +> This type implements the interface. When you have finished using an instance of the type, you should dispose of it either directly or indirectly. To dispose of the type directly, call its method in a `try`/`finally` block. To dispose of it indirectly, use a language construct such as `using` (in C#) or `Using` (in Visual Basic). For more information, see the "Using an Object that Implements IDisposable" section in the interface topic. + + + +## Examples + The following example uses a random number generator to emulate a data collection application that reads 10 integral values from eleven different instruments. A value of zero indicates that the measurement has failed for one instrument, in which case the operation should be cancelled and no overall mean should be computed. + + To handle the possible cancellation of the operation, the example instantiates a object that generates a cancellation token which is passed to a object. The object in turn passes the cancellation token to each of the tasks responsible for collecting readings for a particular instrument. The method is called to ensure that the mean is computed only after all readings have been gathered successfully. If a task has not completed because it has been cancelled, the call to the method throws an exception. + :::code language="csharp" source="~/snippets/csharp/System.Threading/CancellationToken/Overview/cancel1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.cancellationtokensource.class/vb/cancel1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.cancellationtokensource.class/vb/cancel1.vb" id="Snippet1"::: + ]]> All public and protected members of are thread-safe and may be used concurrently from multiple threads, with the exception of , which must only be used when all other operations on the object have completed. @@ -216,13 +216,13 @@ The time interval in milliseconds to wait before canceling this . Initializes a new instance of the class that will be canceled after the specified delay in milliseconds. - is canceled (if it has not been canceled already). - - Subsequent calls to will reset the `millisecondsDelay` for the constructed , if it has not been canceled already. - + is canceled (if it has not been canceled already). + + Subsequent calls to will reset the `millisecondsDelay` for the constructed , if it has not been canceled already. + ]]> @@ -271,13 +271,13 @@ The time interval to wait before canceling this . Initializes a new instance of the class that will be canceled after the specified time span. - is canceled, if it has not been canceled already. - - Subsequent calls to will reset the delay for the constructed , if it has not been canceled already. - + is canceled, if it has not been canceled already. + + Subsequent calls to will reset the delay for the constructed , if it has not been canceled already. + ]]> @@ -378,27 +378,27 @@ Communicates a request for cancellation. - will be notified of the cancellation and will transition to a state where returns true. - + will be notified of the cancellation and will transition to a state where returns true. + Any callbacks or cancelable operations registered with the will be executed. - + We recommend that cancelable operations and callbacks registered with not throw exceptions. - + This overload of Cancel will aggregate any exceptions thrown into an , such that one callback throwing an exception will not prevent other registered callbacks from being executed. Calling this method has the same effect as calling [`Cancel(false)`](xref:System.Threading.CancellationTokenSource.Cancel(System.Boolean)). -## Examples - The following example uses a random number generator to emulate a data collection application that reads 10 integral values from eleven different instruments. A value of zero indicates that the measurement has failed for one instrument, in which case the operation should be cancelled and no overall mean should be computed. - - To handle the possible cancellation of the operation, the example instantiates a object that generates a cancellation token which is passed to a object. The object in turn passes the cancellation token to each of the tasks responsible for collecting readings for a particular instrument. The method is called to ensure that the mean is computed only after all readings have been gathered successfully. If a task has not because it has been cancelled, the call to the method throws an exception. - +## Examples + The following example uses a random number generator to emulate a data collection application that reads 10 integral values from eleven different instruments. A value of zero indicates that the measurement has failed for one instrument, in which case the operation should be cancelled and no overall mean should be computed. + + To handle the possible cancellation of the operation, the example instantiates a object that generates a cancellation token which is passed to a object. The object in turn passes the cancellation token to each of the tasks responsible for collecting readings for a particular instrument. The method is called to ensure that the mean is computed only after all readings have been gathered successfully. If a task has not because it has been cancelled, the call to the method throws an exception. + :::code language="csharp" source="~/snippets/csharp/System.Threading/CancellationToken/Overview/cancel1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.cancellationtokensource.class/vb/cancel1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.cancellationtokensource.class/vb/cancel1.vb" id="Snippet1"::: + ]]> This has been disposed. @@ -453,19 +453,19 @@ if exceptions should immediately propagate; otherwise, . Communicates a request for cancellation, and specifies whether remaining callbacks and cancelable operations should be processed if an exception occurs. - will be notified of the cancellation and will transition to a state where returns `true`. - - Any callbacks or cancelable operations registered with the will be executed. Callbacks will be executed synchronously in LIFO order. - - We recommend that cancelable operations and callbacks registered with not throw exceptions. - - If `throwOnFirstException` is `true`, an exception will immediately propagate out of the call to , preventing the remaining callbacks and cancelable operations from being processed. - - If `throwOnFirstException` is `false`, this overload will aggregate any exceptions thrown into an , such that one callback throwing an exception will not prevent other registered callbacks from being executed. - + will be notified of the cancellation and will transition to a state where returns `true`. + + Any callbacks or cancelable operations registered with the will be executed. Callbacks will be executed synchronously in LIFO order. + + We recommend that cancelable operations and callbacks registered with not throw exceptions. + + If `throwOnFirstException` is `true`, an exception will immediately propagate out of the call to , preventing the remaining callbacks and cancelable operations from being processed. + + If `throwOnFirstException` is `false`, this overload will aggregate any exceptions thrown into an , such that one callback throwing an exception will not prevent other registered callbacks from being executed. + ]]> This has been disposed. @@ -530,13 +530,13 @@ The time span to wait before canceling this . Schedules a cancel operation on this after the specified number of milliseconds. - is canceled, if it has not been canceled already. - - Subsequent calls to CancelAfter will reset the `millisecondsDelay` for this , if it has not been canceled already. - + is canceled, if it has not been canceled already. + + Subsequent calls to CancelAfter will reset the `millisecondsDelay` for this , if it has not been canceled already. + ]]> The exception thrown when this has been disposed. @@ -592,7 +592,7 @@ ## Remarks The countdown for the delay starts during this call. When the delay expires, this is canceled, if it has not been canceled already. - Subsequent calls to `CancelAfter` will reset the delay for this , if it has not been canceled already. + Subsequent calls to `CancelAfter` will reset the delay for this , if it has not been canceled already. ]]> The exception thrown when this has been disposed. @@ -919,18 +919,18 @@ Releases all resources used by the current instance of the class. - . The `Dispose` method leaves the in an unusable state. After calling `Dispose`, you must release all references to the so the garbage collector can reclaim the memory that the was occupying. + . The `Dispose` method leaves the in an unusable state. After calling `Dispose`, you must release all references to the so the garbage collector can reclaim the memory that the was occupying. - Note that calling `Dispose` does not communicate a request for cancellation to consumers of the associated . You can communicate a request for cancellation by calling methods such as or . + Note that calling `Dispose` does not communicate a request for cancellation to consumers of the associated . You can communicate a request for cancellation by calling methods such as or . + + For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). - For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). - > [!NOTE] -> Always call `Dispose` before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. - +> Always call `Dispose` before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. + ]]> @@ -1032,13 +1032,13 @@ if cancellation has been requested for this ; otherwise, . - 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. - + 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. + ]]> Cancellation diff --git a/xml/System.Threading/LockRecursionException.xml b/xml/System.Threading/LockRecursionException.xml index a341c03e358..8f04f897c9c 100644 --- a/xml/System.Threading/LockRecursionException.xml +++ b/xml/System.Threading/LockRecursionException.xml @@ -71,11 +71,11 @@ ## Remarks is thrown for several reasons, including the following: -- If a thread tries to enter an instance of recursively, but the instance does not support recursion. +- If a thread tries to enter an instance of recursively, but the instance does not support recursion. -- If a thread tries to enter a instance in write mode or upgradeable mode when the thread initially entered the lock in read mode. This represents a potential deadlock and therefore is not allowed. +- If a thread tries to enter a instance in write mode or upgradeable mode when the thread initially entered the lock in read mode. This represents a potential deadlock and therefore is not allowed. -- If allowing one more level of recursion would exceed the maximum value for the internal storage counter used to track recursions. This limit is so large that applications should never encounter it. +- If allowing one more level of recursion would exceed the maximum value for the internal storage counter used to track recursions. This limit is so large that applications should never encounter it. diff --git a/xml/System.Threading/Mutex.xml b/xml/System.Threading/Mutex.xml index ab4659ef967..cfa5a042c66 100644 --- a/xml/System.Threading/Mutex.xml +++ b/xml/System.Threading/Mutex.xml @@ -67,9 +67,9 @@ You can use the method to request ownership of a mutex. The calling thread blocks until one of the following occurs: -- The mutex is signaled to indicate that it is not owned. When this happens, the method returns `true`, and the calling thread assumes ownership of the mutex and accesses the resource protected by the mutex. When it has finished accessing the resource, the thread must call the method to release ownership of the mutex. The first example in the Examples section illustrates this pattern. +- The mutex is signaled to indicate that it is not owned. When this happens, the method returns `true`, and the calling thread assumes ownership of the mutex and accesses the resource protected by the mutex. When it has finished accessing the resource, the thread must call the method to release ownership of the mutex. The first example in the Examples section illustrates this pattern. -- The time-out interval specified in the call to a method that has a `millisecondsTimeout` or `timeout` parameter has elapsed. When this happens, the method returns `false`, and the calling thread makes no further attempt to acquire ownership of the mutex. In this case, you should structure your code so that access to the resource that is protected by the mutex is denied to the calling thread. Because the thread never acquired ownership of the mutex, it must not call the method. The second example in the Examples section illustrates this pattern. +- The time-out interval specified in the call to a method that has a `millisecondsTimeout` or `timeout` parameter has elapsed. When this happens, the method returns `false`, and the calling thread makes no further attempt to acquire ownership of the mutex. In this case, you should structure your code so that access to the resource that is protected by the mutex is denied to the calling thread. Because the thread never acquired ownership of the mutex, it must not call the method. The second example in the Examples section illustrates this pattern. The class enforces thread identity, so a mutex can be released only by the thread that acquired it. By contrast, the class does not enforce thread identity. A mutex can also be passed across application domain boundaries. diff --git a/xml/System.Threading/SpinLock.xml b/xml/System.Threading/SpinLock.xml index 7f65c8fc599..64b3deec9a3 100644 --- a/xml/System.Threading/SpinLock.xml +++ b/xml/System.Threading/SpinLock.xml @@ -59,37 +59,37 @@ Provides a mutual exclusion lock primitive where a thread trying to acquire the lock waits in a loop repeatedly checking until the lock becomes available. - , in size or due to garbage collection pressure, is overly expensive. A spin lock can be useful to avoid blocking; however, if you expect a significant amount of blocking, you should probably not use spin locks due to excessive spinning. Spinning can be beneficial when locks are fine-grained and large in number (for example, a lock per node in a linked list) and also when lock hold-times are always extremely short. In general, while holding a spin lock, one should avoid any of these actions: - -- blocking, - -- calling anything that itself may block, - -- holding more than one spin lock at once, - -- making dynamically dispatched calls (interface and virtuals), - -- making statically dispatched calls into any code one doesn't own, or - -- allocating memory. - - should only be used after you have been determined that doing so will improve an application's performance. It is also important to note that is a value type, for performance reasons. For this reason, you must be very careful not to accidentally copy a instance, as the two instances (the original and the copy) would then be completely independent of one another, which would likely lead to erroneous behavior of the application. If a instance must be passed around, it should be passed by reference rather than by value. - - Do not store instances in readonly fields. - - - -## Examples - The following example shows how to use a : - + , in size or due to garbage collection pressure, is overly expensive. A spin lock can be useful to avoid blocking; however, if you expect a significant amount of blocking, you should probably not use spin locks due to excessive spinning. Spinning can be beneficial when locks are fine-grained and large in number (for example, a lock per node in a linked list) and also when lock hold-times are always extremely short. In general, while holding a spin lock, one should avoid any of these actions: + +- blocking, + +- calling anything that itself may block, + +- holding more than one spin lock at once, + +- making dynamically dispatched calls (interface and virtuals), + +- making statically dispatched calls into any code one doesn't own, or + +- allocating memory. + + should only be used after you have been determined that doing so will improve an application's performance. It is also important to note that is a value type, for performance reasons. For this reason, you must be very careful not to accidentally copy a instance, as the two instances (the original and the copy) would then be completely independent of one another, which would likely lead to erroneous behavior of the application. If a instance must be passed around, it should be passed by reference rather than by value. + + Do not store instances in readonly fields. + + + +## Examples + The following example shows how to use a : + :::code language="csharp" source="~/snippets/csharp/System.Threading/SpinLock/Overview/spinlock.cs" id="Snippet01"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.spinlock/vb/spinlock.vb" id="Snippet01"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_CLR_System/system.threading.spinlock/vb/spinlock.vb" id="Snippet01"::: + ]]> All members of are thread-safe and may be used from multiple threads concurrently. @@ -137,56 +137,56 @@ Whether to capture and use thread IDs for debugging purposes. Initializes a new instance of the structure with the option to track thread IDs to improve debugging. - tracks thread ownership. - - - -## Examples - The following example demonstrates how a SpinLock may be used. - -```csharp -// C# -public class MyType -{ - private SpinLock _spinLock = new SpinLock(); - - public void DoWork() - { - bool lockTaken = false; - try - { - _spinLock.Enter(ref lockTaken); - // do work here protected by the lock - } - finally - { - if (lockTaken) _spinLock.Exit(); - } - } -} -``` - -```vb -' Visual Basic - -Class MyType - Private _spinLock As New SpinLock() - - Public Sub DoWork() - Dim lockTaken As Boolean = False - Try - _spinLock.Enter(lockTaken) - ' do work here protected by the lock - Finally - If lockTaken Then _spinLock.Exit() - End Try - End Sub -End Class -``` - + tracks thread ownership. + + + +## Examples + The following example demonstrates how a SpinLock may be used. + +```csharp +// C# +public class MyType +{ + private SpinLock _spinLock = new SpinLock(); + + public void DoWork() + { + bool lockTaken = false; + try + { + _spinLock.Enter(ref lockTaken); + // do work here protected by the lock + } + finally + { + if (lockTaken) _spinLock.Exit(); + } + } +} +``` + +```vb +' Visual Basic + +Class MyType + Private _spinLock As New SpinLock() + + Public Sub DoWork() + Dim lockTaken As Boolean = False + Try + _spinLock.Enter(lockTaken) + ' do work here protected by the lock + Finally + If lockTaken Then _spinLock.Exit() + End Try + End Sub +End Class +``` + ]]> SpinLock @@ -236,13 +236,13 @@ End Class True if the lock is acquired; otherwise, false. must be initialized to false prior to calling this method. Acquires the lock in a reliable manner, such that even if an exception occurs within the method call, can be examined reliably to determine whether the lock was acquired. - is a non-reentrant lock, meaning that if a thread holds the lock, it is not allowed to enter the lock again. If thread ownership tracking is enabled (whether it's enabled is available through ), an exception will be thrown when a thread tries to re-enter a lock it already holds. However, if thread ownership tracking is disabled, attempting to enter a lock already held will result in deadlock. - - If you call without having first called the internal state of the can become corrupted. - + is a non-reentrant lock, meaning that if a thread holds the lock, it is not allowed to enter the lock again. If thread ownership tracking is enabled (whether it's enabled is available through ), an exception will be thrown when a thread tries to re-enter a lock it already holds. However, if thread ownership tracking is disabled, attempting to enter a lock already held will result in deadlock. + + If you call without having first called the internal state of the can become corrupted. + ]]> The argument must be initialized to false prior to calling Enter. @@ -308,13 +308,13 @@ End Class Releases the lock. - provides the same behavior as if calling using true as the argument. - - If you call without having first called the internal state of the can become corrupted. - + provides the same behavior as if calling using true as the argument. + + If you call without having first called the internal state of the can become corrupted. + ]]> Thread ownership tracking is enabled, and the current thread is not the owner of this lock. @@ -371,13 +371,13 @@ End Class A Boolean value that indicates whether a memory fence should be issued in order to immediately publish the exit operation to other threads. Releases the lock. - with the `useMemoryBarrier` argument set to true will improve the fairness of the lock at the expense of some performance. The default overload behaves as if specifying true for `useMemoryBarrier`. - - If you call without having first called the internal state of the can become corrupted. - + with the `useMemoryBarrier` argument set to true will improve the fairness of the lock at the expense of some performance. The default overload behaves as if specifying true for `useMemoryBarrier`. + + If you call without having first called the internal state of the can become corrupted. + ]]> Thread ownership tracking is enabled, and the current thread is not the owner of this lock. @@ -481,11 +481,11 @@ End Class Gets whether the lock is held by the current thread. true if the lock is held by the current thread; otherwise false. - Thread ownership tracking is disabled. @@ -600,11 +600,11 @@ End Class True if the lock is acquired; otherwise, false. must be initialized to false prior to calling this method. Attempts to acquire the lock in a reliable manner, such that even if an exception occurs within the method call, can be examined reliably to determine whether the lock was acquired. - , TryEnter will not block waiting for the lock to be available. If the lock is not available when TryEnter is called, it will return immediately without any further spinning. - + , TryEnter will not block waiting for the lock to be available. If the lock is not available when TryEnter is called, it will return immediately without any further spinning. + ]]> The argument must be initialized to false prior to calling TryEnter. @@ -658,11 +658,11 @@ End Class True if the lock is acquired; otherwise, false. must be initialized to false prior to calling this method. Attempts to acquire the lock in a reliable manner, such that even if an exception occurs within the method call, can be examined reliably to determine whether the lock was acquired. - , TryEnter will not block indefinitely waiting for the lock to be available. It will block until either the lock is available or until the `millisecondsTimeout` has expired. - + , TryEnter will not block indefinitely waiting for the lock to be available. It will block until either the lock is available or until the `millisecondsTimeout` has expired. + ]]> @@ -718,11 +718,11 @@ End Class True if the lock is acquired; otherwise, false. must be initialized to false prior to calling this method. Attempts to acquire the lock in a reliable manner, such that even if an exception occurs within the method call, can be examined reliably to determine whether the lock was acquired. - , TryEnter will not block indefinitely waiting for the lock to be available. It will block until either the lock is available or until the `timeout` has expired. - + , TryEnter will not block indefinitely waiting for the lock to be available. It will block until either the lock is available or until the `timeout` has expired. + ]]> diff --git a/xml/System.Threading/Thread.xml b/xml/System.Threading/Thread.xml index 5619e4a4e7e..53841a6e077 100644 --- a/xml/System.Threading/Thread.xml +++ b/xml/System.Threading/Thread.xml @@ -1386,9 +1386,9 @@ You can specify the COM threading model for a C++ application using the [/CLRTHR ## Remarks By default, the common language runtime (CLR) cleans up runtime callable wrappers automatically. The CLR pumps messages during the cleanup, which might cause reentrancy problems for a few applications that meet the following unusual criteria: -- The application does its own message pumping. +- The application does its own message pumping. -- The application needs to control precisely when message pumping occurs. +- The application needs to control precisely when message pumping occurs. Such applications can use the method to prevent the CLR from doing automatic reclamation of runtime callable wrappers. @@ -2422,18 +2422,18 @@ The value is not guaranteed to be a zero-based processor number. By default, the following threads execute in the foreground (that is, their property returns `false`): -- The primary thread (or main application thread). +- The primary thread (or main application thread). -- All threads created by calling a class constructor. +- All threads created by calling a class constructor. By default, the following threads execute in the background (that is, their property returns `true`): -- Thread pool threads, which are a pool of worker threads maintained by the runtime. You can configure the thread pool and schedule work on thread pool threads by using the class. +- Thread pool threads, which are a pool of worker threads maintained by the runtime. You can configure the thread pool and schedule work on thread pool threads by using the class. > [!NOTE] > Task-based asynchronous operations automatically execute on thread pool threads. -- All threads that enter the managed execution environment from unmanaged code. +- All threads that enter the managed execution environment from unmanaged code. ## Examples The following example contrasts the behavior of foreground and background threads. It creates a foreground thread and a background thread. The foreground thread keeps the process running until completes its `for` loop and terminates. However, as the output from the example shows, because the foreground thread has finished execution, the process is terminated before the background thread has completed execution. diff --git a/xml/System.Threading/Volatile.xml b/xml/System.Threading/Volatile.xml index fe21d0307fb..93802f8b5e7 100644 --- a/xml/System.Threading/Volatile.xml +++ b/xml/System.Threading/Volatile.xml @@ -51,46 +51,46 @@ Contains methods for performing volatile memory operations. - fields `x` and `y` that are initially zero: - + | Thread 1 | Thread 2 | | - | - | | `x = 1;` | `int y2 = Volatile.Read(ref y);` | | `Volatile.Write(ref y, 1);` | `int x2 = x;` | - + The volatile read and write prevent reordering of the two operations within each thread, such as by the compiler or by the processor. Regardless of the order in which these operations actually occur on one thread relative to the other thread, even on a multiprocessor system where the threads may run on different processors, the volatile operations guarantee that thread 2 would not see `y2 == 1` and `x2 == 0`. On thread 1 the write to `x` must appear to occur before the volatile write to `y`, and on thread 2 the read of `x` must appear to occur after the volatile read of `y`. So if thread 2 sees `y2 == 1`, it must also see `x2 == 1`. - + However, consider the same scenario as above with a specific sequence in which the operations occur: - + | Sequence | Thread 1 | Thread 2 | | -: | - | - | | 1 | `x = 1;` | `...` | | 2 | `Volatile.Write(ref y, 1);` | `...` | | 3 | `...` | `int y2 = Volatile.Read(ref y);` | | 4 | `...` | `int x2 = x;` | - + Even though the volatile write to `y` on thread 1 occurred before the volatile read of `y` on thread 2, thread 2 may still see `y2 == 0`. The volatile write to `y` does not guarantee that a following volatile read of `y` on a different processor will see the updated value. - + > [!NOTE] -> - Volatile reads and writes ensure that a value is read or written to memory and not cached (for example, in a processor register). Thus, you can use these operations to synchronize access to a field that can be updated by another thread or by hardware. +> - Volatile reads and writes ensure that a value is read or written to memory and not cached (for example, in a processor register). Thus, you can use these operations to synchronize access to a field that can be updated by another thread or by hardware. > - The class also provides read and write operations for some 64-bit types such as and . Volatile reads and writes on such 64-bit memory are atomic even on 32-bit processors, unlike regular reads and writes. - - Volatile memory operations are for special cases of synchronization, where normal locking is not an acceptable alternative. Under normal circumstances, the C# `lock` statement, the Visual Basic `SyncLock` statement, and the class provide the easiest and least error-prone way of synchronizing access to data, and the class provides a simple way to write lazy initialization code without directly using double-checked locking. - - The and methods enable functionality that is not supported in languages. For example: - -- Some languages, such as Visual Basic, do not recognize the concept of volatile memory operations. The class provides that functionality in such languages. - + + Volatile memory operations are for special cases of synchronization, where normal locking is not an acceptable alternative. Under normal circumstances, the C# `lock` statement, the Visual Basic `SyncLock` statement, and the class provide the easiest and least error-prone way of synchronizing access to data, and the class provides a simple way to write lazy initialization code without directly using double-checked locking. + + The and methods enable functionality that is not supported in languages. For example: + +- Some languages, such as Visual Basic, do not recognize the concept of volatile memory operations. The class provides that functionality in such languages. + > [!NOTE] - > Calling one of these methods affects only a single memory access. To provide effective synchronization for a field, all access to the field must use and . - -- In C#, using the `volatile` modifier on a field guarantees that every access to that field is a volatile memory operation, but the `volatile` modifier cannot be applied to array elements. The and methods can be used on array elements. - + > Calling one of these methods affects only a single memory access. To provide effective synchronization for a field, all access to the field must use and . + +- In C#, using the `volatile` modifier on a field guarantees that every access to that field is a volatile memory operation, but the `volatile` modifier cannot be applied to array elements. The and methods can be used on array elements. + ]]> volatile keyword (C# Reference) @@ -168,11 +168,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -238,11 +238,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -308,11 +308,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -378,11 +378,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -448,11 +448,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -518,11 +518,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -588,11 +588,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -662,11 +662,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -732,11 +732,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -806,11 +806,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -881,11 +881,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -960,11 +960,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -1035,11 +1035,11 @@ Reads the value of the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The value that was read. - class. - + class. + ]]> @@ -1128,11 +1128,11 @@ Reads the object reference from the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears after this method in the code, the processor cannot move it before this method. The reference to that was read. This reference is the latest written by any processor in the computer, regardless of the number of processors or the state of processor cache. - class. - + class. + ]]> @@ -1229,11 +1229,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1292,11 +1292,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1355,11 +1355,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1418,11 +1418,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1481,11 +1481,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1544,11 +1544,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1607,11 +1607,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1674,11 +1674,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1737,11 +1737,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1804,11 +1804,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1872,11 +1872,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -1944,11 +1944,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -2012,11 +2012,11 @@ The value to write. Writes the specified value to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> @@ -2101,11 +2101,11 @@ The object reference to write. Writes the specified object reference to the specified field. On systems that require it, inserts a memory barrier that prevents the processor from reordering memory operations as follows: If a read or write appears before this method in the code, the processor cannot move it after this method. - class. - + class. + ]]> diff --git a/xml/System.Threading/WaitHandle.xml b/xml/System.Threading/WaitHandle.xml index 7081d68c011..4ecb06c68a0 100644 --- a/xml/System.Threading/WaitHandle.xml +++ b/xml/System.Threading/WaitHandle.xml @@ -77,11 +77,11 @@ The class itself is abstract. Classes derived from define a signaling mechanism to indicate taking or releasing access to a shared resource, but they use the inherited methods to block while waiting for access to shared resources. The classes derived from include: -- The class. See [Mutexes](/dotnet/standard/threading/mutexes). +- The class. See [Mutexes](/dotnet/standard/threading/mutexes). -- The class and its derived classes, and . +- The class and its derived classes, and . -- The class. See [Semaphore and SemaphoreSlim](/dotnet/standard/threading/semaphore-and-semaphoreslim). +- The class. See [Semaphore and SemaphoreSlim](/dotnet/standard/threading/semaphore-and-semaphoreslim). Threads can block on an individual wait handle by calling the instance method , which is inherited by classes derived from . diff --git a/xml/System.Timers/Timer.xml b/xml/System.Timers/Timer.xml index 93cc2e5bfe8..81af146fa48 100644 --- a/xml/System.Timers/Timer.xml +++ b/xml/System.Timers/Timer.xml @@ -1126,11 +1126,11 @@ The example requires that you add the following controls to the form: -- A control named `TextBox1` (its default name). +- A control named `TextBox1` (its default name). -- A control named `Button1` (its default name). +- A control named `Button1` (its default name). -- A control named `SaveSaveFileDialog1` (its default name) . +- A control named `SaveSaveFileDialog1` (its default name) . ]]> diff --git a/xml/System.Transactions/Transaction.xml b/xml/System.Transactions/Transaction.xml index 2d1c690fdbf..d1b2d3ce504 100644 --- a/xml/System.Transactions/Transaction.xml +++ b/xml/System.Transactions/Transaction.xml @@ -551,7 +551,7 @@ - `TransactionInterop.GetTransmitterPropagationToken` -- Serialization of a Transaction object +- Serialization of a Transaction object ]]> diff --git a/xml/System.Transactions/TransactionInterop.xml b/xml/System.Transactions/TransactionInterop.xml index ffc03bc37ea..ec83627ff0f 100644 --- a/xml/System.Transactions/TransactionInterop.xml +++ b/xml/System.Transactions/TransactionInterop.xml @@ -49,39 +49,39 @@ Facilitates interaction between and components that were previously written to interact with MSDTC, COM+, or . This class cannot be inherited. - method. You can then cache this piece of information on the client machine for future usage. - + +1. On the remote machine, obtain the "whereabouts" of the transaction manager of that machine by calling the method. You can then cache this piece of information on the client machine for future usage. + 2. Send the data containing the whereabouts to the client machine using any preferred method. - -3. On the client machine, use the whereabouts to "export" the transaction to the remote machine and generate a transaction "cookie". This is done by calling and passing in the remote machine's whereabouts. - + +3. On the client machine, use the whereabouts to "export" the transaction to the remote machine and generate a transaction "cookie". This is done by calling and passing in the remote machine's whereabouts. + 4. Send the data containing the transaction "cookie" to the remote machine using any preferred method. - -5. On the remote machine, use the transaction "cookie" to obtain a clone of the client transaction by calling the method. - -6. On the remote machine, use the clone transaction to enlist the resource manager using the or methods of the class. - + +5. On the remote machine, use the transaction "cookie" to obtain a clone of the client transaction by calling the method. + +6. On the remote machine, use the clone transaction to enlist the resource manager using the or methods of the class. + The Transmitter/Receiver (pull model) propagation involves the following steps: - -- On the client machine, using the transaction generates a corresponding "propagation token" by calling . - -- Send the data containing the "propagation token" of the transaction to the remote machine using any preferred method. - -- On the remote machine, use the "propagation token" to obtain a clone of the client transaction by calling is called. Another advantage is that the propagation token can be sent to any remote machine, while the export cookie can be used only on the machine that provided the whereabouts. - + +- On the client machine, using the transaction generates a corresponding "propagation token" by calling . + +- Send the data containing the "propagation token" of the transaction to the remote machine using any preferred method. + +- On the remote machine, use the "propagation token" to obtain a clone of the client transaction by calling is called. Another advantage is that the propagation token can be sent to any remote machine, while the export cookie can be used only on the machine that provided the whereabouts. + However, you should also note that the whereabouts of remote transaction managers are encapsulated in all the propagation tokens, making them bigger than the corresponding transaction cookies from the Export/Import model. - + ]]> @@ -174,13 +174,13 @@ Transforms a transaction object into an export transaction cookie. An export transaction cookie representing the specified object. - class. - + class. + ]]> @@ -227,11 +227,11 @@ Generates a from a specified . A instance that represents the given . - used by . - + used by . + ]]> @@ -278,11 +278,11 @@ Generates a from the specified an export cookie. A from the specified export cookie. - class. - + class. + ]]> @@ -329,13 +329,13 @@ Generates a instance from the specified transmitter propagation token. A from the specified transmitter propagation token. - method, provide functionality for "pull" propagation, in which the transaction is "pulled" from the remote machine when this method is called to unmarshal the transaction. - - For more information on different propagation models, see the Remarks section of the class. - + method, provide functionality for "pull" propagation, in which the transaction is "pulled" from the remote machine when this method is called to unmarshal the transaction. + + For more information on different propagation models, see the Remarks section of the class. + ]]> The deserialization of a transaction fails because the transaction manager cannot be contacted. This may be caused by network firewall or security settings. @@ -381,8 +381,8 @@ A transaction to be marshaled into a propagation token. Generates a propagation token for the specified . - This method, together with the method, provide functionality for Transmitter/Receiver propagation, in which the transaction is "pulled" from the remote machine when the latter is called to unmarshal the transaction. - + This method, together with the method, provide functionality for Transmitter/Receiver propagation, in which the transaction is "pulled" from the remote machine when the latter is called to unmarshal the transaction. + For more information on different propagation models, see class. To be added. @@ -426,13 +426,13 @@ Gets the Whereabouts of the distributed transaction manager that uses. The Whereabouts of the distributed transaction manager that uses. - method. - - For more information on different propagation models, see the Remarks section of the class. - + method. + + For more information on different propagation models, see the Remarks section of the class. + ]]> @@ -473,11 +473,11 @@ The type of the distributed transaction processor. - diff --git a/xml/System.Web.ApplicationServices/ProfileService.xml b/xml/System.Web.ApplicationServices/ProfileService.xml index 74b0bcbd1ee..0eb9e8a8d1d 100644 --- a/xml/System.Web.ApplicationServices/ProfileService.xml +++ b/xml/System.Web.ApplicationServices/ProfileService.xml @@ -35,27 +35,27 @@ Enables access to ASP.NET user profiles through a Web service. - class enables you to get and set a user's profile properties through a Windows Communication Foundation (WCF) service. You can keep custom information for users through profile properties. For information about profile properties, see [ASP.NET Profile Properties Overview](https://learn.microsoft.com/previous-versions/aspnet/2y3fs9xs(v=vs.100)). - - The class contains the following methods that should be accessed only through a WCF service: - -- - -- - -- - -- - - To call these methods, you must enable the profile service on the Web server and then connect a WCF-compatible client application to the Web service. For information about how to configure the profile service, see [How to: Enable the WCF Profile Service](https://learn.microsoft.com/previous-versions/aspnet/bb514968(v=vs.100)). - - The event is raised when a user's profile properties are set. You can create an event handler for the event to validate property values or to dynamically change their values. - - For an example of how to use the WCF profile service from a console application, see [Walkthrough: Using ASP.NET Application Services](https://learn.microsoft.com/previous-versions/aspnet/bb515342(v=vs.100)). - + class enables you to get and set a user's profile properties through a Windows Communication Foundation (WCF) service. You can keep custom information for users through profile properties. For information about profile properties, see [ASP.NET Profile Properties Overview](https://learn.microsoft.com/previous-versions/aspnet/2y3fs9xs(v=vs.100)). + + The class contains the following methods that should be accessed only through a WCF service: + +- + +- + +- + +- + + To call these methods, you must enable the profile service on the Web server and then connect a WCF-compatible client application to the Web service. For information about how to configure the profile service, see [How to: Enable the WCF Profile Service](https://learn.microsoft.com/previous-versions/aspnet/bb514968(v=vs.100)). + + The event is raised when a user's profile properties are set. You can create an event handler for the event to validate property values or to dynamically change their values. + + For an example of how to use the WCF profile service from a console application, see [Walkthrough: Using ASP.NET Application Services](https://learn.microsoft.com/previous-versions/aspnet/bb515342(v=vs.100)). + ]]> @@ -107,11 +107,11 @@ Retrieves all the profile properties and values that are available to the profile service for the current user. The profile properties and values. - method to retrieve all the user's profile properties through one Web service call. For example, you can call this method and then store the profile properties in the client application and retrieve values as needed. The method returns values only for the profile properties that have been configured to be accessed through a Web service. You set whether a profile property can be accessed through a Web service by setting either the property or the property to `true`. - + method to retrieve all the user's profile properties through one Web service call. For example, you can call this method and then store the profile properties in the client application and retrieve values as needed. The method returns values only for the profile properties that have been configured to be accessed through a Web service. You set whether a profile property can be accessed through a Web service by setting either the property or the property to `true`. + ]]> @@ -148,11 +148,11 @@ Retrieves the specified profile properties and values for the current user. The profile property information and values. - method to specify which profile properties are retrieved. The method returns values only for profile properties that are configured for access through a Web service. You configure a profile property for access through a Web service by setting the property or property to `true`. - + method to specify which profile properties are retrieved. The method returns values only for profile properties that are configured for access through a Web service. You configure a profile property for access through a Web service by setting the property or property to `true`. + ]]> The parameter or an item in the collection is . @@ -185,21 +185,21 @@ Retrieves information about the profile properties that are available through the profile service. An array of objects that contain information about the profile properties. - method to retrieve information about profile properties from a client application that is compatible with the Windows Communication Framework (WCF). You can retrieve information such as the following: - -- The name and type of the properties. - -- Whether they are read-only. - -- Whether they can be accessed by users who have not been authenticated. - -- The default values for the properties. - - After retrieving these values, a client application can take appropriate actions such as not trying to set a read-only property. The current user does not have to be authenticated in order to call the method, because the properties apply to all users. - + method to retrieve information about profile properties from a client application that is compatible with the Windows Communication Framework (WCF). You can retrieve information such as the following: + +- The name and type of the properties. + +- Whether they are read-only. + +- Whether they can be accessed by users who have not been authenticated. + +- The default values for the properties. + + After retrieving these values, a client application can take appropriate actions such as not trying to set a read-only property. The current user does not have to be authenticated in order to call the method, because the properties apply to all users. + ]]> @@ -236,17 +236,17 @@ Sets the values of the specified properties in the user profile. The properties that were not set for the user profile, if any. - method to set a user's profile properties from an application that is compatible with the Windows Communication Foundation (WCF). The method returns any values that are not set, which might be for any one of the following reasons: - -- The specified profile property is read only (the property for a specified profile property is not set to `true`). - -- The user profile does not have a profile property that has the matching name. - -- Validation of the value failed. - + method to set a user's profile properties from an application that is compatible with the Windows Communication Foundation (WCF). The method returns any values that are not set, which might be for any one of the following reasons: + +- The specified profile property is read only (the property for a specified profile property is not set to `true`). + +- The user profile does not have a profile property that has the matching name. + +- Validation of the value failed. + ]]> @@ -270,21 +270,21 @@ Occurs when a user's profile properties are set. - event to validate property values or to dynamically change their values. The event is raised when the method is called. If the value for a property fails validation, add that property to the collection of the class. Any properties that are in the collection will not be saved to the user profile. - - You can add and register the event handler in the Global.asax file. - - - -## Examples - The following example shows an event handler for the event. When the value passed for `FirstName` property is empty or `null`, the `FirstName` property is added to the collection. - + event to validate property values or to dynamically change their values. The event is raised when the method is called. If the value for a property fails validation, add that property to the collection of the class. Any properties that are in the collection will not be saved to the user profile. + + You can add and register the event handler in the Global.asax file. + + + +## Examples + The following example shows an event handler for the event. When the value passed for `FirstName` property is empty or `null`, the `FirstName` property is added to the collection. + [!code-csharp[System.Web.ApplicationServices.ProfileService#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.ApplicationServices.ProfileService/cs/Global.asax#1)] - [!code-vb[System.Web.ApplicationServices.ProfileService#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.ApplicationServices.ProfileService/vb/Global.asax#1)] - + [!code-vb[System.Web.ApplicationServices.ProfileService#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.ApplicationServices.ProfileService/vb/Global.asax#1)] + ]]> diff --git a/xml/System.Web.Caching/SqlCacheDependency.xml b/xml/System.Web.Caching/SqlCacheDependency.xml index 29a926e2a49..af31f17fc49 100644 --- a/xml/System.Web.Caching/SqlCacheDependency.xml +++ b/xml/System.Web.Caching/SqlCacheDependency.xml @@ -103,9 +103,9 @@ SQL statements that are associated with the `sqlCmd` parameter must include the following: -- Fully qualified table names, including the name of the table owner. For example, to refer to a table named Customers that is owned by the database owner, the SQL statement must refer to `dbo.customers`. +- Fully qualified table names, including the name of the table owner. For example, to refer to a table named Customers that is owned by the database owner, the SQL statement must refer to `dbo.customers`. -- Explicit column names in the Select statement. You cannot use the asterisk (*) wildcard character to select all columns from a table. For example, instead of `select * from dbo.customers`, you must use `select name, address, city, state from dbo.customers`. +- Explicit column names in the Select statement. You cannot use the asterisk (*) wildcard character to select all columns from a table. For example, instead of `select * from dbo.customers`, you must use `select name, address, city, state from dbo.customers`. This constructor cannot be used to associate a instance with a instance on a page using SQL Server 2005 query notifications with page-level output caching. diff --git a/xml/System.Web.Configuration/AnonymousIdentificationSection.xml b/xml/System.Web.Configuration/AnonymousIdentificationSection.xml index 171700b421e..1d4ccd1c7ca 100644 --- a/xml/System.Web.Configuration/AnonymousIdentificationSection.xml +++ b/xml/System.Web.Configuration/AnonymousIdentificationSection.xml @@ -431,9 +431,9 @@ When class. diff --git a/xml/System.Web.Configuration/ClientTargetCollection.xml b/xml/System.Web.Configuration/ClientTargetCollection.xml index 7a45929f7ab..b88e04613d7 100644 --- a/xml/System.Web.Configuration/ClientTargetCollection.xml +++ b/xml/System.Web.Configuration/ClientTargetCollection.xml @@ -178,9 +178,9 @@ If you use the method, the following conditions apply: -- If you pass the or parameter value, then a `clear` element is inserted into the `clientTarget` section of the configuration file at the current hierarchy level. +- If you pass the or parameter value, then a `clear` element is inserted into the `clientTarget` section of the configuration file at the current hierarchy level. -- If you pass the parameter value, a series of `remove` elements are added to the `clientTarget` section of the configuration file at the current hierarchy level. This removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. With the enumeration value, one additional property on the collection affects what gets serialized to the configuration file. The property is and is `false` by default. One of the following conditions applies: +- If you pass the parameter value, a series of `remove` elements are added to the `clientTarget` section of the configuration file at the current hierarchy level. This removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. With the enumeration value, one additional property on the collection affects what gets serialized to the configuration file. The property is and is `false` by default. One of the following conditions applies: - When is set to `true`, a `clear` element is inserted into the `clientTarget` section of the configuration file at the current hierarchy level. This removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. diff --git a/xml/System.Web.Configuration/CustomErrorCollection.xml b/xml/System.Web.Configuration/CustomErrorCollection.xml index ed3f6eb6cbc..c7785cb767b 100644 --- a/xml/System.Web.Configuration/CustomErrorCollection.xml +++ b/xml/System.Web.Configuration/CustomErrorCollection.xml @@ -23,32 +23,32 @@ Represents a collection of objects. This class cannot be inherited. - type allows access to the `error` elements of the `customErrors` section element collection. - - It belongs to a group that includes the , , and . - - - -## Examples - This example demonstrates how to specify values declaratively for the `error` elements of the `customErrors` section, which can also be accessed as elements of the collection. - - The following configuration file example shows how to specify values declaratively for the `error` elements. - -``` - - - -``` - - The following code example demonstrates how to use the class. - + type allows access to the `error` elements of the `customErrors` section element collection. + + It belongs to a group that includes the , , and . + + + +## Examples + This example demonstrates how to specify values declaratively for the `error` elements of the `customErrors` section, which can also be accessed as elements of the collection. + + The following configuration file example shows how to specify values declaratively for the `error` elements. + +``` + + + +``` + + The following code example demonstrates how to use the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet1"::: + ]]> @@ -78,11 +78,11 @@ Initializes a new instance of the class. - constructor is not intended to be used directly from your code. It is called by the ASP.NET configuration system. You obtain an instance of the class by using the property. - + constructor is not intended to be used directly from your code. It is called by the ASP.NET configuration system. You obtain an instance of the class by using the property. + ]]> @@ -110,21 +110,21 @@ The object to add already exists in the collection or the collection is read only. Adds a object to the collection. - error object and initialize the and properties. - - - -## Examples - The following code example adds a object to the collection. - - Refer to the code example in the class topic to learn how to get the collection. - + error object and initialize the and properties. + + + +## Examples + The following code example adds a object to the collection. + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet5"::: + ]]> @@ -171,37 +171,37 @@ Removes all objects from the collection. - method is dependent upon the chosen. To update the configuration file, you use one of these two overloads: and . - + method is dependent upon the chosen. To update the configuration file, you use one of these two overloads: and . + > [!NOTE] -> Calling is equivalent to calling . - - If you use the .method, the following conditions apply. - -- If you pass a or parameter value, then a `clear` element is inserted into the `clientTarget` section of the configuration file at the current hierarchy level. - -- If you pass the parameter value, a series of `remove` elements are added to the [clientTarget Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6379d90d(v=vs.100)) of the configuration file at the current hierarchy level. Each removes all references to an `add` element defined in a parent configuration file at a higher level in the hierarchy. When you use , there is one additional property on the collection that affects what gets serialized to the configuration file: , which is `false` by default. The following conditions apply. - - - If the set to `true`, `clear` element is inserted into the `clientTarget` section of the configuration file at the current hierarchy level. This removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. - - - If the flag is set to `false`, the `clear` element is removed from the `clientTarget` section of the configuration file at the current hierarchy level, if it exists. - - The method actually deletes the `add` elements defined in the `clientTarget` section of the configuration file at the current hierarchy level. It also removes all references to the add elements defined in the parent configuration files at higher levels in the hierarchy. - +> Calling is equivalent to calling . + + If you use the .method, the following conditions apply. + +- If you pass a or parameter value, then a `clear` element is inserted into the `clientTarget` section of the configuration file at the current hierarchy level. + +- If you pass the parameter value, a series of `remove` elements are added to the [clientTarget Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6379d90d(v=vs.100)) of the configuration file at the current hierarchy level. Each removes all references to an `add` element defined in a parent configuration file at a higher level in the hierarchy. When you use , there is one additional property on the collection that affects what gets serialized to the configuration file: , which is `false` by default. The following conditions apply. + + - If the set to `true`, `clear` element is inserted into the `clientTarget` section of the configuration file at the current hierarchy level. This removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. + + - If the flag is set to `false`, the `clear` element is removed from the `clientTarget` section of the configuration file at the current hierarchy level, if it exists. + + The method actually deletes the `add` elements defined in the `clientTarget` section of the configuration file at the current hierarchy level. It also removes all references to the add elements defined in the parent configuration files at higher levels in the hierarchy. + > [!NOTE] -> The `add` elements are not deleted from the `clientTarget` section of the parent configuration files. - - - -## Examples - The following code example removes all the objects from the collection. Refer to the code example in the class topic to learn how to get the collection. - +> The `add` elements are not deleted from the `clientTarget` section of the parent configuration files. + + + +## Examples + The following code example removes all the objects from the collection. Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet6"::: + ]]> @@ -306,16 +306,16 @@ Gets the object with the specified index. The with the specified index. - object at the specified collection index. - - Refer to the code example in the class topic to learn how to get the collection. - + object at the specified collection index. + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet10"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet10"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet10"::: + ]]> @@ -344,16 +344,16 @@ Gets the object with the specified status code. The object with the specified status code. - object with the specified status code. - - Refer to the code example in the class topic to learn how to get the collection. - + object with the specified status code. + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet11"::: + ]]> @@ -522,22 +522,22 @@ The HTTP status code associated with the custom error. Removes a object from the collection. - method inserts a `remove` element into the `customErrors` section of the configuration file at the current hierarchy level. This removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy. - + method inserts a `remove` element into the `customErrors` section of the configuration file at the current hierarchy level. This removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy. + > [!NOTE] -> The `add` elements are not deleted from the parent configuration files. The `remove` element merely deactivates them. However, the method does actually delete them at the current hierarchy level. - - - -## Examples - The following code example shows how to remove the object with the specified status code. Refer to the code example in the class topic to learn how to get the collection. - +> The `add` elements are not deleted from the parent configuration files. The `remove` element merely deactivates them. However, the method does actually delete them at the current hierarchy level. + + + +## Examples + The following code example shows how to remove the object with the specified status code. Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet7"::: + ]]> @@ -565,21 +565,21 @@ The collection index of the object to remove. Removes a object at the specified index location from the collection. - method inserts a `remove` element into the `customErrors` section of the configuration file at the current hierarchy level. This is to remove the reference to the `add` element defined in the parent configuration files at higher-level in the hierarchy. - - **Note** The `add` elements are not deleted from the parent configuration files. They are merely deactivated. However, the method does actually delete them at the current hierarchy level. - - - -## Examples - The following code example shows how to remove the object at the specified index. Refer to the code example in the class topic to learn how to get the collection. - + method inserts a `remove` element into the `customErrors` section of the configuration file at the current hierarchy level. This is to remove the reference to the `add` element defined in the parent configuration files at higher-level in the hierarchy. + + **Note** The `add` elements are not deleted from the parent configuration files. They are merely deactivated. However, the method does actually delete them at the current hierarchy level. + + + +## Examples + The following code example shows how to remove the object at the specified index. Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet8"::: + ]]> @@ -607,19 +607,19 @@ The to add to the collection. Adds the specified to the collection. - object. Refer to the code example in the class topic to learn how to get the collection. - + object. Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/CS/customerrorssection.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.CustomErrorsSection/VB/customerrorssection.vb" id="Snippet4"::: + ]]> diff --git a/xml/System.Web.Configuration/HttpCapabilitiesSectionHandler.xml b/xml/System.Web.Configuration/HttpCapabilitiesSectionHandler.xml index b96ba4cd7ee..a0a848d8f05 100644 --- a/xml/System.Web.Configuration/HttpCapabilitiesSectionHandler.xml +++ b/xml/System.Web.Configuration/HttpCapabilitiesSectionHandler.xml @@ -28,11 +28,11 @@ Using the browser definition files to store browser capabilities affords advantages over the alternative. It offers improved performance because the browser definition information is parsed from the XML configuration file and compiled into a class ahead of time. The browser definition files are also easier to maintain: -- The definitions are hierarchical, and thus rely less on regular expressions to determine the browser capabilities. +- The definitions are hierarchical, and thus rely less on regular expressions to determine the browser capabilities. -- The definitions can be organized in multiple files, making them easier to manage. +- The definitions can be organized in multiple files, making them easier to manage. -- The definitions can be defined at any level, either at the Machine.config level or a specific application level. This eliminates the need to copy the entire set of definitions for the purpose of overriding the capabilities for a specific browser. +- The definitions can be defined at any level, either at the Machine.config level or a specific application level. This eliminates the need to copy the entire set of definitions for the purpose of overriding the capabilities for a specific browser. ]]> diff --git a/xml/System.Web.Configuration/HttpRuntimeSection.xml b/xml/System.Web.Configuration/HttpRuntimeSection.xml index 69406c1f4af..39ffad68ebe 100644 --- a/xml/System.Web.Configuration/HttpRuntimeSection.xml +++ b/xml/System.Web.Configuration/HttpRuntimeSection.xml @@ -26,13 +26,13 @@ The section contains directives that manage the following: -- Request execution timeouts. +- Request execution timeouts. -- Directives to thread scheduling at the application level. +- Directives to thread scheduling at the application level. -- Directives that govern application queue limits. +- Directives that govern application queue limits. -- Request length. +- Request length. When running more than one application in a single process, you should lock down this section so that applications cannot elevate their relative priority to one another. @@ -432,13 +432,13 @@ ## Remarks In order to cache a response, the following criteria need to be met: -- Caching must be explicitly enabled by a page directive or by the caching API. +- Caching must be explicitly enabled by a page directive or by the caching API. -- Caching must have an expiration policy so that the kernel knows when to discard it. +- Caching must have an expiration policy so that the kernel knows when to discard it. -- Caching cannot have any variable headers or parameters. +- Caching cannot have any variable headers or parameters. -- The request must not require any authentication. +- The request must not require any authentication. > [!NOTE] > This property is relevant only when Internet Information Services (IIS) version 6.0 or later is installed. diff --git a/xml/System.Web.Configuration/MachineKeySection.xml b/xml/System.Web.Configuration/MachineKeySection.xml index 4a41da506ea..7f55ac027d6 100644 --- a/xml/System.Web.Configuration/MachineKeySection.xml +++ b/xml/System.Web.Configuration/MachineKeySection.xml @@ -17,33 +17,33 @@ Defines the configuration settings that control the key generation and algorithms that are used in encryption, decryption, and message authentication code (MAC) operations in Windows Forms authentication, view-state validation, and session-state application isolation. This class cannot be inherited. - class provides a way to programmatically access and modify the content of the `MachineKey` section in the configuration file. The `MachineKey` section can be configured at the machine (Machine.config) or application (Web.config) level and controls the keys and algorithms that are used for Windows Forms authentication, view-state validation, and session-state application isolation. For any of these features to work across a network of Web servers (a Web farm), the `DecryptionKey` and `ValidationKey` attributes of the `MachineKey` section must be configured explicitly and identically with valid key values. The `AutoGenerate` value does not work for Web farms, because it relies on a cryptographically random secret, which is persisted using machine-local protection and will not be the same across more than one computer. - - - -## Examples - The example in this section demonstrates how to specify values declaratively for several attributes of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) section, which can also be accessed as members of the class. - - The following example from a configuration file shows how to specify values declaratively for the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) section. - -``` - - - -``` - - This example uses SHA1. Due to collision problems with SHA1, Microsoft recommends SHA256. - - The following example demonstrates how to use the class in code. - + class provides a way to programmatically access and modify the content of the `MachineKey` section in the configuration file. The `MachineKey` section can be configured at the machine (Machine.config) or application (Web.config) level and controls the keys and algorithms that are used for Windows Forms authentication, view-state validation, and session-state application isolation. For any of these features to work across a network of Web servers (a Web farm), the `DecryptionKey` and `ValidationKey` attributes of the `MachineKey` section must be configured explicitly and identically with valid key values. The `AutoGenerate` value does not work for Web farms, because it relies on a cryptographically random secret, which is persisted using machine-local protection and will not be the same across more than one computer. + + + +## Examples + The example in this section demonstrates how to specify values declaratively for several attributes of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) section, which can also be accessed as members of the class. + + The following example from a configuration file shows how to specify values declaratively for the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) section. + +``` + + + +``` + + This example uses SHA1. Due to collision problems with SHA1, Microsoft recommends SHA256. + + The following example demonstrates how to use the class in code. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/CS/machinekeysection.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet1"::: + ]]> @@ -75,11 +75,11 @@ Initializes a new instance of the class by using default settings. - class by using the method. - + class by using the method. + ]]> @@ -113,11 +113,11 @@ Gets or sets the name of the application. The name of the application. The default is . - property. The property value is passed to the factory method. - + property. The property value is passed to the factory method. + ]]> @@ -148,31 +148,31 @@ Gets or sets a value that specifies whether upgraded encryption methods for view state that were introduced after the .NET Framework version 2.0 Service Pack 1 release are used. A value that indicates whether encryption methods that were introduced after the .NET Framework 2.0 SP1 release are used. - property set to the same value. If the server that reads a forms authentication ticket has a different setting than the server that created the ticket, the ticket won't be recognized. - - The following values can be specified for the property: - -- `Framework20SP1`. This value specifies that ASP.NET uses encryption methods that were available in versions of ASP.NET earlier than 2.0 SP2. Use this value for all servers in a web farm if any server has a version of the .NET Framework earlier than 2.0 SP2. This is the default value unless the application Web.config file has the `targetFramework` attribute of the `httpRuntime` element set to "4.5". - -- `Framework20SP2`. This value specifies that ASP.NET uses upgraded encryption methods that were introduced in the .NET Framework 2.0 SP2. Use this value for all servers in a web farm if all servers have the .NET Framework 2.0 SP2 or later but at least one does not have the .NET Framework 4.5. - -- `Framework45`. Cryptographic enhancements for ASP.NET 4.5 are in effect. This is the default value if the application Web.config file has the `targetFramework` attribute of the `httpRuntime` element set to "4.5". - - When this property is set to `Framework45`, the following restrictions are in effect: - -- If the property has a value, the property must also have a value. The class mandates that a non-empty application name be provided. - -- The attribute must be an actual validation algorithm (for example, MD5, SHA1, HMACSHA256, HMACSHA384, HMACSHA512) or a custom algorithm that subclasses the type. The values AES and 3DES are forbidden. - -- The framework will not produce signed-only payloads. Forms authentication tickets will always be both encrypted and signed, regardless of how the `protection` attribute of the `forms` element is set in the Web.config file. View state will always be both encrypted and signed if either `EnableViewStateMac` or `RequireViewStateEncryption` is set for a given page. - - As a result of the security update that is described in [Microsoft security bulletin MS10-070](https://learn.microsoft.com/security-updates/SecurityBulletins/2010/ms10-070), the default encryption behavior is the same for the `Framework20SP1` and `Framework20SP2` settings. Changing the default behavior is not recommended, but if you want to do that, see [How to configure legacy encryption mode in ASP.NET](https://support.microsoft.com/kb/2425938). - + property set to the same value. If the server that reads a forms authentication ticket has a different setting than the server that created the ticket, the ticket won't be recognized. + + The following values can be specified for the property: + +- `Framework20SP1`. This value specifies that ASP.NET uses encryption methods that were available in versions of ASP.NET earlier than 2.0 SP2. Use this value for all servers in a web farm if any server has a version of the .NET Framework earlier than 2.0 SP2. This is the default value unless the application Web.config file has the `targetFramework` attribute of the `httpRuntime` element set to "4.5". + +- `Framework20SP2`. This value specifies that ASP.NET uses upgraded encryption methods that were introduced in the .NET Framework 2.0 SP2. Use this value for all servers in a web farm if all servers have the .NET Framework 2.0 SP2 or later but at least one does not have the .NET Framework 4.5. + +- `Framework45`. Cryptographic enhancements for ASP.NET 4.5 are in effect. This is the default value if the application Web.config file has the `targetFramework` attribute of the `httpRuntime` element set to "4.5". + + When this property is set to `Framework45`, the following restrictions are in effect: + +- If the property has a value, the property must also have a value. The class mandates that a non-empty application name be provided. + +- The attribute must be an actual validation algorithm (for example, MD5, SHA1, HMACSHA256, HMACSHA384, HMACSHA512) or a custom algorithm that subclasses the type. The values AES and 3DES are forbidden. + +- The framework will not produce signed-only payloads. Forms authentication tickets will always be both encrypted and signed, regardless of how the `protection` attribute of the `forms` element is set in the Web.config file. View state will always be both encrypted and signed if either `EnableViewStateMac` or `RequireViewStateEncryption` is set for a given page. + + As a result of the security update that is described in [Microsoft security bulletin MS10-070](https://learn.microsoft.com/security-updates/SecurityBulletins/2010/ms10-070), the default encryption behavior is the same for the `Framework20SP1` and `Framework20SP2` settings. Changing the default behavior is not recommended, but if you want to do that, see [How to configure legacy encryption mode in ASP.NET](https://support.microsoft.com/kb/2425938). + ]]> @@ -206,13 +206,13 @@ Gets or sets the name of the data protector type. The default is . The name of the data protector type. - property to and set this property to a string that represents a class that derives from the class. This string corresponds to the `providerClass` parameter that is passed to the static factory method. The class you specify is used by the and methods even if you do not specify the option. - - If you set this property, you must also set the property. - + property to and set this property to a string that represents a class that derives from the class. This string corresponds to the `providerClass` parameter that is passed to the static factory method. The class you specify is used by the and methods even if you do not specify the option. + + If you set this property, you must also set the property. + ]]> @@ -251,21 +251,21 @@ Specifies the encryption algorithm that is used for encrypting and decrypting forms authentication data. A value that indicates the algorithm that is used to encrypt and decrypt forms authentication data. (For information about how to specify the algorithm that is used when view state is encrypted, see the property.) is the default value. - property supports the following decryption values: - -- `Auto`, which is the default value, specifies that ASP.NET determines which encryption algorithm to use based on configuration default settings. - -- `AES`, which specifies that ASP.NET uses the algorithm to encrypt data. `AES` is the default algorithm to encrypt data. - -- `3DES`, which specifies that ASP.NET uses the algorithm to encrypt data. - -- A custom algorithm. - - This property is typically set declaratively in the `decryption` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. For more information, see the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element. - + property supports the following decryption values: + +- `Auto`, which is the default value, specifies that ASP.NET determines which encryption algorithm to use based on configuration default settings. + +- `AES`, which specifies that ASP.NET uses the algorithm to encrypt data. `AES` is the default algorithm to encrypt data. + +- `3DES`, which specifies that ASP.NET uses the algorithm to encrypt data. + +- A custom algorithm. + + This property is typically set declaratively in the `decryption` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. For more information, see the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element. + ]]> The selected value is not one of the decryption values. @@ -306,29 +306,29 @@ Gets or sets the key that is used to encrypt and decrypt data, or the process by which the key is generated. A key value, or a value that indicates how the key is generated. The default is "AutoGenerate,IsolateApps". - property is used for encryption and decryption, such as in Windows Forms authentication, and for view state when the property is set to "3DES" or "AES". - - Use the "AutoGenerate" option to specify that ASP.NET generates a random key and stores it in the Local Security Authority. The "AutoGenerate" option is part of the default value. - - If you add the "IsolateApps" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . This is the default setting. - - If you add the "IsolateByAppId" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . If two distinct applications share a virtual path (perhaps because those applications are running on different ports), this flag can be used to further distinguish them from one another. The "IsolateByAppId" flag is understood only by ASP.NET 4.5, but it can be used regardless of the setting. - - If you need to support configuration across a network of Web servers (a Web farm), set the property manually to ensure consistent configuration. For information about how to manually generate values for the `DecryptionKey` attribute, see [How To: Configure MachineKey in ASP.NET 2.0](https://go.microsoft.com/fwlink/?linkid=155113). - - This property is typically set declaratively in the `DecryptionKey` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. For more information, see the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element. - - - -## Examples - The following example demonstrates how to set the property by using code. This example is part of a larger example provided for the class. - + property is used for encryption and decryption, such as in Windows Forms authentication, and for view state when the property is set to "3DES" or "AES". + + Use the "AutoGenerate" option to specify that ASP.NET generates a random key and stores it in the Local Security Authority. The "AutoGenerate" option is part of the default value. + + If you add the "IsolateApps" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . This is the default setting. + + If you add the "IsolateByAppId" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . If two distinct applications share a virtual path (perhaps because those applications are running on different ports), this flag can be used to further distinguish them from one another. The "IsolateByAppId" flag is understood only by ASP.NET 4.5, but it can be used regardless of the setting. + + If you need to support configuration across a network of Web servers (a Web farm), set the property manually to ensure consistent configuration. For information about how to manually generate values for the `DecryptionKey` attribute, see [How To: Configure MachineKey in ASP.NET 2.0](https://go.microsoft.com/fwlink/?linkid=155113). + + This property is typically set declaratively in the `DecryptionKey` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. For more information, see the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element. + + + +## Examples + The following example demonstrates how to set the property by using code. This example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/CS/machinekeysection.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet3"::: + ]]> @@ -438,19 +438,19 @@ Specifies the hashing algorithm that is used for validating forms authentication and view state data. A value that indicates the hashing algorithm that is used to validate forms authentication and view state data. - property supports encryption algorithms that are defined by the enumeration. This property is typically set declaratively in the `decryption` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. For more information, see the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element. - - - -## Examples - The following example demonstrates how to set the property by using code. This example is part of a larger example provided for the class. - + property supports encryption algorithms that are defined by the enumeration. This property is typically set declaratively in the `decryption` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. For more information, see the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element. + + + +## Examples + The following example demonstrates how to set the property by using code. This example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/CS/machinekeysection.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet4"::: + ]]> @@ -489,17 +489,17 @@ Gets or sets the name of the algorithm that is used to validate forms authentication and view state data. A string that contains the name of a predefined algorithm or the name of a custom algorithm. - enumeration. If you want to use a custom algorithm, you do not have to set this property. Set the property to the name of the custom algorithm. When you do that, this property will automatically be set to . - - You can set the property declaratively in the Web.config file or programmatically in code. - - To set this property declaratively, you use the `validationAlgorithm` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element in the configuration file. This attribute can be set to the name of a predefined algorithm or of a custom algorithm. The predefined algorithms are defined by the enumeration. Custom algorithms are specified in the `validationAlgorithm` attribute by using the "alg:" prefix followed by the name of the algorithm. If you use this format to specify a custom algorithm, the property is set to and this property is set to the name that follows the "alg:" prefix. - - To set this property programmatically, use the value of one of the predefined algorithms that are defined by the enumeration, or set this property to a custom algorithm name. If you set this property to the name of a custom algorithm, set the property to . - + enumeration. If you want to use a custom algorithm, you do not have to set this property. Set the property to the name of the custom algorithm. When you do that, this property will automatically be set to . + + You can set the property declaratively in the Web.config file or programmatically in code. + + To set this property declaratively, you use the `validationAlgorithm` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element in the configuration file. This attribute can be set to the name of a predefined algorithm or of a custom algorithm. The predefined algorithms are defined by the enumeration. Custom algorithms are specified in the `validationAlgorithm` attribute by using the "alg:" prefix followed by the name of the algorithm. If you use this format to specify a custom algorithm, the property is set to and this property is set to the name that follows the "alg:" prefix. + + To set this property programmatically, use the value of one of the predefined algorithms that are defined by the enumeration, or set this property to a custom algorithm name. If you set this property to the name of a custom algorithm, set the property to . + ]]> @@ -538,29 +538,29 @@ Gets or sets the key that is used to validate forms authentication and view state data, or the process by which the key is generated. A key value, or a value that indicates how the key is generated. The default is "AutoGenerate,IsolateApps". - property is used when `enableViewStateMAC` is `true` to create a message authentication code (MAC) to enable ASP.NET to determine whether view state has been tampered with. The property is also used to generate out-of-process, application-specific session IDs to ensure that session state variables are isolated between applications. - - Use the "AutoGenerate" option to specify that ASP.NET generates a random key and stores it in the Local Security Authority. The "AutoGenerate" option is part of the default value. - - If you add the "IsolateApps" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . This is the default setting. - - If you add the "IsolateByAppId" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . If two distinct applications share a virtual path (perhaps because those applications are running on different ports), this flag can be used to further distinguish them from one another. The "IsolateByAppId" flag is understood only by ASP.NET 4.5, but it can be used regardless of the setting. - - If you need to support configuration across a network of Web servers (a Web farm), set the property manually to ensure consistent configuration. For information about how to manually generate values for the `DecryptionKey` attribute, see [How To: Configure MachineKey in ASP.NET 2.0](https://go.microsoft.com/fwlink/?linkid=155113). - - This property is typically set declaratively in the `validationKey` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. - - - -## Examples - The following example shows how to set the property by using code. This example is part of a larger example provided for the class. - + property is used when `enableViewStateMAC` is `true` to create a message authentication code (MAC) to enable ASP.NET to determine whether view state has been tampered with. The property is also used to generate out-of-process, application-specific session IDs to ensure that session state variables are isolated between applications. + + Use the "AutoGenerate" option to specify that ASP.NET generates a random key and stores it in the Local Security Authority. The "AutoGenerate" option is part of the default value. + + If you add the "IsolateApps" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . This is the default setting. + + If you add the "IsolateByAppId" modifier to the "AutoGenerate" value, ASP.NET generates a unique encrypted key for each application by using each application's . If two distinct applications share a virtual path (perhaps because those applications are running on different ports), this flag can be used to further distinguish them from one another. The "IsolateByAppId" flag is understood only by ASP.NET 4.5, but it can be used regardless of the setting. + + If you need to support configuration across a network of Web servers (a Web farm), set the property manually to ensure consistent configuration. For information about how to manually generate values for the `DecryptionKey` attribute, see [How To: Configure MachineKey in ASP.NET 2.0](https://go.microsoft.com/fwlink/?linkid=155113). + + This property is typically set declaratively in the `validationKey` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element of the Web.config file. + + + +## Examples + The following example shows how to set the property by using code. This example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/CS/machinekeysection.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.MachineKeySection/VB/machinekeysection.vb" id="Snippet2"::: + ]]> diff --git a/xml/System.Web.Configuration/MachineKeyValidationConverter.xml b/xml/System.Web.Configuration/MachineKeyValidationConverter.xml index ef63038bd6a..243b910860b 100644 --- a/xml/System.Web.Configuration/MachineKeyValidationConverter.xml +++ b/xml/System.Web.Configuration/MachineKeyValidationConverter.xml @@ -17,13 +17,13 @@ Provides methods for converting objects to and from strings. - [!NOTE] -> The attribute applied to this class has the following property value: . The does not affect desktop applications (which are typically started by double-clicking an icon, typing a command, or entering a URL in a browser). For more information, see the class or [SQL Server Programming and Host Protection Attributes](/dotnet/framework/performance/sql-server-programming-and-host-protection-attributes). - +> The attribute applied to this class has the following property value: . The does not affect desktop applications (which are typically started by double-clicking an icon, typing a command, or entering a URL in a browser). For more information, see the class or [SQL Server Programming and Host Protection Attributes](/dotnet/framework/performance/sql-server-programming-and-host-protection-attributes). + ]]> @@ -80,19 +80,19 @@ Converts a string to the equivalent value. The equivalent value. - exception if the `data` parameter does not refer to one of the following strings: - -- SHA1 - -- MD5 - -- 3DES - -- AES - + exception if the `data` parameter does not refer to one of the following strings: + +- SHA1 + +- MD5 + +- 3DES + +- AES + ]]> The data is not one of the expected strings. diff --git a/xml/System.Web.Configuration/PagesSection.xml b/xml/System.Web.Configuration/PagesSection.xml index 797b86d5076..ceb212f416a 100644 --- a/xml/System.Web.Configuration/PagesSection.xml +++ b/xml/System.Web.Configuration/PagesSection.xml @@ -231,11 +231,11 @@ public partial class AutoEventWireupExample : System.Web.UI.Page Note the following about binding event handlers to events: -- If you set to `true`, make sure that you do not also manually attach page event handlers to events. If you do, handlers might be called more than one time. +- If you set to `true`, make sure that you do not also manually attach page event handlers to events. If you do, handlers might be called more than one time. -- Automatic binding is performed only for page events, not for events for controls on the page. +- Automatic binding is performed only for page events, not for events for controls on the page. -- As an alternative to binding events to handlers, you can override the `On`*eventname* methods of the page or of controls. +- As an alternative to binding events to handlers, you can override the `On`*eventname* methods of the page or of controls. diff --git a/xml/System.Web.Configuration/ScriptingScriptResourceHandlerSection.xml b/xml/System.Web.Configuration/ScriptingScriptResourceHandlerSection.xml index b29e8d19f24..af8f14cbf4d 100644 --- a/xml/System.Web.Configuration/ScriptingScriptResourceHandlerSection.xml +++ b/xml/System.Web.Configuration/ScriptingScriptResourceHandlerSection.xml @@ -17,11 +17,11 @@ Represents a configuration section in the element of the configuration file. This class cannot be inherited. - @@ -78,11 +78,11 @@ if caching is enabled for script files that are embedded as resources in an assembly; otherwise, . The default is . - property gets or sets the value for caching the results of the embedded script file, for caching any potential localization objects, and for caching scripts. - + property gets or sets the value for caching the results of the embedded script file, for caching any potential localization objects, and for caching scripts. + ]]> @@ -114,20 +114,20 @@ if compression is enabled for script files that are embedded as resources in an assembly; otherwise, . The default is . - property gets or sets the value that indicates whether the following will be compressed: - -- Script files that are embedded as resources in an assembly. - -- Localization objects, such as string resources that are contained in a resource file (.resx). - -- Scripts that are served by the script resource handler. - + property gets or sets the value that indicates whether the following will be compressed: + +- Script files that are embedded as resources in an assembly. + +- Localization objects, such as string resources that are contained in a resource file (.resx). + +- Scripts that are served by the script resource handler. + > [!NOTE] -> If the requesting browser does not support compression, this property has no effect. - +> If the requesting browser does not support compression, this property has no effect. + ]]> diff --git a/xml/System.Web.Configuration/SystemWebCachingSectionGroup.xml b/xml/System.Web.Configuration/SystemWebCachingSectionGroup.xml index 442fc04398c..f0437d264eb 100644 --- a/xml/System.Web.Configuration/SystemWebCachingSectionGroup.xml +++ b/xml/System.Web.Configuration/SystemWebCachingSectionGroup.xml @@ -28,9 +28,9 @@ The following list describes the two types of caching ASP.NET provides. -- The first is called output caching, which allows you to store dynamic page and user control responses. On subsequent requests, the page or user control code is not executed; the cached output is used to satisfy the request. You can access output caching settings using the and properties. +- The first is called output caching, which allows you to store dynamic page and user control responses. On subsequent requests, the page or user control code is not executed; the cached output is used to satisfy the request. You can access output caching settings using the and properties. -- The second type of caching is traditional application data caching, which you can use to programmatically store arbitrary objects to server memory so your application can save the time and resources it takes to recreate them. You can access these cache settings using the property. +- The second type of caching is traditional application data caching, which you can use to programmatically store arbitrary objects to server memory so your application can save the time and resources it takes to recreate them. You can access these cache settings using the property. diff --git a/xml/System.Web.Configuration/TagPrefixInfo.xml b/xml/System.Web.Configuration/TagPrefixInfo.xml index 0a671c07fa5..1338c0cf53e 100644 --- a/xml/System.Web.Configuration/TagPrefixInfo.xml +++ b/xml/System.Web.Configuration/TagPrefixInfo.xml @@ -17,49 +17,49 @@ Defines a configuration element containing tag-related information. - class allows you to programmatically access and modify tag-prefix information stored in a configuration file. It provides the same functionality as the ASP.NET `@Register` directive. Tag prefixes associate a "namespace" in ASP.NET to the assemblies and namespaces that must be included for custom controls and user controls to work properly. objects are stored as members of a object. The class allows you to programmatically access and modify the `controls` subsection of the `pages` section of a configuration file. - - objects are added to the collection using the `add` element and specifying a value for the `tagPrefix` attribute along with values for other relevant attributes. The other required information varies based on the kind of control you will use with the specified tag prefix: - -- If it is a user control, you must define the , , and properties. - -- If it is a custom control, you must define the , , and properties. The property is not required if the control is in the application code directory. - - The same `tagPrefix` value can be used to map to multiple assemblies or namespaces. - + class allows you to programmatically access and modify tag-prefix information stored in a configuration file. It provides the same functionality as the ASP.NET `@Register` directive. Tag prefixes associate a "namespace" in ASP.NET to the assemblies and namespaces that must be included for custom controls and user controls to work properly. objects are stored as members of a object. The class allows you to programmatically access and modify the `controls` subsection of the `pages` section of a configuration file. + + objects are added to the collection using the `add` element and specifying a value for the `tagPrefix` attribute along with values for other relevant attributes. The other required information varies based on the kind of control you will use with the specified tag prefix: + +- If it is a user control, you must define the , , and properties. + +- If it is a custom control, you must define the , , and properties. The property is not required if the control is in the application code directory. + + The same `tagPrefix` value can be used to map to multiple assemblies or namespaces. + > [!NOTE] -> When a source is specified, the user control itself must not be in the same directory as the page. If it is, you get a run-time error when you attempt to load the page. - - - -## Examples - This example demonstrates how to specify values declaratively for several attributes of the `controls` section, which can also be accessed as members of the class. - -``` - - - - - - - - - - - - - -``` - - The following code example shows how to use the class to programmatically modify tag prefix settings. This code example is part of a larger example provided for the class. - +> When a source is specified, the user control itself must not be in the same directory as the page. If it is, you get a run-time error when you attempt to load the page. + + + +## Examples + This example demonstrates how to specify values declaratively for several attributes of the `controls` section, which can also be accessed as members of the class. + +``` + + + + + + + + + + + + + +``` + + The following code example shows how to use the class to programmatically modify tag prefix settings. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/CS/usingpagessection.cs" id="Snippet12"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/VB/usingpagessection.vb" id="Snippet12"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/VB/usingpagessection.vb" id="Snippet12"::: + ]]> @@ -94,23 +94,23 @@ The name of the file that contains the user control. Initializes a new instance of the class using the passed values. - class and initializes it using the passed parameters. The parameters for which you specify values depend on the kind of control you refer to with the specified tag prefix. Parameters not required for that tag prefix should be left blank. (Use an empty string.) - -- If the control is a user control, you must specify values for the `tagPrefix`, `tagName`, and `source` parameters. - -- If the control is a custom control, you must specify values for the `tagPrefix` and `nameSpace` parameters. If the control is not in the application code directory, you must also specify the `assembly` parameter. - - - -## Examples - The following code example shows how to use the constructor. This code example is part of a larger example provided for the class. - + class and initializes it using the passed parameters. The parameters for which you specify values depend on the kind of control you refer to with the specified tag prefix. Parameters not required for that tag prefix should be left blank. (Use an empty string.) + +- If the control is a user control, you must specify values for the `tagPrefix`, `tagName`, and `source` parameters. + +- If the control is a custom control, you must specify values for the `tagPrefix` and `nameSpace` parameters. If the control is not in the application code directory, you must also specify the `assembly` parameter. + + + +## Examples + The following code example shows how to use the constructor. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/CS/usingpagessection.cs" id="Snippet32"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/VB/usingpagessection.vb" id="Snippet32"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/VB/usingpagessection.vb" id="Snippet32"::: + ]]> @@ -142,18 +142,18 @@ Gets or sets the name of the assembly containing the control implementation. The name of the assembly (without an extension). The default is an empty string. - property. This code example is part of a larger example provided for the class. - - - + property. This code example is part of a larger example provided for the class. + + + ]]> @@ -267,18 +267,18 @@ Gets or sets the namespace in which the control resides. The name of the namespace. The default is an empty string. - property. This code example is part of a larger example provided for the class. - - - + property. This code example is part of a larger example provided for the class. + + + ]]> @@ -340,21 +340,21 @@ Gets or sets the name and path of the file containing the user control. The name and path of the file containing the user control. - [!NOTE] -> The user control itself must not be in the same directory as the page. If it is, you get a run-time error when you attempt to load the page. - - - -## Examples - The following code example shows how to use the property. This code example is part of a larger example provided for the class. - - - +> The user control itself must not be in the same directory as the page. If it is, you get a run-time error when you attempt to load the page. + + + +## Examples + The following code example shows how to use the property. This code example is part of a larger example provided for the class. + + + ]]> @@ -388,18 +388,18 @@ Gets or sets the name of the user control. The name of the user control. - `. - - - -## Examples - The following code example shows how to use the property. This code example is part of a larger example provided for the class. - - - + `. + + + +## Examples + The following code example shows how to use the property. This code example is part of a larger example provided for the class. + + + ]]> @@ -437,19 +437,19 @@ Gets or sets the tag prefix that is being associated with a source file or namespace and assembly. The tag prefix. - property defines the alias used for the namespace where the control resides. It applies to user and custom controls. This is the value that would precede the tag name in the ASP.NET code. For example "myTag" in ``. - - - -## Examples - The following code example shows how to use the property. This code example is part of a larger example provided for the class. - + property defines the alias used for the namespace where the control resides. It applies to user and custom controls. This is the value that would precede the tag name in the ASP.NET code. For example "myTag" in ``. + + + +## Examples + The following code example shows how to use the property. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/CS/usingpagessection.cs" id="Snippet30"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/VB/usingpagessection.vb" id="Snippet30"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.PagesSection/VB/usingpagessection.vb" id="Snippet30"::: + ]]> diff --git a/xml/System.Web.Configuration/TrustSection.xml b/xml/System.Web.Configuration/TrustSection.xml index 09a64fa3512..dbd26fec575 100644 --- a/xml/System.Web.Configuration/TrustSection.xml +++ b/xml/System.Web.Configuration/TrustSection.xml @@ -17,29 +17,29 @@ Configures the code-access security level that is applied to an application. This class cannot be inherited. - class lets you programmatically access and modify the configuration file `` section. The `` section configures the code-access-security permissions set that is used to run a particular application. This section can be declared at the machine, site, and application levels. - - - -## Examples - This section provides two code examples. The first demonstrates how to declaratively specify values for several properties of the class. The second demonstrates how to use the type. - - The following configuration file example shows how to declaratively specify values for several properties of the class. - -``` - - - -``` - - The following code example demonstrates how to use the type. - + class lets you programmatically access and modify the configuration file `` section. The `` section configures the code-access-security permissions set that is used to run a particular application. This section can be declared at the machine, site, and application levels. + + + +## Examples + This section provides two code examples. The first demonstrates how to declaratively specify values for several properties of the class. The second demonstrates how to use the type. + + The following configuration file example shows how to declaratively specify values for several properties of the class. + +``` + + + +``` + + The following code example demonstrates how to use the type. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/CS/trustsection.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/VB/trustsection.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/VB/trustsection.vb" id="Snippet1"::: + ]]> @@ -68,18 +68,18 @@ Initializes a new instance of the class using default settings. - constructor is not intended to be used directly from your code. It is called by the ASP.NET configuration system. You obtain an instance of the class by using the method. - - The following table shows the default settings that are used for the constructor. - -|Setting|Default value| -|-------------|-------------------| -||`Full`| -||`""`| - + constructor is not intended to be used directly from your code. It is called by the ASP.NET configuration system. You obtain an instance of the class by using the method. + + The following table shows the default settings that are used for the constructor. + +|Setting|Default value| +|-------------|-------------------| +||`Full`| +||`""`| + ]]> @@ -109,13 +109,13 @@ Gets or sets the custom security-policy resolution type. The custom security-policy resolution type. - is an empty string, the application uses ASP.NET default policy to determine an assembly's permissions. The default policy for evaluating permissions grants full trust to the Global Assembly Cache (GAC) assemblies and partial trust to the other assemblies. - - This attribute cannot be set to a `null` value. - + is an empty string, the application uses ASP.NET default policy to determine an assembly's permissions. The default policy for evaluating permissions grants full trust to the Global Assembly Cache (GAC) assemblies and partial trust to the other assemblies. + + This attribute cannot be set to a `null` value. + ]]> @@ -146,21 +146,21 @@ if legacy code access security is enabled; otherwise, . The default is . - @@ -195,33 +195,33 @@ Gets or sets the name of the security level under which the application will run. The name of the trust level. The default is . - property specifies the security level under which the application will be run. The default is `"Full"`. - - There are five available trust levels: - -- Full - -- High - -- Medium - -- Low - -- Minimal - - The named levels correspond to the security levels that are defined in the `` element for ``. - - - -## Examples - The following code example demonstrates how to use the property. This code example is part of a larger example provided for the class. - + property specifies the security level under which the application will be run. The default is `"Full"`. + + There are five available trust levels: + +- Full + +- High + +- Medium + +- Low + +- Minimal + + The named levels correspond to the security levels that are defined in the `` element for ``. + + + +## Examples + The following code example demonstrates how to use the property. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/CS/trustsection.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/VB/trustsection.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/VB/trustsection.vb" id="Snippet2"::: + ]]> @@ -254,19 +254,19 @@ Specifies the URL of origin for an application. A well-formed HTTP URL or an empty string (""). The default is an empty string. - property specifies the URL of origin for an application. If present, this can be used for some permissions, such as those associated with the class. This enables you to specify a single URL that is used to create permission through a instance. This permission then grants ASP.NET code that has partial trust the right to make HTTP calls (for example, a Web service call) to that URL. The value must be a well-formed HTTP URL. - - - -## Examples - The following code example demonstrates how to use the property. This code example is part of a larger example provided for the class. - + property specifies the URL of origin for an application. If present, this can be used for some permissions, such as those associated with the class. This enables you to specify a single URL that is used to create permission through a instance. This permission then grants ASP.NET code that has partial trust the right to make HTTP calls (for example, a Web service call) to that URL. The value must be a well-formed HTTP URL. + + + +## Examples + The following code example demonstrates how to use the property. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/CS/trustsection.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/VB/trustsection.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.TrustSection/VB/trustsection.vb" id="Snippet3"::: + ]]> @@ -296,15 +296,15 @@ Gets or sets the name of the permission set. The name of the permission set. - property enables you to define in a partial trust configuration file the named permission set that is used during the initialization of an application domain. - - By default, the property is "ASP.Net" This is the name of the permission set that is used to initialize the application domain. - - This attribute cannot be set to an empty string or a `null` value. - + property enables you to define in a partial trust configuration file the named permission set that is used during the initialization of an application domain. + + By default, the property is "ASP.Net" This is the name of the permission set that is used to initialize the application domain. + + This attribute cannot be set to an empty string or a `null` value. + ]]> diff --git a/xml/System.Web.Configuration/UrlMappingCollection.xml b/xml/System.Web.Configuration/UrlMappingCollection.xml index 3be6056ecb1..ab7fccd7acc 100644 --- a/xml/System.Web.Configuration/UrlMappingCollection.xml +++ b/xml/System.Web.Configuration/UrlMappingCollection.xml @@ -23,28 +23,28 @@ Represents a collection of objects. This class cannot be inherited. - type allows access to the elements of the section element collection. - - - -## Examples - The following code example shows how to obtain the object from the configuration file of an existing Web application. Also shown is an excerpt of the configuration file. - -``` - - - - -``` - + type allows access to the elements of the section element collection. + + + +## Examples + The following code example shows how to obtain the object from the configuration file of an existing Web application. Also shown is an excerpt of the configuration file. + +``` + + + + +``` + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/CS/urlmapping.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet1"::: + ]]> @@ -67,11 +67,11 @@ Initializes a new instance of the class. - constructor is not intended to be used directly from your code. It is called by the ASP.NET configuration system. You obtain an instance of the class by using property. - + constructor is not intended to be used directly from your code. It is called by the ASP.NET configuration system. You obtain an instance of the class by using property. + ]]> @@ -99,16 +99,16 @@ The object to add to the collection. Adds the specified to the collection. - object to the . - - Refer to the code example in the class topic to learn how to get the collection. - + object to the . + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/CS/urlmapping.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet3"::: + ]]> @@ -157,33 +157,33 @@ Removes all the objects from the collection. - method, the result will be dependent upon the chosen . - - The following list describes the conditions that apply if you use the method to save the file: - -- If you pass or as the parameter value, a `clear` element is inserted into the `urlMappings` section of the configuration file at the current hierarchy level. - -- If you pass as the parameter value, a series of `remove` elements are added to the `urlMappings` of the configuration file at the current hierarchy level. These `remove` elements remove all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. With the enumeration value, there is one additional property on the collection that affects what gets serialized to the configuration file. The property is and is `false` by default. One of the following conditions applies: - - - set to `true`. A `clear` element is inserted into the `urlMappings` section of the configuration file at the current hierarchy level. This removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. - - - flag is set to `false`. This has the effect of removing the `clear` element from the `urlMappings` section of the configuration file at the current hierarchy level, if it exists. - - The method actually deletes the `add` elements defined in the `urlMappings` section of the configuration file at the current hierarchy level. It also removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy but does not delete them. - - - -## Examples - The following code example removes all objects from the . - - Refer to the code example in the class topic to learn how to get the collection. - + method, the result will be dependent upon the chosen . + + The following list describes the conditions that apply if you use the method to save the file: + +- If you pass or as the parameter value, a `clear` element is inserted into the `urlMappings` section of the configuration file at the current hierarchy level. + +- If you pass as the parameter value, a series of `remove` elements are added to the `urlMappings` of the configuration file at the current hierarchy level. These `remove` elements remove all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. With the enumeration value, there is one additional property on the collection that affects what gets serialized to the configuration file. The property is and is `false` by default. One of the following conditions applies: + + - set to `true`. A `clear` element is inserted into the `urlMappings` section of the configuration file at the current hierarchy level. This removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy. + + - flag is set to `false`. This has the effect of removing the `clear` element from the `urlMappings` section of the configuration file at the current hierarchy level, if it exists. + + The method actually deletes the `add` elements defined in the `urlMappings` section of the configuration file at the current hierarchy level. It also removes all references to the `add` elements defined in the parent configuration files at higher levels in the hierarchy but does not delete them. + + + +## Examples + The following code example removes all objects from the . + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/CS/urlmapping.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet4"::: + ]]> @@ -386,21 +386,21 @@ The name of the object to remove from the collection. Removes the object with the specified name from the collection. - method deletes the `add` element in the `urlMappings` section at the current hierarchy level and inserts a `remove` element. The remove element effectively removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy but does not delete it. - - - -## Examples - The following code example removes the object from the . - - Refer to the code example in the class topic to learn how to get the collection. - + method deletes the `add` element in the `urlMappings` section at the current hierarchy level and inserts a `remove` element. The remove element effectively removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy but does not delete it. + + + +## Examples + The following code example removes the object from the . + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/CS/urlmapping.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet6"::: + ]]> @@ -430,21 +430,21 @@ The object to remove from the collection. Removes the specified object from the collection. - method deletes the `add` element in the `urlMappings` section at the current hierarchy level and inserts a `remove` element. The remove element effectively removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy but does not delete it. - - - -## Examples - The following code example removes the object from the . - - Refer to the code example in the class topic to learn how to get the collection. - + method deletes the `add` element in the `urlMappings` section at the current hierarchy level and inserts a `remove` element. The remove element effectively removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy but does not delete it. + + + +## Examples + The following code example removes the object from the . + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/CS/urlmapping.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet5"::: + ]]> @@ -474,21 +474,21 @@ The collection index of the object to remove. Removes the object with the specified index from the collection. - method deletes the `add` element in the `urlMappings` section at the current hierarchy level and inserts a `remove` element. The remove element effectively removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy but does not delete it. - - - -## Examples - The following code example removes the object from the . - - Refer to the code example in the class topic to learn how to get the collection. - + method deletes the `add` element in the `urlMappings` section at the current hierarchy level and inserts a `remove` element. The remove element effectively removes the reference to the `add` element defined in the parent configuration files at higher levels in the hierarchy but does not delete it. + + + +## Examples + The following code example removes the object from the . + + Refer to the code example in the class topic to learn how to get the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/CS/urlmapping.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.UrlMapping/VB/urlmapping.vb" id="Snippet7"::: + ]]> diff --git a/xml/System.Web.Configuration/WebConfigurationManager.xml b/xml/System.Web.Configuration/WebConfigurationManager.xml index 708bdb5f418..f7c31ea6ee0 100644 --- a/xml/System.Web.Configuration/WebConfigurationManager.xml +++ b/xml/System.Web.Configuration/WebConfigurationManager.xml @@ -17,55 +17,55 @@ Provides access to configuration files as they apply to Web applications. - class allows you to access computer and application information. - - Using is the preferred way to work with configuration files related to Web applications. For client applications, use the class. - - Your application can extend the types or use them directly to handle configuration information, as explained in the following list: - -- `Handling configuration`. To handle configuration information using the standard types, you use one of the following approaches: - - - `Accessing a section`. To access configuration information for your application, you must use one of the `GetSection` methods provided by . For `` and ``, you use the and properties. These methods perform read-only operations, use a single cached instance of the configuration, and are multithread aware. - - - `Accessing configuration files`. Your application can read and write configuration settings at any level, for itself or for other applications or computers, locally or remotely. You use one of the `open` methods provided by . These methods will return a object, which in turn provides the required methods and properties to handle the underlying configuration files. These methods perform read or write operations and recreate the configuration data every time a file is opened. - - - `Advanced configuration`. More advanced configuration handling is provided by the types , , , , , , and . - -- `Extending configuration standard types`. You can also provide your custom configuration elements by extending the standard configuration types such as , , , and by using a programmatic or an attributed model. Refer to the class for an example of how to extend a standard configuration type programmatically. Refer to the class for an example of how to extend a standard configuration type using the attributed model. - - - -## Examples - The following example shows how to access configuration information with the - - method. - + class allows you to access computer and application information. + + Using is the preferred way to work with configuration files related to Web applications. For client applications, use the class. + + Your application can extend the types or use them directly to handle configuration information, as explained in the following list: + +- `Handling configuration`. To handle configuration information using the standard types, you use one of the following approaches: + + - `Accessing a section`. To access configuration information for your application, you must use one of the `GetSection` methods provided by . For `` and ``, you use the and properties. These methods perform read-only operations, use a single cached instance of the configuration, and are multithread aware. + + - `Accessing configuration files`. Your application can read and write configuration settings at any level, for itself or for other applications or computers, locally or remotely. You use one of the `open` methods provided by . These methods will return a object, which in turn provides the required methods and properties to handle the underlying configuration files. These methods perform read or write operations and recreate the configuration data every time a file is opened. + + - `Advanced configuration`. More advanced configuration handling is provided by the types , , , , , , and . + +- `Extending configuration standard types`. You can also provide your custom configuration elements by extending the standard configuration types such as , , , and by using a programmatic or an attributed model. Refer to the class for an example of how to extend a standard configuration type programmatically. Refer to the class for an example of how to extend a standard configuration type using the attributed model. + + + +## Examples + The following example shows how to access configuration information with the + + method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet2"::: + ]]> - The class allows programmatic access for editing configuration files. You use one of the open methods provided by . These methods will return a object, which in turn provides the required methods and properties to handle the underlying configuration files. You can access these files for reading or writing as follows: - - You use or to read configuration information. Note that the user or process that reads must have the following permissions: - -- Read permission on the configuration file at the current configuration hierarchy level. - -- Read permissions on all the parent configuration files. - - If your application needs read-only access to its own configuration, it is recommended you use the methods. These methods provide access to the cached configuration values for the current application, which has better performance than the class. - + The class allows programmatic access for editing configuration files. You use one of the open methods provided by . These methods will return a object, which in turn provides the required methods and properties to handle the underlying configuration files. You can access these files for reading or writing as follows: + + You use or to read configuration information. Note that the user or process that reads must have the following permissions: + +- Read permission on the configuration file at the current configuration hierarchy level. + +- Read permissions on all the parent configuration files. + + If your application needs read-only access to its own configuration, it is recommended you use the methods. These methods provide access to the cached configuration values for the current application, which has better performance than the class. + Note: If you use a static method that takes a parameter, the path parameter must refer to the application in which the code is running; otherwise, the parameter is ignored and configuration information for the currently-running application is returned. - - You use one of the methods to write configuration information. Note that the user or process that writes must have the following permissions: - -- Write permission on the configuration file and directory at the current configuration hierarchy level. - -- Read permissions on all the configuration files. + + You use one of the methods to write configuration information. Note that the user or process that writes must have the following permissions: + +- Write permission on the configuration file and directory at the current configuration hierarchy level. + +- Read permissions on all the configuration files. @@ -92,19 +92,19 @@ Note: If you use a static method that takes a Gets the Web site's application settings. A object that contains the object for the current Web application's default configuration. - object contains the configuration file's `` section. - - - -## Examples - The following example shows how to access configuration information with the method. - + object contains the configuration file's `` section. + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet8"::: + ]]> A valid object could not be retrieved with the application settings data. @@ -132,14 +132,14 @@ Note: If you use a static method that takes a Gets the Web site's connection strings. A object that contains the contents of the object for the current Web application's default configuration. - property to access configuration information and enumerate the results. To access a specific connection string, use the returned with the name of the desired connection string as an indexer. - + property to access configuration information and enumerate the results. To access a specific connection string, use the returned with the name of the desired connection string as an indexer. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet7"::: + ]]> A valid object could not be retrieved. @@ -183,32 +183,32 @@ Note: If you use a static method that takes a Retrieves the specified configuration section from the current Web application's configuration file. The specified configuration section object, or if the section does not exist. Remember that security restrictions exist on the use of as a runtime operation. You might not be able to access a section at run time for modifications, for example. - is called from within a Web application, it gets the section from the configuration file selected by the system according to the Web-application configuration hierarchy. - + is called from within a Web application, it gets the section from the configuration file selected by the system according to the Web-application configuration hierarchy. + > [!CAUTION] -> If your application uses a different protocol than HTTP, the overload that takes both a section name and a path in its parameter list is the one to use. You must specify the configuration file path because the system cannot make any assumptions about the configuration hierarchy level. If you use the overload that takes only a section name, the system will always attempt to return the configuration settings at the application level. Note, though, that if its specified path is outside of the current application, the overload that takes a path will also return the application-level configuration settings for the currently running application. - - You could call from within a client application. In this case, it gets the default section from the configuration file selected by the system according to the client configuration hierarchy. Usually, this is the Machine.config file, unless you have a mapped configuration in place. For mapping configuration files, refer to the mapping methods described next. - +> If your application uses a different protocol than HTTP, the overload that takes both a section name and a path in its parameter list is the one to use. You must specify the configuration file path because the system cannot make any assumptions about the configuration hierarchy level. If you use the overload that takes only a section name, the system will always attempt to return the configuration settings at the application level. Note, though, that if its specified path is outside of the current application, the overload that takes a path will also return the application-level configuration settings for the currently running application. + + You could call from within a client application. In this case, it gets the default section from the configuration file selected by the system according to the client configuration hierarchy. Usually, this is the Machine.config file, unless you have a mapped configuration in place. For mapping configuration files, refer to the mapping methods described next. + > [!NOTE] -> The method is a run-time method that operates on the section of a configuration file at the hierarchy level in which the application runs. For a non-run-time operation, use instead. This method operates on the specified section of a configuration file that you obtain using one of the overloaded methods for opening a configuration file, . - - - -## Examples - The examples in this section show how to access configuration information with the method. - - The following example shows a section that can be accessed from either a Web application or a console application. - +> The method is a run-time method that operates on the section of a configuration file at the hierarchy level in which the application runs. For a non-run-time operation, use instead. This method operates on the specified section of a configuration file that you obtain using one of the overloaded methods for opening a configuration file, . + + + +## Examples + The examples in this section show how to access configuration information with the method. + + The following example shows a section that can be accessed from either a Web application or a console application. + > [!NOTE] -> This example demonstrates how to use the method to get a object from a configuration file. - +> This example demonstrates how to use the method to get a object from a configuration file. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet2"::: + ]]> A valid configuration file could not be loaded. @@ -244,32 +244,32 @@ Note: If you use a static method that takes a Retrieves the specified configuration section from the Web application's configuration file at the specified location. The specified configuration section object, or if the section does not exist. Remember that security restrictions exist on the use of as a run-time operation. You might not be able to access a section at run time for modifications, for instance. - is called from within a Web application, it gets the section from the configuration file defined by the specified path in the configuration hierarchy. - + is called from within a Web application, it gets the section from the configuration file defined by the specified path in the configuration hierarchy. + > [!CAUTION] -> If your application uses a different protocol than HTTP, the overload that takes both a section name and a path in its parameter list is the one to use. You must specify the configuration file path because the system cannot make any assumptions about the configuration hierarchy level. If you use the overload that takes only a section name, the system will always attempt to return the configuration settings at the application level. Note, though, that if its specified path is outside of the current application, the overload that takes a path will also return the application-level configuration settings for the currently running application. - - This method cannot be called from within a client application. - - If you want to retrieve the configuration section from the configuration file located at the current Web application directory level, use the method. - +> If your application uses a different protocol than HTTP, the overload that takes both a section name and a path in its parameter list is the one to use. You must specify the configuration file path because the system cannot make any assumptions about the configuration hierarchy level. If you use the overload that takes only a section name, the system will always attempt to return the configuration settings at the application level. Note, though, that if its specified path is outside of the current application, the overload that takes a path will also return the application-level configuration settings for the currently running application. + + This method cannot be called from within a client application. + + If you want to retrieve the configuration section from the configuration file located at the current Web application directory level, use the method. + > [!NOTE] -> The method is a run-time method operating on the section of a configuration file at the hierarchy level in which the application runs. For a non-run-time operation, use instead. This method operates on the specified section of a configuration file that you obtain using one of the `open` configuration file methods. - - - -## Examples - The following example shows how to access configuration information with the method. - +> The method is a run-time method operating on the section of a configuration file at the hierarchy level in which the application runs. For a non-run-time operation, use instead. This method operates on the specified section of a configuration file that you obtain using one of the `open` configuration file methods. + + + +## Examples + The following example shows how to access configuration information with the method. + > [!NOTE] -> This example demonstrates how to use the method to get a object from a specified configuration file. - +> This example demonstrates how to use the method to get a object from a specified configuration file. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet5"::: + ]]> The method is called from outside a Web application. @@ -304,27 +304,27 @@ Note: If you use a static method that takes a Retrieves the specified configuration section from the current Web application's configuration file. The specified configuration section object, or if the section does not exist, or an internal object if the section is not accessible at run time. - is called from within a Web application, it gets the section from the configuration file selected by the system according to the Web-application configuration hierarchy. - - You could call from within a client application. In this case, it gets the default section from the configuration file selected by the system according to the client configuration hierarchy. Usually, this is the Machine.config file, unless you have a mapped configuration in place. For mapping configuration files, refer to the mapping methods described next. - + is called from within a Web application, it gets the section from the configuration file selected by the system according to the Web-application configuration hierarchy. + + You could call from within a client application. In this case, it gets the default section from the configuration file selected by the system according to the client configuration hierarchy. Usually, this is the Machine.config file, unless you have a mapped configuration in place. For mapping configuration files, refer to the mapping methods described next. + > [!NOTE] -> The method is a run-time operation that acts on the section of the application configuration file located at the current level. The method, however, is not a run-time operation but acts on the specified section obtained through one of the methods for opening the configuration files. - - - -## Examples - The following example shows how to access configuration information with the method. - +> The method is a run-time operation that acts on the section of the application configuration file located at the current level. The method, however, is not a run-time operation but acts on the specified section obtained through one of the methods for opening the configuration files. + + + +## Examples + The following example shows how to access configuration information with the method. + > [!NOTE] -> This example demonstrates how to use the method to get a object from the default configuration file. - +> This example demonstrates how to use the method to get a object from the default configuration file. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet6"::: + ]]> A valid configuration file could not be loaded. @@ -365,19 +365,19 @@ Note: If you use a static method that takes a Opens the machine-configuration file on the current computer as a object to allow read or write operations. A object. - method opens the machine-configuration file on the computer where the application runs. This file is located in the standard build directory %windir%\Microsoft.NET\Framework\version\config. - - - -## Examples - The following example shows how to access configuration information with the method. - + method opens the machine-configuration file on the computer where the application runs. This file is located in the standard build directory %windir%\Microsoft.NET\Framework\version\config. + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet9"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet9"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet9"::: + ]]> A valid configuration file could not be loaded. @@ -408,19 +408,19 @@ Note: If you use a static method that takes a Opens the machine-configuration file on the current computer as a object to allow read or write operations. A object. - method. - + method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet10"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet10"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet10"::: + ]]> A valid configuration file could not be loaded. @@ -453,19 +453,19 @@ Note: If you use a static method that takes a Opens the specified machine-configuration file on the specified server as a object to allow read or write operations. A object. - method. - + method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet11"::: + ]]> A valid configuration file could not be loaded. @@ -506,22 +506,22 @@ Note: If you use a static method that takes a Opens the specified machine-configuration file on the specified server as a object, using the specified security context to allow read or write operations. A object. - [!NOTE] -> The account token is usually retrieved from an instance of the class or through a call to unmanaged code, such as a call to the Windows API `LogonUser`. For more information about calls to unmanaged code, see [Consuming Unmanaged DLL Functions](/dotnet/framework/interop/consuming-unmanaged-dll-functions). - - - -## Examples - The following example shows how to access configuration information with the method. - +> The account token is usually retrieved from an instance of the class or through a call to unmanaged code, such as a call to the Windows API `LogonUser`. For more information about calls to unmanaged code, see [Consuming Unmanaged DLL Functions](/dotnet/framework/interop/consuming-unmanaged-dll-functions). + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet12"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet12"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet12"::: + ]]> Valid values were not supplied for the or parameters. @@ -561,19 +561,19 @@ Note: If you use a static method that takes a Opens the specified machine-configuration file on the specified server as a object, using the specified security context to allow read or write operations. A object. - method. - + method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet13"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet13"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet13"::: + ]]> The or and parameters were invalid. @@ -659,19 +659,19 @@ Note: If you use a static method that takes a Opens the Web-application configuration file as a object using the specified file mapping to allow read or write operations. - @@ -704,26 +704,26 @@ Note: If you use a static method that takes a Opens the specified Web-application configuration file as a object using the specified file mapping and virtual path to allow read or write operations. A object. - object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. - - - -## Examples - The following example shows how to use the method. - + object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. + + + +## Examples + The following example shows how to use the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet21"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet21"::: - - The preceding example uses the following custom method to generate a object. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet21"::: + + The preceding example uses the following custom method to generate a object. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet20"::: - - Refer to for an example that shows how to map a virtual directory hierarchy to a physical one. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet20"::: + + Refer to for an example that shows how to map a virtual directory hierarchy to a physical one. + ]]> A valid configuration file could not be loaded. @@ -759,21 +759,21 @@ Note: If you use a static method that takes a Opens the specified Web application configuration file as a object using the specified file mapping, virtual path, and site name to allow read or write operations. A object. - object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. - - - -## Examples - The following example shows how to use the method. - + object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. + + + +## Examples + The following example shows how to use the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet22"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet22"::: - - Refer to for an example that shows how to map a virtual directory hierarchy to a physical one. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet22"::: + + Refer to for an example that shows how to map a virtual directory hierarchy to a physical one. + ]]> A valid configuration file could not be loaded. @@ -811,21 +811,21 @@ Note: If you use a static method that takes a Opens the specified Web-application configuration file as a object using the specified file mapping, virtual path, site name, and location to allow read or write operations. A object. - object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. - - - -## Examples - The following example shows how to use the method. - + object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. + + + +## Examples + The following example shows how to use the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet23"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet23"::: - - Refer to for an example that shows how to map a virtual directory hierarchy to a physical one. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet23"::: + + Refer to for an example that shows how to map a virtual directory hierarchy to a physical one. + ]]> A valid configuration file could not be loaded. @@ -868,19 +868,19 @@ Note: If you use a static method that takes a Opens the Web-application configuration file as a object using the specified virtual path to allow read or write operations. A object. - object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. - - - -## Examples - The following example shows how to access configuration information with the method. - + object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet14"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet14"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet14"::: + ]]> A valid configuration file could not be loaded. @@ -913,19 +913,19 @@ Note: If you use a static method that takes a Opens the Web-application configuration file as a object using the specified virtual path and site name to allow read or write operations. A object. - object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. - - - -## Examples - The following example shows how to access configuration information with the method. - + object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet15"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet15"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet15"::: + ]]> A valid configuration file could not be loaded. @@ -960,19 +960,19 @@ Note: If you use a static method that takes a Opens the Web-application configuration file as a object using the specified virtual path, site name, and location to allow read or write operations. A object. - object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. - - - -## Examples - The following example shows how to access configuration information with the method. - + object for a resource, your code must have read privileges on all the configuration files from which it inherits settings. To update a configuration file, your code must additionally have write privileges for both the configuration file and the directory in which it exists. + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet16"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet16"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet16"::: + ]]> A valid configuration file could not be loaded. @@ -1009,19 +1009,19 @@ Note: If you use a static method that takes a Opens the Web-application configuration file as a object using the specified virtual path, site name, location, and server to allow read or write operations. A object. - object for a remote resource, your code must have administrative privileges on the remote computer. - - - -## Examples - The following example shows how to access configuration information with the method. - + object for a remote resource, your code must have administrative privileges on the remote computer. + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet17"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet17"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet17"::: + ]]> The server parameter was invalid. @@ -1067,24 +1067,24 @@ Note: If you use a static method that takes a Opens the Web-application configuration file as a object using the specified virtual path, site name, location, server, and security context to allow read or write operations. A object. - [!NOTE] -> The account token is usually retrieved from an instance of the class or through a call to unmanaged code, such as a call to the Windows API `LogonUser`. For more information about calls to unmanaged code, see [Consuming Unmanaged DLL Functions](/dotnet/framework/interop/consuming-unmanaged-dll-functions). - - To obtain the object for a remote resource, your code must have administrative privileges on the remote computer. - - - -## Examples - The following example shows how to use the method to access configuration information. - +> The account token is usually retrieved from an instance of the class or through a call to unmanaged code, such as a call to the Windows API `LogonUser`. For more information about calls to unmanaged code, see [Consuming Unmanaged DLL Functions](/dotnet/framework/interop/consuming-unmanaged-dll-functions). + + To obtain the object for a remote resource, your code must have administrative privileges on the remote computer. + + + +## Examples + The following example shows how to use the method to access configuration information. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet19"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet19"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet19"::: + ]]> The or parameters were invalid. @@ -1128,23 +1128,23 @@ Note: If you use a static method that takes a Opens the Web-application configuration file as a object using the specified virtual path, site name, location, server, and security context to allow read or write operations. A object. - object for a remote resource, your code must have administrative privileges on the remote computer. - - You might need to run the [ASP.NET IIS Registration Tool (Aspnet_regiis.exe)](https://learn.microsoft.com/previous-versions/dotnet/netframework-3.5/k6h9cz8h(v=vs.90)) with the `-config+` option to enable access to the configuration files on the remote computer. - - - -## Examples - The following example shows how to access configuration information with the method. - + object for a remote resource, your code must have administrative privileges on the remote computer. + + You might need to run the [ASP.NET IIS Registration Tool (Aspnet_regiis.exe)](https://learn.microsoft.com/previous-versions/dotnet/netframework-3.5/k6h9cz8h(v=vs.90)) with the `-config+` option to enable access to the configuration files on the remote computer. + + + +## Examples + The following example shows how to access configuration information with the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/CS/WebConfigurationManager.cs" id="Snippet18"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet18"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.WebConfigurationManager/VB/WebConfigurationManager.vb" id="Snippet18"::: + ]]> The or and parameters were invalid. diff --git a/xml/System.Web.DynamicData/ControlFilterExpression.xml b/xml/System.Web.DynamicData/ControlFilterExpression.xml index 5f6779fd17f..8035f4bf592 100644 --- a/xml/System.Web.DynamicData/ControlFilterExpression.xml +++ b/xml/System.Web.DynamicData/ControlFilterExpression.xml @@ -16,33 +16,33 @@ Modifies a database query by using the data key of the item that is selected in a data-bound control. - class that is designed to be used when a page contains two data-bound controls such as a control and a control. One control is the source, where a data key (row) is selected. The other control is the target where the data is displayed based on the selected data key. The target data is obtained by a data source control that executes the query that is defined in the class and that is built by using the selected data key. - - To use the class in a page, you follow these steps: - -- Add the control to the page. - -- Set the `TargetControlID` property of the control to the ID of the target data source control. - -- Add a instance to the control. - -- Set the `ControlID` property of the element to the source data-bound control. - - - -## Examples - The following example shows how to use the class to reference a source data-bound control, where the data key is selected. The control points to a target data source control that obtains data that is filtered by using the selected data key. In the example, the source data-bound control references a parent table and the target data-bound control references a child table. - -``` - - - -``` - + class that is designed to be used when a page contains two data-bound controls such as a control and a control. One control is the source, where a data key (row) is selected. The other control is the target where the data is displayed based on the selected data key. The target data is obtained by a data source control that executes the query that is defined in the class and that is built by using the selected data key. + + To use the class in a page, you follow these steps: + +- Add the control to the page. + +- Set the `TargetControlID` property of the control to the ID of the target data source control. + +- Add a instance to the control. + +- Set the `ControlID` property of the element to the source data-bound control. + + + +## Examples + The following example shows how to use the class to reference a source data-bound control, where the data key is selected. The control points to a target data source control that obtains data that is filtered by using the selected data key. In the example, the source data-bound control references a parent table and the target data-bound control references a child table. + +``` + + + +``` + ]]> @@ -103,25 +103,25 @@ Gets or sets the name of the column that the query is based on. The name of the column that the query is based on. - control treats the selected data key as the primary key of the current table. This is useful in a list-details scenario where source and target data-bound controls operate on data from the same table. - - If you assign a value to the property, the control treats the data key as a foreign key. The value assigned to this property becomes the name of the column that is displayed in the target data-bound control. This is useful in a parent-child scenario where the target data-bound control operates on data from the child table and the source data-bound control operates on data from the parent table. - - - -## Examples - The following example shows how to use the class to set the column that the filter applies to. - -``` - - - -``` - + control treats the selected data key as the primary key of the current table. This is useful in a list-details scenario where source and target data-bound controls operate on data from the same table. + + If you assign a value to the property, the control treats the data key as a foreign key. The value assigned to this property becomes the name of the column that is displayed in the target data-bound control. This is useful in a parent-child scenario where the target data-bound control operates on data from the child table and the source data-bound control operates on data from the parent table. + + + +## Examples + The following example shows how to use the class to set the column that the filter applies to. + +``` + + + +``` + ]]> @@ -155,23 +155,23 @@ Gets or sets the ID of the source data-bound control. The ID of the source data-bound control. - property identifies the source data-bound control from which the data key is selected. The selected data key is then used by the control to build the query. - - - -## Examples - The following example shows how to use the class to set the ID of the source data-bound control. - -``` - - - -``` - + property identifies the source data-bound control from which the data key is selected. The selected data key is then used by the control to build the query. + + + +## Examples + The following example shows how to use the class to set the ID of the source data-bound control. + +``` + + + +``` + ]]> @@ -199,11 +199,11 @@ Gets the data source query to modify. The object that represents the data source query that is modified by this instance. - method modifies the query based on the selected data key of the source data-bound control. - + method modifies the query based on the selected data key of the source data-bound control. + ]]> diff --git a/xml/System.Web.DynamicData/DynamicControl.xml b/xml/System.Web.DynamicData/DynamicControl.xml index f0259336fed..152c3f0f90f 100644 --- a/xml/System.Web.DynamicData/DynamicControl.xml +++ b/xml/System.Web.DynamicData/DynamicControl.xml @@ -52,11 +52,11 @@ The control provides functionality that is similar to that of the field. However, because the control is only used inside templates, it gives you more flexibility in controlling how the data is displayed since you can add other HTML elements around the field. When you use a control, you can take advantage of the following Dynamic Data features: -- Automatically rendering the proper control for a field by using field templates, based on the data type. The field templates can be globally modified for the entire application. +- Automatically rendering the proper control for a field by using field templates, based on the data type. The field templates can be globally modified for the entire application. -- Providing built-in data validation based on the database schema. You can also add validation types by customizing the data model. +- Providing built-in data validation based on the database schema. You can also add validation types by customizing the data model. -- Customizing data rendering for individual fields by using attributes in the data model or by using the property. +- Customizing data rendering for individual fields by using attributes in the data model or by using the property. To specify the field to display in a control, set the property to the field name. You can apply a custom formatting string to the field value by setting the property. By default, the formatting string is applied to field values only when the data-bound control is in read-only mode. To apply the formatting string to values displayed while the data-bound control is in edit mode, set the property to `true`. If a field value is `null`, you can display a custom caption by setting the property. The control can also automatically convert empty string ("") field values to null values by setting the property to `true`. diff --git a/xml/System.Web.DynamicData/DynamicDataManager.xml b/xml/System.Web.DynamicData/DynamicDataManager.xml index e6820ff7100..dbd1ac4b68b 100644 --- a/xml/System.Web.DynamicData/DynamicDataManager.xml +++ b/xml/System.Web.DynamicData/DynamicDataManager.xml @@ -51,62 +51,62 @@ Enables dynamic behavior for ASP.NET Web controls that support ASP.NET Dynamic Data. - -## Introduction - The control provides the glue between the data-bound control, the data source control, and Dynamic Data in the following ways: - -- Sets a field generator for the data-bound control to create the correct column set when is set to `true`. The data-bound control can be a control, a control, or a control. - -- Sets the context type and table name for the data source control. The data source control for LINQ-to-SQL is . The data source control for the ADO Entity Framework is . - -- Sets the to `true` for the data source if there is no Where clause. - -- Expands the special dynamic parameters such as into parameters that the data source can consume. - -- If the LINQ-to-SQL property is set to `true`, loads the foreign keys. - - The control must be included on a page in order for data controls to use Dynamic Data support. The markup for the control must precede the markup for any controls that use Dynamic Data support. - + +## Introduction + The control provides the glue between the data-bound control, the data source control, and Dynamic Data in the following ways: + +- Sets a field generator for the data-bound control to create the correct column set when is set to `true`. The data-bound control can be a control, a control, or a control. + +- Sets the context type and table name for the data source control. The data source control for LINQ-to-SQL is . The data source control for the ADO Entity Framework is . + +- Sets the to `true` for the data source if there is no Where clause. + +- Expands the special dynamic parameters such as into parameters that the data source can consume. + +- If the LINQ-to-SQL property is set to `true`, loads the foreign keys. + + The control must be included on a page in order for data controls to use Dynamic Data support. The markup for the control must precede the markup for any controls that use Dynamic Data support. + > [!NOTE] -> A control cannot be put inside an control. - - -## Declarative Syntax - -``` - - -``` - - - -## Examples - The following example shows how to use a control to enable dynamic behavior for an instance of the control. - +> A control cannot be put inside an control. + + +## Declarative Syntax + +``` + + +``` + + + +## Examples + The following example shows how to use a control to enable dynamic behavior for an instance of the control. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataManager/cs/List.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataManager/vb/List.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataManager/vb/List.aspx" id="Snippet1"::: + ]]> @@ -168,11 +168,11 @@ if foreign keys are automatically loaded; otherwise, . - @@ -210,11 +210,11 @@ Gets the property that is generated by ASP.NET. The property that is generated by ASP.NET. - - + + ]]> @@ -294,29 +294,29 @@ Gets the list of data-control references in the control. The list of data-control references in the control. - property. - -``` - - - - - - - - - - - - - - - -``` - + property. + +``` + + + + + + + + + + + + + + + +``` + ]]> @@ -408,19 +408,19 @@ The data control to register. Registers a control with the control. - control in the `Page_Init` method of an ASP.NET Web page. - + control in the `Page_Init` method of an ASP.NET Web page. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataManager/cs/List.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataManager/vb/List.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataManager/vb/List.aspx" id="Snippet1"::: + ]]> @@ -451,11 +451,11 @@ to use the primary key to set the selected item; otherwise, the selected item is not set. Registers a control with the control. - @@ -495,11 +495,11 @@ if the is visible; otherwise . - is not a visible run-time control. The property is only used at design time in a designer. - + is not a visible run-time control. The property is only used at design time in a designer. + ]]> diff --git a/xml/System.Web.DynamicData/DynamicField.xml b/xml/System.Web.DynamicData/DynamicField.xml index 2f3d0f1d99c..ce36c47d2b6 100644 --- a/xml/System.Web.DynamicData/DynamicField.xml +++ b/xml/System.Web.DynamicData/DynamicField.xml @@ -49,11 +49,11 @@ The class provides functionality that resembles that of the class. However, because a object is used in Dynamic Data applications, you can take advantage of the following Dynamic Data features: -- Automatically rendering the proper control for a field by using field templates, based on the data type. The field templates can be globally modified for the entire application. +- Automatically rendering the proper control for a field by using field templates, based on the data type. The field templates can be globally modified for the entire application. -- Providing built-in data validation based on the database schema. You can also add validation types by customizing the data model. +- Providing built-in data validation based on the database schema. You can also add validation types by customizing the data model. -- Customizing data rendering for individual fields by using attributes in the data model or by using the property. +- Customizing data rendering for individual fields by using attributes in the data model or by using the property. The object renders each field by using a `DynamicControl` control. To specify the data field to display in a object, set the property to the field name. You can apply a custom formatting string to the field value by setting the property. By default the formatting string is applied to field values only when the data-bound control is in read-only mode. To apply the formatting string to values displayed while the data-bound control is in edit mode, set the property to `true`. If a field value is `null`, you can display a custom caption by setting the property. The object can also automatically convert empty string ("") field values to null values by setting the property to `true`. diff --git a/xml/System.Web.DynamicData/DynamicFilter.xml b/xml/System.Web.DynamicData/DynamicFilter.xml index cf65fd2ea63..eac77d7442f 100644 --- a/xml/System.Web.DynamicData/DynamicFilter.xml +++ b/xml/System.Web.DynamicData/DynamicFilter.xml @@ -25,96 +25,96 @@ Displays the UI for filtering table rows using a specified column. - -## Introduction - The control is used in a page markup to generate the UI for filtering table rows. Dynamic Data creates the UI by using the default filter templates that are in the ~\DynamicData\Filters folder. These templates support foreign-key, Boolean, and enumeration column types. - - The following table shows some of the tasks you can perform. - -|Scenario|Description| -|--------------|-----------------| -|Specify the column to use for table row filtering.|Use the property to specify the column to use for table row filtering.| -|Specify the name of the filter template to use to create the UI.|Use the property to specify the name of the filter template to use to create the UI.| -|Perform custom operations before the UI is rendered.|Use the to perform custom operations before the UI is rendered.| - - You can specify the filter template to use in the following ways: - -- By using the property in page markup. This approach is a presentation-layer customization, which is independent of the schema (database), and which applies to a single page. - -- By using the attribute in the model. This approach is a data-layer customization, which depends on the specific schema (database), and which applies to the entire application. - - If you use both approaches, the filter template that is specified in the markup takes precedence over the template that is specified in the data model. - - -## Class Context - The control is designed to work with the control. The control is referenced by a instance inside a object in the page markup. - - The following figure shows the steps that Dynamic Data follows in order to implement table row filtering by a foreign-key column. - - ![Dynamic Data Query Elements](~/add/media/dynamic-dataquery.png "Dynamic Data Query Elements") - -1. The control passes the selected value to the control. - -2. The control uses the value to create the query filtering information. It then passes this information to the data source control. - -3. The data source control passes the filtering query information to the data source provider. - -4. The data source provider passes the query to the database. - -5. The database returns the filtered table rows. - -6. The data source provider sends this data back to the data source control. - -7. The data source control passes the filtered table rows to the data-bound control for display. - - -## Declarative Syntax - -``` - -``` - - - -## Examples - A Visual Studio project with source code is available at this location: [Download](https://go.microsoft.com/fwlink/?LinkId=168914). - - The following examples use the default ForeignKey.ascx filter template to create the UI for filtering the Products table rows by the ProductCategory foreign-key column. When the user selects a ProductCategory value, only the rows that contain that value are displayed. - - The example requires the following: - -- A Dynamic Data Web site or a Dynamic Data Web application. This enables you to create the `AdventureWorksLTDataContext` data context for the database and to create the classes for the tables to access. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. - + +## Introduction + The control is used in a page markup to generate the UI for filtering table rows. Dynamic Data creates the UI by using the default filter templates that are in the ~\DynamicData\Filters folder. These templates support foreign-key, Boolean, and enumeration column types. + + The following table shows some of the tasks you can perform. + +|Scenario|Description| +|--------------|-----------------| +|Specify the column to use for table row filtering.|Use the property to specify the column to use for table row filtering.| +|Specify the name of the filter template to use to create the UI.|Use the property to specify the name of the filter template to use to create the UI.| +|Perform custom operations before the UI is rendered.|Use the to perform custom operations before the UI is rendered.| + + You can specify the filter template to use in the following ways: + +- By using the property in page markup. This approach is a presentation-layer customization, which is independent of the schema (database), and which applies to a single page. + +- By using the attribute in the model. This approach is a data-layer customization, which depends on the specific schema (database), and which applies to the entire application. + + If you use both approaches, the filter template that is specified in the markup takes precedence over the template that is specified in the data model. + + +## Class Context + The control is designed to work with the control. The control is referenced by a instance inside a object in the page markup. + + The following figure shows the steps that Dynamic Data follows in order to implement table row filtering by a foreign-key column. + + ![Dynamic Data Query Elements](~/add/media/dynamic-dataquery.png "Dynamic Data Query Elements") + +1. The control passes the selected value to the control. + +2. The control uses the value to create the query filtering information. It then passes this information to the data source control. + +3. The data source control passes the filtering query information to the data source provider. + +4. The data source provider passes the query to the database. + +5. The database returns the filtered table rows. + +6. The data source provider sends this data back to the data source control. + +7. The data source control passes the filtered table rows to the data-bound control for display. + + +## Declarative Syntax + +``` + +``` + + + +## Examples + A Visual Studio project with source code is available at this location: [Download](https://go.microsoft.com/fwlink/?LinkId=168914). + + The following examples use the default ForeignKey.ascx filter template to create the UI for filtering the Products table rows by the ProductCategory foreign-key column. When the user selects a ProductCategory value, only the rows that contain that value are displayed. + + The example requires the following: + +- A Dynamic Data Web site or a Dynamic Data Web application. This enables you to create the `AdventureWorksLTDataContext` data context for the database and to create the classes for the tables to access. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/cs/dynamicfilter.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/vb/dynamicfilter.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/vb/dynamicfilter.aspx" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/cs/dynamicfilter.aspx.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/vb/dynamicfilter.aspx.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/vb/dynamicfilter.aspx.vb" id="Snippet2"::: + ]]> @@ -136,11 +136,11 @@ Initializes a new instance of the class. - constructor directly. Instead, you use the class in page markup and the class is initialized when the page is loaded. - + constructor directly. Instead, you use the class in page markup and the class is initialized when the page is loaded. + ]]> @@ -170,11 +170,11 @@ Gets or sets the table column to use for filtering. The table column to use for filtering. - @@ -208,16 +208,16 @@ Gets or sets the name of the column to use for table row filtering. The name of the column used for table row filtering. - -``` - + +``` + ]]> @@ -251,19 +251,19 @@ Occurs when the user select a value for the foreign key. - event is raised when the user selects a foreign-key value and before the new value is rendered. This enables you to provide an event-handling method that can perform custom operations, such as custom paging. - - - -## Examples - The following example shows how to handle a filter-changed event. The handler resets the page index before the filtered rows are displayed. - + event is raised when the user selects a foreign-key value and before the new value is rendered. This enables you to provide an event-handling method that can perform custom operations, such as custom paging. + + + +## Examples + The following example shows how to handle a filter-changed event. The handler resets the page index before the filtered rows are displayed. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/cs/dynamicfilter.aspx.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/vb/dynamicfilter.aspx.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicfilter/vb/dynamicfilter.aspx.vb" id="Snippet3"::: + ]]> @@ -301,11 +301,11 @@ Gets the filter template that is associated with the current instance of this control. The filter template that is associated with the current instance of this control. - @@ -339,27 +339,27 @@ Gets or sets the name of the filter template that is used to create the UI. The name of the filter template. - property lets you specify the filter template to create the UI for table row filtering. You can specify the filter template to use in the following ways: - -- By using the property in page markup. This approach is a presentation-layer customization, which is independent of the schema (database) and which applies to a single page. - -- By using the attribute in the model. This approach is a data-layer customization, which depends on the specific schema (database) and which applies to the entire application. - - If you use both approaches, the filter template specified in the markup takes precedence over the template specified in the data model. - - - -## Examples - The following example shows how to specify the filter template in markup to use for filtering. - -``` - -``` - + property lets you specify the filter template to create the UI for table row filtering. You can specify the filter template to use in the following ways: + +- By using the property in page markup. This approach is a presentation-layer customization, which is independent of the schema (database) and which applies to a single page. + +- By using the attribute in the model. This approach is a data-layer customization, which depends on the specific schema (database) and which applies to the entire application. + + If you use both approaches, the filter template specified in the markup takes precedence over the template specified in the data model. + + + +## Examples + The following example shows how to specify the filter template in markup to use for filtering. + +``` + +``` + ]]> @@ -386,11 +386,11 @@ The object that receives the server control content. Sends server control content to the specified object. - diff --git a/xml/System.Web.DynamicData/DynamicFilterExpression.xml b/xml/System.Web.DynamicData/DynamicFilterExpression.xml index 276b59b0999..d261c0dca6b 100644 --- a/xml/System.Web.DynamicData/DynamicFilterExpression.xml +++ b/xml/System.Web.DynamicData/DynamicFilterExpression.xml @@ -16,37 +16,37 @@ Modifies a database query by using a value from specified filter control. - class enables you to modify a database query using the values that are assigned in a control. This control delegates the task of building of the query to a specialized control such as control or control. - - The filter controls in turn delegate the building of the query to the filter template that they reference. The query is then executed by the data source control that is referenced by the control. - - To use the class in a page, you follow these steps: - -- Add a control to the page. - -- Set the `TargetControlID` property of the control to reference the data source control. - -- Add a object as a child of the control. - -- Set the `ControlID` property of the object to reference the filter control. - - In the previous steps it is assumed that the related filter controls, data-bound controls, and data source control are defined in the page. - - - -## Examples - The following example shows how to use the control to select a filter template in a page. The filter template is selected by the control that is identified by control through its `ControlID` property. - -``` - - - -``` - + class enables you to modify a database query using the values that are assigned in a control. This control delegates the task of building of the query to a specialized control such as control or control. + + The filter controls in turn delegate the building of the query to the filter template that they reference. The query is then executed by the data source control that is referenced by the control. + + To use the class in a page, you follow these steps: + +- Add a control to the page. + +- Set the `TargetControlID` property of the control to reference the data source control. + +- Add a object as a child of the control. + +- Set the `ControlID` property of the object to reference the filter control. + + In the previous steps it is assumed that the related filter controls, data-bound controls, and data source control are defined in the page. + + + +## Examples + The following example shows how to use the control to select a filter template in a page. The filter template is selected by the control that is identified by control through its `ControlID` property. + +``` + + + +``` + ]]> @@ -106,25 +106,25 @@ Gets or sets the filter control identifier. The filter control identifier. - class to select the filter control to which it delegates the task of building of the query, which is in turn executed by the data source control. - - The filter control delegates the task of building of the query to the filter template it references. The query is then executed by the data source control that is referenced by the control. - - - -## Examples - The following example shows how to use the class to select a filter control in a page. - -``` - - - -``` - + class to select the filter control to which it delegates the task of building of the query, which is in turn executed by the data source control. + + The filter control delegates the task of building of the query to the filter template it references. The query is then executed by the data source control that is referenced by the control. + + + +## Examples + The following example shows how to use the class to select a filter control in a page. + +``` + + + +``` + ]]> @@ -154,11 +154,11 @@ Gets the modified query using the current filter value. The data source query that is modified by using the current value that is contained in the instance. - method delegates the task of building of the query to the filter template referenced by the filter control that is specified by the property. - + method delegates the task of building of the query to the filter template referenced by the filter control that is specified by the property. + ]]> diff --git a/xml/System.Web.DynamicData/DynamicHyperLink.xml b/xml/System.Web.DynamicData/DynamicHyperLink.xml index ba067a0b80f..25ea9f41b35 100644 --- a/xml/System.Web.DynamicData/DynamicHyperLink.xml +++ b/xml/System.Web.DynamicData/DynamicHyperLink.xml @@ -30,56 +30,56 @@ Displays links to table actions such as edit, delete, and insert. - -## Introduction - The control creates links that are based on the table actions that are enabled by Dynamic Data. These actions are defined in the Global.asax file as default routing rules. The rules are associated with default page templates such as Edit.aspx, List.aspx, and so on. When the user clicks the link, a page is displayed that enables the user to perform the action that is specified by the link. - - The control enables you to create the following links: - -- Table row data-bound links, which are for data-item specific action links such as "Edit" and "Details". Dynamic Data infers the table and the primary key from the current row. An example of these links is in the Edit.aspx page of a Dynamic Data Web site. - -- Links to objects, which are specific action links such as "List" and "Insert" that in turn point to objects such as tables. An example of these links is in the Default.aspx page of a Dynamic Data Web site. - -- Unbound links, which create table action links outside a data-bound control. An example of these links is in the Insert link in the List.aspx page template of a Dynamic Data Web site. Because these links are not part of a data-bound control that has a defined data context, you must specify the table to access and the action to perform. If you specify "Edit" or "Details" as the action, you must also provide the primary key. - - The control supports additional markup attributes then can be forwarded to the routing engine when the link is activated. This can be useful when you want to have an item-specific link from a non-data-bound context. - - -## Declarative Syntax - -``` - -``` - - - -## Examples - A Visual Studio project with source code is available to accompany this topic: [Scaffolding Dynamic Data](https://go.microsoft.com/fwlink/?LinkId=168914). - - The following examples show how to create controls for data rows, for a collection, and to perform the specified action. - + +## Introduction + The control creates links that are based on the table actions that are enabled by Dynamic Data. These actions are defined in the Global.asax file as default routing rules. The rules are associated with default page templates such as Edit.aspx, List.aspx, and so on. When the user clicks the link, a page is displayed that enables the user to perform the action that is specified by the link. + + The control enables you to create the following links: + +- Table row data-bound links, which are for data-item specific action links such as "Edit" and "Details". Dynamic Data infers the table and the primary key from the current row. An example of these links is in the Edit.aspx page of a Dynamic Data Web site. + +- Links to objects, which are specific action links such as "List" and "Insert" that in turn point to objects such as tables. An example of these links is in the Default.aspx page of a Dynamic Data Web site. + +- Unbound links, which create table action links outside a data-bound control. An example of these links is in the Insert link in the List.aspx page template of a Dynamic Data Web site. Because these links are not part of a data-bound control that has a defined data context, you must specify the table to access and the action to perform. If you specify "Edit" or "Details" as the action, you must also provide the primary key. + + The control supports additional markup attributes then can be forwarded to the routing engine when the link is activated. This can be useful when you want to have an item-specific link from a non-data-bound context. + + +## Declarative Syntax + +``` + +``` + + + +## Examples + A Visual Studio project with source code is available to accompany this topic: [Scaffolding Dynamic Data](https://go.microsoft.com/fwlink/?LinkId=168914). + + The following examples show how to create controls for data rows, for a collection, and to perform the specified action. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/dynamicdata.dynamichyperlinks/cs/dynamicdatadynamichyperlink.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/dynamicdata.dynamichyperlinks/vb/dynamicdatadynamichyperlink.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/dynamicdata.dynamichyperlinks/vb/dynamicdatadynamichyperlink.aspx" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/dynamicdata.dynamichyperlinks/cs/dynamicdatadynamichyperlink.aspx.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/dynamicdata.dynamichyperlinks/vb/dynamicdatadynamichyperlink.aspx.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/dynamicdata.dynamichyperlinks/vb/dynamicdatadynamichyperlink.aspx.vb" id="Snippet2"::: + ]]> How to: Link to Table Actions Using Hyperlinks in Dynamic Data @@ -135,11 +135,11 @@ Gets or sets the action that is associated with the link. The action that is associated with the link. - @@ -174,11 +174,11 @@ Gets or sets the data context for the data model that the link applies to. The data context that applies to the link. - control is used in a data-bound control, the default value is the same as the one that is used by the data-bound control. - + control is used in a data-bound control, the default value is the same as the one that is used by the data-bound control. + ]]> @@ -212,11 +212,11 @@ Gets or sets the link display text. The link display text. - @@ -243,17 +243,17 @@ The event data. Raises the event. - control that it should perform any logic for binding data. - + control that it should perform any logic for binding data. + ]]> - An attempt was made to set the table and data context during data binding. - - -or- - + An attempt was made to set the table and data context during data binding. + + -or- + An attempt has been made to bind to a data field. @@ -280,11 +280,11 @@ The event data. Raises the event. - control that it should perform any necessary pre-rendering steps before the control saves view state and renders content. - + control that it should perform any necessary pre-rendering steps before the control saves view state and renders content. + ]]> The object cannot determine the data table to link to. diff --git a/xml/System.Web.DynamicData/DynamicQueryStringParameter.xml b/xml/System.Web.DynamicData/DynamicQueryStringParameter.xml index dc8c597e1f0..83cd0f3a92d 100644 --- a/xml/System.Web.DynamicData/DynamicQueryStringParameter.xml +++ b/xml/System.Web.DynamicData/DynamicQueryStringParameter.xml @@ -21,25 +21,25 @@ Automatically generates a collection of parameters that is used to create the clause for the data source control by retrieving query string values. - class is used by pages that are using ASP.NET Dynamic Data features. The class will generate a collection of objects for the primary keys, foreign keys, and Boolean columns of a table by retrieving query string values. - - For primary keys, you can simply add a object without supplying any other parameters. Dynamic Data will generate the parameters for the primary key or keys. For foreign keys or Boolean columns, you must set the property to the name of the column you want to filter. - - In order to use the class, you must add a control to the page and you must register the data-bound control with the control by using the method. - - See a run-time code example of this feature: [Run](https://go.microsoft.com/fwlink/?LinkId=120736&sref=System.Web.DynamicData.DynamicQueryStringParameter). - - - -## Examples - The following example shows how to use the object as filter when displaying data in a control. The control contains a object that creates a link that sets the query string value by using the foreign key value. - + class is used by pages that are using ASP.NET Dynamic Data features. The class will generate a collection of objects for the primary keys, foreign keys, and Boolean columns of a table by retrieving query string values. + + For primary keys, you can simply add a object without supplying any other parameters. Dynamic Data will generate the parameters for the primary key or keys. For foreign keys or Boolean columns, you must set the property to the name of the column you want to filter. + + In order to use the class, you must add a control to the page and you must register the data-bound control with the control by using the method. + + See a run-time code example of this feature: [Run](https://go.microsoft.com/fwlink/?LinkId=120736&sref=System.Web.DynamicData.DynamicQueryStringParameter). + + + +## Examples + The following example shows how to use the object as filter when displaying data in a control. The control contains a object that creates a link that sets the query string value by using the foreign key value. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.DynamicQueryStringParameter/CS/Default.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.DynamicQueryStringParameter/VB/Default.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.DynamicQueryStringParameter/VB/Default.aspx" id="Snippet1"::: + ]]> @@ -100,15 +100,15 @@ Throws an exception in all cases. Throws an exception in all cases. - method is invoked by ASP.NET, it throws an T:System.InvalidOperationException exception in all cases. This happens because one of the following conditions are met: - -- The page does not contain a control. - -- The data-bound control is not registered for use by the control. - + method is invoked by ASP.NET, it throws an T:System.InvalidOperationException exception in all cases. This happens because one of the following conditions are met: + +- The page does not contain a control. + +- The data-bound control is not registered for use by the control. + ]]> @@ -141,11 +141,11 @@ Returns a collection of objects that are automatically generated for the columns of a table by retrieving query string values. A collection of parameters that are automatically generated for the columns of a table by retrieving query string values. - class will generate a collection of objects for the primary keys, foreign keys and Boolean columns of a table by retrieving query string values. - + class will generate a collection of objects for the primary keys, foreign keys and Boolean columns of a table by retrieving query string values. + ]]> diff --git a/xml/System.Web.DynamicData/DynamicRouteExpression.xml b/xml/System.Web.DynamicData/DynamicRouteExpression.xml index 1325e00c975..b16cf4c8ab8 100644 --- a/xml/System.Web.DynamicData/DynamicRouteExpression.xml +++ b/xml/System.Web.DynamicData/DynamicRouteExpression.xml @@ -16,42 +16,42 @@ Gets the primary key from the routing information in order to perform data filtering. - class is used with the control in page markup. The class gets the primary key from the routing information that is contained in a Web request. The control then uses the key in a `Where` clause. This modifies the query for the data source, which then returns table rows filtered by the key. - - You can also filter data by using a foreign key that you specify using the property. - - -## Declarative Syntax - -``` - -``` - - - -## Examples - A Visual Studio project with source code is available to accompany this topic: [Scaffolding Dynamic Data](https://go.microsoft.com/fwlink/?LinkId=168914). - - The following example shows a custom List.aspx page template for the Products table. It uses the property to specify the ProductCategory foreign key for filtering the Products rows. - - The custom List.aspx page displays a column that contains links of the categories that are contained by the ProductCategory foreign-key column. When the user clicks one of these links, the List.aspx page displays only the rows that contain the selected category. - - The example requires the following: - -- A Dynamic Data Web site. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](https://msdn.microsoft.com/library/1564aef2-9103-436a-9806-c8ad7abd616a). - -- The AdventureWorksLT sample database. For more information, see [How to: Connect to the AdventureWorksLT Database using an .MDF File](https://msdn.microsoft.com/library/d34ffbac-607d-40f1-b088-0a3304ea032b). - + class is used with the control in page markup. The class gets the primary key from the routing information that is contained in a Web request. The control then uses the key in a `Where` clause. This modifies the query for the data source, which then returns table rows filtered by the key. + + You can also filter data by using a foreign key that you specify using the property. + + +## Declarative Syntax + +``` + +``` + + + +## Examples + A Visual Studio project with source code is available to accompany this topic: [Scaffolding Dynamic Data](https://go.microsoft.com/fwlink/?LinkId=168914). + + The following example shows a custom List.aspx page template for the Products table. It uses the property to specify the ProductCategory foreign key for filtering the Products rows. + + The custom List.aspx page displays a column that contains links of the categories that are contained by the ProductCategory foreign-key column. When the user clicks one of these links, the List.aspx page displays only the rows that contain the selected category. + + The example requires the following: + +- A Dynamic Data Web site. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](https://msdn.microsoft.com/library/1564aef2-9103-436a-9806-c8ad7abd616a). + +- The AdventureWorksLT sample database. For more information, see [How to: Connect to the AdventureWorksLT Database using an .MDF File](https://msdn.microsoft.com/library/d34ffbac-607d-40f1-b088-0a3304ea032b). + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.dynamicrouteexpression/cs/list.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicrouteexpression/vb/list.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicrouteexpression/vb/list.aspx" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.dynamicrouteexpression/cs/list.aspx.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicrouteexpression/vb/list.aspx.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.dynamicrouteexpression/vb/list.aspx.vb" id="Snippet3"::: + ]]> @@ -71,11 +71,11 @@ Initializes a new instance of the class. - constructor. Instead, you use the class in page markup and the class is initialized when the page is loaded. - + constructor. Instead, you use the class in page markup and the class is initialized when the page is loaded. + ]]> @@ -113,23 +113,23 @@ Gets or sets the name of a column that contains a foreign key that is used to query the data source. The name of the foreign-key column. - property represents a foreign key. This key is used to modify the query for the data source. - - - -## Examples - The following example shows how to specify the ProductCategory foreign-key column for filtering the products to display. This example is part of the larger example that is provided for the class. - -``` - - - -``` - + property represents a foreign key. This key is used to modify the query for the data source. + + + +## Examples + The following example shows how to specify the ProductCategory foreign-key column for filtering the products to display. This example is part of the larger example that is provided for the class. + +``` + + + +``` + ]]> @@ -157,11 +157,11 @@ Gets the query from the data source. An instance of the modified query. - diff --git a/xml/System.Web.DynamicData/FieldTemplateUserControl.xml b/xml/System.Web.DynamicData/FieldTemplateUserControl.xml index 16e311a80d2..87a9f10ec16 100644 --- a/xml/System.Web.DynamicData/FieldTemplateUserControl.xml +++ b/xml/System.Web.DynamicData/FieldTemplateUserControl.xml @@ -24,76 +24,76 @@ Represents the base class for all field template controls. - , the class that enables access to data fields, data columns, and metadata in data models. Dynamic Data projects provide field templates by default. You can modify the field templates provided by default or create custom field templates. - - This class inherits from the Class. - - - -## Examples - The following code example creates a field template that displays data fields that have a many-to-one relationship and renders a control that redirects the user to the relationship page. - - The following example shows the code file for the ForeignKey.ascx user control. - -```vb -Public Partial Class ForeignKeyField - Inherits System.Web.DynamicData.FieldTemplateUserControl - - Protected Function GetDisplayString() As String - Return FormatFieldValue( _ - ForeignKeyColumn.ParentTable.GetDisplayString(FieldValue)) - End Function - - Public Overloads Overrides ReadOnly Property DataControl() As Control - Get - Return HyperLink1 - End Get - End Property -End Class -``` - -```csharp -public partial class ForeignKeyField : - System.Web.DynamicData.FieldTemplateUserControl -{ - protected string GetDisplayString() - { - Return FormatFieldValue(ForeignKeyColumn.ParentTable.GetDisplayString(FieldValue)); - - public override Control DataControl - { - get - { - return HyperLink1; - } -} -``` - - The following example shows the ForeignKey.aspx file. - -```vb -<%@ Control Language="VB" CodeFile="ForeignKey.ascx.vb" Inherits="ForeignKeyField" %> - - -``` - -```csharp -<%@ Control Language="C#" CodeFile="ForeignKey.ascx.cs" Inherits="ForeignKeyField" %> - - -``` - - To compile the example code, you need the following: - -- Visual Studio 2010 or Visual Web Developer 2010 Express. - -- A Dynamic Data Web site. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](https://msdn.microsoft.com/library/1564aef2-9103-436a-9806-c8ad7abd616a). - + , the class that enables access to data fields, data columns, and metadata in data models. Dynamic Data projects provide field templates by default. You can modify the field templates provided by default or create custom field templates. + + This class inherits from the Class. + + + +## Examples + The following code example creates a field template that displays data fields that have a many-to-one relationship and renders a control that redirects the user to the relationship page. + + The following example shows the code file for the ForeignKey.ascx user control. + +```vb +Public Partial Class ForeignKeyField + Inherits System.Web.DynamicData.FieldTemplateUserControl + + Protected Function GetDisplayString() As String + Return FormatFieldValue( _ + ForeignKeyColumn.ParentTable.GetDisplayString(FieldValue)) + End Function + + Public Overloads Overrides ReadOnly Property DataControl() As Control + Get + Return HyperLink1 + End Get + End Property +End Class +``` + +```csharp +public partial class ForeignKeyField : + System.Web.DynamicData.FieldTemplateUserControl +{ + protected string GetDisplayString() + { + Return FormatFieldValue(ForeignKeyColumn.ParentTable.GetDisplayString(FieldValue)); + + public override Control DataControl + { + get + { + return HyperLink1; + } +} +``` + + The following example shows the ForeignKey.aspx file. + +```vb +<%@ Control Language="VB" CodeFile="ForeignKey.ascx.vb" Inherits="ForeignKeyField" %> + + +``` + +```csharp +<%@ Control Language="C#" CodeFile="ForeignKey.ascx.cs" Inherits="ForeignKeyField" %> + + +``` + + To compile the example code, you need the following: + +- Visual Studio 2010 or Visual Web Developer 2010 Express. + +- A Dynamic Data Web site. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](https://msdn.microsoft.com/library/1564aef2-9103-436a-9806-c8ad7abd616a). + ]]> ASP.NET Dynamic Data Scaffolding @@ -147,11 +147,11 @@ public partial class ForeignKeyField : Gets the URL that links to the page that displays the list of children entities and allows the path to be overridden. The URL that links the displayed page to the children page. - , except that it allows the path part of the URL to be overridden. This method is used if the pages are not located in the DynamicData\CustomPages folder of the Dynamic Data project. This method applies to Children columns only. - + , except that it allows the path part of the URL to be overridden. This method is used if the pages are not located in the DynamicData\CustomPages folder of the Dynamic Data project. This method applies to Children columns only. + ]]> @@ -180,11 +180,11 @@ public partial class ForeignKeyField : Get the URL that links the current page to the page that displays the details of the foreign key entity and allows the path to be overridden. The URL that links to the page that displays the details of the foreign key page. - except that it allows the path of the URL to be overridden. This property is used if the page is not located in the DynamicData\CustomPages folder your the Dynamic Data project. - + except that it allows the path of the URL to be overridden. This property is used if the page is not located in the DynamicData\CustomPages folder your the Dynamic Data project. + ]]> @@ -215,11 +215,11 @@ public partial class ForeignKeyField : Gets the object associated with a field template. A column that represents a one-to-many relationship. - to a . If the class is not a children column, this property throws an exception. - + to a . If the class is not a children column, this property throws an exception. + ]]> @@ -246,11 +246,11 @@ public partial class ForeignKeyField : Gets the URL that links to a page that displays a list of children entities. The URL that links the displayed page to the children entities. - @@ -335,11 +335,11 @@ public partial class ForeignKeyField : Gets either an input value or based on and . The converted value. - property and property which can be set via metadata or the class or . - + property and property which can be set via metadata or the class or . + ]]> @@ -397,11 +397,11 @@ public partial class ForeignKeyField : The value to save. Saves the value of foreign keys. - property of a drop down list. - + property of a drop down list. + ]]> @@ -429,11 +429,11 @@ public partial class ForeignKeyField : The dictionary that contains all the new values. Provides dictionary access to all data in the current row. - method. - + method. + ]]> @@ -496,11 +496,11 @@ public partial class ForeignKeyField : Gets the string representation of the value of a column in the current row when the row is in edit mode. The value of the column in the row that is edited. - @@ -585,11 +585,11 @@ public partial class ForeignKeyField : Gets the that is associated with a foreign key column. A column that represents a many-to-one relationship. - to a . The class throws an exception if is not a foreign key column. - + to a . The class throws an exception if is not a foreign key column. + ]]> If the is not a foreign key column. @@ -615,11 +615,11 @@ public partial class ForeignKeyField : Get the URL that links the current page to the page that displays the details of the foreign key entity. The URL that links to the details of the foreign key data. - @@ -728,11 +728,11 @@ public partial class ForeignKeyField : Returns the string representation of the column's value. If the column's current value is a foreign-key column or an enumeration column, a string representation of the selected value; otherwise, . - method is used to return a string representation of foreign-key or enumeration column types. - + method is used to return a string representation of foreign-key or enumeration column types. + ]]> @@ -792,11 +792,11 @@ public partial class ForeignKeyField : The attribute to ignore. Allows a to ignore a specific type of model validation attribute. - to ignore a specific type of model Validation attributes. This method is called when the attribute type is already handled by an ASP.NET validation controls. Without this call, the validation can occur two times, resulting in a duplicate error message. - + to ignore a specific type of model Validation attributes. This method is called when the attribute type is already handled by an ASP.NET validation controls. Without this call, the validation can occur two times, resulting in a duplicate error message. + ]]> @@ -855,11 +855,11 @@ public partial class ForeignKeyField : Gets the mode a field template uses. The current mode of the field template. - that field templates uses include `Insert`, `Edit`, and `ReadOnly`. - + that field templates uses include `Insert`, `Edit`, and `ReadOnly`. + ]]> @@ -887,11 +887,11 @@ public partial class ForeignKeyField : The list control to populate. Populates a list control with all the values from a parent table. - @@ -922,11 +922,11 @@ public partial class ForeignKeyField : Gets the current data row object. The current data row object. - method are equivalent. This property uses the `Page.GetDataItem` method to return the data row object. - + method are equivalent. This property uses the `Page.GetDataItem` method to return the data row object. + ]]> @@ -963,11 +963,11 @@ public partial class ForeignKeyField : The validation control to set up. Sets up a on all validation controls. - and sets up a on all validation controls. - + and sets up a on all validation controls. + ]]> @@ -997,13 +997,13 @@ public partial class ForeignKeyField : The column for which to validator is set. Sets up a using the type of validator and the column to validate. - on all validators. - - It performs additional logic for specific validator types in this method. For example, if range values exit in the data model this method sets up . - + on all validators. + + It performs additional logic for specific validator types in this method. For example, if range values exit in the data model this method sets up . + ]]> @@ -1034,11 +1034,11 @@ public partial class ForeignKeyField : The object that hosts the field template class. Controls the use of the field template. Associates a field template with the object that controls how the field template is used. - interface. - + interface. + ]]> diff --git a/xml/System.Web.DynamicData/MetaColumn.xml b/xml/System.Web.DynamicData/MetaColumn.xml index 4d6307488d1..c651fb3488d 100644 --- a/xml/System.Web.DynamicData/MetaColumn.xml +++ b/xml/System.Web.DynamicData/MetaColumn.xml @@ -21,13 +21,13 @@ Represents a database column that is used by Dynamic Data. - class represents a database field. The class lets you retrieve information about the data field such as type and metadata information. - - You can retrieve the table that the data field belongs to by using the property. You can also retrieve the data model by using the property. - + class represents a database field. The class lets you retrieve information about the data field such as type and metadata information. + + You can retrieve the table that the data field belongs to by using the property. You can also retrieve the data model by using the property. + ]]> @@ -78,11 +78,11 @@ if the column enables a value to be inserted; otherwise, . - attribute. - + attribute. + ]]> @@ -111,11 +111,11 @@ if the formatting string specified by the property is applied to field values when the data-bound control that contains the data field that is represented by the object is in edit mode; otherwise, . - property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. - + property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. + ]]> @@ -166,11 +166,11 @@ Gets the attribute collection. The attribute collection. - method before you access the property. - + method before you access the property. + ]]> @@ -195,11 +195,11 @@ Gets the data field type. The data field type. - property returns the common language runtime (CLR) type of the data field. - + property returns the common language runtime (CLR) type of the data field. + ]]> @@ -228,11 +228,11 @@ if empty string values are automatically converted to values when the data field is updated in the data source; otherwise, . - property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. - + property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. + ]]> @@ -263,11 +263,11 @@ Gets the string that specifies the display format for the field value. The string that specifies the display format for the field value. - property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. - + property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. + ]]> @@ -319,11 +319,11 @@ Gets the default value for the data field. The default value for the data field. - property is typically used to pre-populate the field value when a new entry is created. This property verifies if a attribute is applied to the data field and retrieves the value of the property. - + property is typically used to pre-populate the field value when a new entry is created. This property verifies if a attribute is applied to the data field and retrieves the value of the property. + ]]> @@ -353,11 +353,11 @@ Gets the description for the data field. The description for the data field. - property verifies if a attribute is applied to the data field and retrieves the value of the property. - + property verifies if a attribute is applied to the data field and retrieves the value of the property. + ]]> @@ -387,11 +387,11 @@ Gets the display name for the data field. The display name for the data field. - property returns the friendly display name for the data field if one has been set, or the field name if no display name has been specified. The property verifies if a friendly display name has been set by checking if a attribute is applied to the data field. - + property returns the friendly display name for the data field if one has been set, or the field name if no display name has been specified. The property verifies if a friendly display name has been set by checking if a attribute is applied to the data field. + ]]> @@ -485,11 +485,11 @@ Initializes data that might not be available when the constructor is called. - @@ -541,11 +541,11 @@ if the data field does not exist in the database; otherwise, . - property to determine whether a data field is in the database or if it is an extra property that was added to the data context object. - + property to determine whether a data field is in the database or if it is an extra property that was added to the data context object. + ]]> @@ -571,11 +571,11 @@ if the data field is a floating-point type; otherwise, . - @@ -651,11 +651,11 @@ if the data field type is an integer type; otherwise, . - @@ -684,11 +684,11 @@ if the data field type can contain long strings; otherwise, . - property is used to determine whether the TextBox or TextArea field template is displayed to enable users to modify the field value. - + property is used to determine whether the TextBox or TextArea field template is displayed to enable users to modify the field value. + ]]> @@ -766,11 +766,11 @@ if the data field requires a value; otherwise, . - property verifies if a attribute is applied to the data field or if the database schema contains information about the data field being required in the database to determine whether the data field requires a value. - + property verifies if a attribute is applied to the data field or if the database schema contains information about the data field being required in the database to determine whether the data field requires a value. + ]]> @@ -825,11 +825,11 @@ Gets a value that indicates the maximum length of data that can be stored in the data field. The maximum length of data that can be stored in the data field. - property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not applied to the data field, the property uses the database type to retrieve the maximum length allowed. - + property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not applied to the data field, the property uses the database type to retrieve the maximum length allowed. + ]]> @@ -905,11 +905,11 @@ Gets the caption that is displayed for a field when the field's value is . The caption that is displayed for a field when the field's value is . - property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. - + property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not found, this property verifies if a attribute is applied to retrieve formatting information. + ]]> @@ -936,16 +936,16 @@ Gets a value that can be used as a watermark in the UI that is bound to data in the column. A value that can be used as a watermark in the UI that is bound to data in the column. - attribute in the column's definition in the meta class for the data entity. - + attribute in the column's definition in the meta class for the data entity. + ]]> @@ -1022,11 +1022,11 @@ Clears cached column metadata. - @@ -1055,19 +1055,19 @@ if the data field should be displayed; otherwise, . - property indicates whether a data field should be displayed when it is automatically generated by ASP.NET Dynamic Data. This property verifies if a attribute is applied to the data field and returns the value of the property. If a attribute is not applied to the data field, Dynamic Data uses the following rules to determine whether to display the column: - -- If a attribute is applied to the data field, the data field is displayed. This rule overrides all the other rules. - -- If the value of the property is `true`, the data field is not displayed. This occurs because Dynamic Data handles foreign-key fields in a different way and will not typically display the foreign-key field value. - -- If the value of the property is `true`, the data field is not displayed. Typically fields that are automatically generated in the database do not contain relevant information. Make sure that you apply the attribute to the data field, if the data field must be displayed. - -- If the value of the property is `true`, the data field is not displayed. - + property indicates whether a data field should be displayed when it is automatically generated by ASP.NET Dynamic Data. This property verifies if a attribute is applied to the data field and returns the value of the property. If a attribute is not applied to the data field, Dynamic Data uses the following rules to determine whether to display the column: + +- If a attribute is applied to the data field, the data field is displayed. This rule overrides all the other rules. + +- If the value of the property is `true`, the data field is not displayed. This occurs because Dynamic Data handles foreign-key fields in a different way and will not typically display the foreign-key field value. + +- If the value of the property is `true`, the data field is not displayed. Typically fields that are automatically generated in the database do not contain relevant information. Make sure that you apply the attribute to the data field, if the data field must be displayed. + +- If the value of the property is `true`, the data field is not displayed. + ]]> @@ -1097,11 +1097,11 @@ Gets the short name for the column. The short name for the column. - control and other controls where a short name is needed because of limited column-header space. - + control and other controls where a short name is needed because of limited column-header space. + ]]> @@ -1207,11 +1207,11 @@ Gets the type of the data field. The type of the data field. - property value is derived from the value of the property. - + property value is derived from the value of the property. + ]]> @@ -1240,11 +1240,11 @@ Gets the name of the field template specified for the data field. The name of the field template specified for the data field. - property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not applied to the data field, the property returns an empty string. - + property verifies if a attribute is applied to the data field and retrieves the value of the property. If a attribute is not applied to the data field, the property returns an empty string. + ]]> diff --git a/xml/System.Web.DynamicData/MetaModel.xml b/xml/System.Web.DynamicData/MetaModel.xml index c1fefa8128f..324d119fc43 100644 --- a/xml/System.Web.DynamicData/MetaModel.xml +++ b/xml/System.Web.DynamicData/MetaModel.xml @@ -17,44 +17,44 @@ Represents one or multiple databases that are used by ASP.NET Dynamic Data. - type lets you register one or multiple data contexts for a Dynamic Data Web application. - - A data context is an object that represents a database connection. A data context has access to one data model which represents a database that is available through that connection. A data model is an object that represents a database's data entities as CLR types. Dynamic Data supports data models based on LINQ to SQL and on the ADO.NET Entity Framework. - - In Visual Studio, you can generate data-model types by using the **LINQ to SQL Classes** template or the **ADO.NET Entity Data Model** template. These templates use the Object Relational Designer (O/R Designer) for the LINQ to SQL model, or the ADO.NET Entity Data Model Designer (Entity Designer) for the Entity Framework model. - - - -## Examples - The following example shows how to use type to perform the following tasks in order to use automatic scaffolding in an ASP.NET Web site: - -- Get the data model for the default data context. - -- Get the data model for a specified data context. - -- Evaluate the routing path (determine the URL) for a specified table. - - The example consists of a page and its code-behind file. - + type lets you register one or multiple data contexts for a Dynamic Data Web application. + + A data context is an object that represents a database connection. A data context has access to one data model which represents a database that is available through that connection. A data model is an object that represents a database's data entities as CLR types. Dynamic Data supports data models based on LINQ to SQL and on the ADO.NET Entity Framework. + + In Visual Studio, you can generate data-model types by using the **LINQ to SQL Classes** template or the **ADO.NET Entity Data Model** template. These templates use the Object Relational Designer (O/R Designer) for the LINQ to SQL model, or the ADO.NET Entity Data Model Designer (Entity Designer) for the Entity Framework model. + + + +## Examples + The following example shows how to use type to perform the following tasks in order to use automatic scaffolding in an ASP.NET Web site: + +- Get the data model for the default data context. + +- Get the data model for a specified data context. + +- Evaluate the routing path (determine the URL) for a specified table. + + The example consists of a page and its code-behind file. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/PlaceHolder.cs" id="Snippet1"::: :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/PathModel.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PlaceHolder.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PlaceHolder.vb" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/PathModel.aspx.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet2"::: - - To compile the example, you need the following: - -- Visual Studio 2010 or Visual Web Developer 2010 Express. - -- A Dynamic Data Web site. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](https://msdn.microsoft.com/library/1564aef2-9103-436a-9806-c8ad7abd616a). - - See a run-time code example of this feature: [Run](https://go.microsoft.com/fwlink/?LinkId=120736&sref=System.Web.DynamicData.MetaModel). - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet2"::: + + To compile the example, you need the following: + +- Visual Studio 2010 or Visual Web Developer 2010 Express. + +- A Dynamic Data Web site. For more information, see [Walkthrough: Creating a New Dynamic Data Web Site Using Scaffolding](https://msdn.microsoft.com/library/1564aef2-9103-436a-9806-c8ad7abd616a). + + See a run-time code example of this feature: [Run](https://go.microsoft.com/fwlink/?LinkId=120736&sref=System.Web.DynamicData.MetaModel). + ]]> Can be thrown by any method if there has been a data context registration error. @@ -95,23 +95,23 @@ Instantiates a new instance of the class. - constructor in the `Application_Start` method of the Global.asax file. - - - -## Examples - The following example shows how to use the constructor to perform the following tasks: - -- Instantiate the class. - -- Initialize and register the instance. - + constructor in the `Application_Start` method of the Global.asax file. + + + +## Examples + The following example shows how to use the constructor to perform the following tasks: + +- Instantiate the class. + +- Initialize and register the instance. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/global.asax.cs" id="Snippet99"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/global.asax.vb" id="Snippet99"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/global.asax.vb" id="Snippet99"::: + ]]> @@ -136,13 +136,13 @@ to indicate that the model is registered globally; otherwise . The default is . Instantiates a new instance of the class. - method. It enables you to create multiple models and use the same entity types while avoiding type conflicts. - - You typically call the constructor in the `Application_Start` method of the Global.asax file. - + method. It enables you to create multiple models and use the same entity types while avoiding type conflicts. + + You typically call the constructor in the `Application_Start` method of the Global.asax file. + ]]> @@ -170,11 +170,11 @@ Instantiates a object. A new instance of the table. - method can be overridden to instantiate a derived type. - + method can be overridden to instantiate a derived type. + ]]> @@ -207,21 +207,21 @@ Gets the first instance of a data model that is created by the application. The data-model instance. - method. - - - -## Examples - The following example shows how to use the property in the method to get the default data model. - - For a complete example, see the class overview. - + method. + + + +## Examples + The following example shows how to use the property in the method to get the default data model. + + For a complete example, see the class overview. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/PathModel.aspx.cs" id="Snippet22"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet22"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet22"::: + ]]> @@ -246,11 +246,11 @@ Gets or sets the virtual path of the DynamicData folder in the Web site. The virtual path of the DynamicData folder. - @@ -296,11 +296,11 @@ Gets or sets a custom interface. The interface. - interface lets you specify which field templates are created for the table columns. - + interface lets you specify which field templates are created for the table columns. + ]]> @@ -357,21 +357,21 @@ Returns the action path that is associated with a specific table. The URL that is associated with the route. - method to evaluate the routing path (determine the URL) for a specified table. For a complete example, see . - + method to evaluate the routing path (determine the URL) for a specified table. For a complete example, see . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/PathModel.aspx.cs" id="Snippet23"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet23"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet23"::: + ]]> @@ -400,20 +400,20 @@ Returns the data-model instance for the specified context. The data model that is associated with the specified context type. - method to perform the following tasks: - -- Getting the default data model. - -- Getting the data model specified by the passed context type. - - For a complete example, see the class overview. - + method to perform the following tasks: + +- Getting the default data model. + +- Getting the data model specified by the passed context type. + + For a complete example, see the class overview. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/PathModel.aspx.cs" id="Snippet22"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet22"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/PathModel.aspx.vb" id="Snippet22"::: + ]]> @@ -427,30 +427,30 @@ The table was not found. Returns the metadata that describes a data model table. - object that is returned by the overloaded methods contains the metadata information that is associated with the specified table. - - [Run](https://go.microsoft.com/fwlink/?LinkId=120736&sref=System.Web.DynamicData.MetaModel&spage=GetTable.aspx) an online example of this feature. - - - -## Examples - The following example shows how to use the overloaded methods to perform the following tasks: - -- Get the object for the specified table. - -- Access the metadata information that is contained by the object. - - The example consists of a page and its code-behind file. - + object that is returned by the overloaded methods contains the metadata information that is associated with the specified table. + + [Run](https://go.microsoft.com/fwlink/?LinkId=120736&sref=System.Web.DynamicData.MetaModel&spage=GetTable.aspx) an online example of this feature. + + + +## Examples + The following example shows how to use the overloaded methods to perform the following tasks: + +- Get the object for the specified table. + +- Access the metadata information that is contained by the object. + + The example consists of a page and its code-behind file. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/GetTable.aspx"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/GetTable.aspx"::: - + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/GetTable.aspx.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet4"::: + ]]> @@ -480,19 +480,19 @@ Returns the metadata that is associated with the specified table. The metadata that describes the specified table. - method to obtain the metadata for the specified table. For a complete example, see . - + method to obtain the metadata for the specified table. For a complete example, see . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/GetTable.aspx.cs" id="Snippet42"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet42"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet42"::: + ]]> The name was not found in the data model. @@ -523,14 +523,14 @@ Returns the metadata that describes the specified table. The metadata that describes the specified table. - method to obtain the metadata for the specified table. For a complete example, see . - + method to obtain the metadata for the specified table. For a complete example, see . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/GetTable.aspx.cs" id="Snippet41"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet41"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet41"::: + ]]> The type was not found in the data model. @@ -563,14 +563,14 @@ Returns the metadata that describes the specified table. The metadata that describes the specified table. - method to obtain the metadata for the specified table. For a complete example, see . - + method to obtain the metadata for the specified table. For a complete example, see . + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/GetTable.aspx.cs" id="Snippet43"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet43"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/gettable.aspx.vb" id="Snippet43"::: + ]]> @@ -587,11 +587,11 @@ Registers the data context. - class. - + class. + ]]> @@ -622,11 +622,11 @@ The factory for instantiating the data context. Registers the data context that is specified by a context factory. - class. It enables you to instantiate the data context by using your own constructor. - + class. It enables you to instantiate the data context by using your own constructor. + ]]> @@ -657,11 +657,11 @@ The type of the data context as defined in the data model. Registers a data-context instance. - class. - + class. + ]]> @@ -722,11 +722,11 @@ The context information as defined by the class. Registers a data-context instance by using the specified context configuration and by enabling a custom constructor. - @@ -762,14 +762,14 @@ The configuration information for the context, as defined by the class. Registers a data-context instance by using the specified context configuration. - method to register a data context with scaffolding enabled, as specified by the `configuration` parameter. - + method to register a data context with scaffolding enabled, as specified by the `configuration` parameter. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/global.asax.cs" id="Snippet99"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/global.asax.vb" id="Snippet99"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/global.asax.vb" id="Snippet99"::: + ]]> @@ -832,11 +832,11 @@ Resets any previous context registration error that might have occurred. - @@ -861,30 +861,30 @@ Gets a collection of all the tables that are part of the data model. A collection that contains the tables that belong to the data model. - and properties to perform the following tasks: - -- Get a collection of all the tables in a data model and show them in a `GridView` control. - -- Get a collection of the visible tables in a data model and show them in a `GridView` control. - - The example consists of a page and its code-behind file. - + and properties to perform the following tasks: + +- Get a collection of all the tables in a data model and show them in a `GridView` control. + +- Get a collection of the visible tables in a data model and show them in a `GridView` control. + + The example consists of a page and its code-behind file. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/TablesMenu.aspx" id="Snippet5"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/TablesMenu.aspx" id="Snippet5"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/TablesMenu.aspx" id="Snippet5"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/TablesMenu.aspx.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/TablesMenu.aspx.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/TablesMenu.aspx.vb" id="Snippet6"::: + ]]> @@ -925,11 +925,11 @@ if the table metadata is found; otherwise . - method, which throws an exception if the table is not found. - + method, which throws an exception if the table is not found. + ]]> @@ -962,11 +962,11 @@ if the table metadata is found; otherwise, . - method, which throws an exception if the table is not found. - + method, which throws an exception if the table is not found. + ]]> @@ -993,14 +993,14 @@ Gets a collection of the visible tables in the data model. A visible table refers to a table that has scaffolding enabled. This means that it is a table for which a List.aspx page exists. - property to get a collection of the visible tables in the data model. For a complete example, see the class overview. - + property to get a collection of the visible tables in the data model. For a complete example, see the class overview. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/CS/TablesMenu.aspx.cs" id="Snippet62"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/TablesMenu.aspx.vb" id="Snippet62"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.DynamicData.MetaModel/VB/TablesMenu.aspx.vb" id="Snippet62"::: + ]]> diff --git a/xml/System.Web.DynamicData/MetaTable.xml b/xml/System.Web.DynamicData/MetaTable.xml index 07691fd7583..cb85a665b05 100644 --- a/xml/System.Web.DynamicData/MetaTable.xml +++ b/xml/System.Web.DynamicData/MetaTable.xml @@ -17,36 +17,36 @@ Represents the metadata that describes a table for use by Dynamic Data pages. - instance is initialized in the `Page_Load` method. The title for the page is set to the table `DisplayName` property. - -```csharp -public partial class Insert : System.Web.UI.Page { - protected MetaTable table; - - protected void Page_Load(object sender, EventArgs e) { - table = DetailsDataSource.GetTable(); - Title = table.DisplayName; - } -} -``` - -```vb -Partial Class Insert - Inherits System.Web.UI.Page - - Protected table As MetaTable - - Protected Sub Page_Load(ByVal sender As Object, _ - ByVal e As EventArgs) - table = DetailsDataSource.GetTable - Title = table.DisplayName - End Sub -End Class -``` - + instance is initialized in the `Page_Load` method. The title for the page is set to the table `DisplayName` property. + +```csharp +public partial class Insert : System.Web.UI.Page { + protected MetaTable table; + + protected void Page_Load(object sender, EventArgs e) { + table = DetailsDataSource.GetTable(); + Title = table.DisplayName; + } +} +``` + +```vb +Partial Class Insert + Inherits System.Web.UI.Page + + Protected table As MetaTable + + Protected Sub Page_Load(ByVal sender As Object, _ + ByVal e As EventArgs) + table = DetailsDataSource.GetTable + Title = table.DisplayName + End Sub +End Class +``` + ]]> @@ -72,11 +72,11 @@ End Class The entity model provider. Initializes a new instance of the class. - property. - + property. + ]]> @@ -149,11 +149,11 @@ End Class if the user is allowed to perform delete operations; otherwise, . - @@ -182,11 +182,11 @@ End Class if the user is allowed to perform insert operations; otherwise, . - @@ -215,11 +215,11 @@ End Class if the user is allowed to perform read operations; otherwise, . - @@ -248,11 +248,11 @@ End Class if the user is allowed to perform update operations; otherwise, . - @@ -287,14 +287,14 @@ End Class Gets the column collection for the table. A collection that contains the columns for the table. - property. In the example, the Dynamic Data page templates have been copied to the \DynamicData\CustomPages\ProductDescriptions folder to provide a custom display for the ProductDescription table of the AdventureWorksLT database. The markup of the Insert.aspx file is changed to add an `OnDataBound` event handler named `DetailsView1_DataBound`. In the event handler, the method is used to find the meta table. The property is used to display the number of columns in the table. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataExtensions/cs/Insert.aspx.cs" id="Snippet1"::: -:::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataExtensions/cs/Insert.aspx" id="Snippet2"::: - + property. In the example, the Dynamic Data page templates have been copied to the \DynamicData\CustomPages\ProductDescriptions folder to provide a custom display for the ProductDescription table of the AdventureWorksLT database. The markup of the Insert.aspx file is changed to add an `OnDataBound` event handler named `DetailsView1_DataBound`. In the event handler, the method is used to find the meta table. The property is used to display the number of columns in the table. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataExtensions/cs/Insert.aspx.cs" id="Snippet1"::: +:::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.DynamicData.DynamicDataExtensions/cs/Insert.aspx" id="Snippet2"::: + ]]> @@ -322,11 +322,11 @@ End Class Creates a new object. The new child metacolumn object. - @@ -354,11 +354,11 @@ End Class Creates a object. The new metacolumn object. - @@ -389,11 +389,11 @@ End Class Returns the data context for the table. The data context for the table. - method. For more information, see the class overview. - + method. For more information, see the class overview. + ]]> @@ -421,11 +421,11 @@ End Class Creates an object that contains foreign-key metadata. An object that contains foreign-key metadata. - @@ -509,11 +509,11 @@ End Class Gets the name of the table. The name of the table. - object that the table belongs to. - + object that the table belongs to. + ]]> @@ -538,11 +538,11 @@ End Class Gets the type of the data context that is associated with the table. The type of the data context. - class overview. - + class overview. + ]]> @@ -570,21 +570,21 @@ End Class Gets the column that is used to display values when entries in this table are used as parents in foreign-key relationships. The column that is used to display values when entries in this table are used as parents in foreign-key relationships. - attribute. - -2. The first string column that is not in the primary key. - -3. The first string column that is in the primary key. - -4. The first non-string column that is in the primary key. - -5. The first column. - + attribute. + +2. The first string column that is not in the primary key. + +3. The first string column that is in the primary key. + +4. The first non-string column that is in the primary key. + +5. The first column. + ]]> @@ -612,11 +612,11 @@ End Class Gets the name of the table in a user-friendly format. The string that represents the user-friendly name of the table. - property. You can customize the value of this property by using the attribute. - + property. You can customize the value of this property by using the attribute. + ]]> @@ -673,11 +673,11 @@ End Class Gets the action path for the specified row. - class overview. - + class overview. + ]]> @@ -715,11 +715,11 @@ End Class Returns the action path for the current table and the specified action. The action path for the specified action. - class overview. - + class overview. + ]]> @@ -753,11 +753,11 @@ End Class Returns the action path for the current table, specified action, and specified primary key. The action path for the specified action and primary key. - class overview. - + class overview. + ]]> @@ -791,13 +791,13 @@ End Class Returns the action path for the specified row by using the name of the action. The action path for the specified row. - class overview. - + class overview. + ]]> @@ -831,11 +831,11 @@ End Class Returns the action path for the current table and for the specified action and routes. The action path for the specified action and routes. - class overview. - + class overview. + ]]> @@ -871,11 +871,11 @@ End Class Appends query strings to the action path, based on the specified primary key and virtual path. The action path for the specified primary key and virtual path, with query-string values appended to it. - class overview. - + class overview. + ]]> @@ -911,11 +911,11 @@ End Class Returns the action path for the specified row by using the name of the action and the virtual path of the action. The action path for the specified row. - class overview. - + class overview. + ]]> @@ -994,11 +994,11 @@ End Class Retrieves the primary key of the entity from the route values. The primary-key values of the entities, if they are found; otherwise, . - @@ -1032,11 +1032,11 @@ End Class Returns the value to use as the display string for an instance of a row when the row is used in foreign-key relationships. The display name for an instance of a row. - method, the overridden value is returned. Otherwise, the method returns the `ToString` representation of the value of the property for the specified row. - + method, the overridden value is returned. Otherwise, the method returns the `ToString` representation of the value of the property for the specified row. + ]]> @@ -1061,11 +1061,11 @@ End Class Retrieves a list of columns that are filterable. A list of columns that are filterable. - attribute and the `Enabled` property of the attribute of the column is set to `true`. - + attribute and the `Enabled` property of the attribute of the column is set to `true`. + ]]> @@ -1093,32 +1093,32 @@ End Class Retrieves a dictionary of primary-key names and values for the specified row. A dictionary of primary-key names and values. - @@ -1289,11 +1289,11 @@ End Function Returns the instance for the entity type that represents the table by using the data context. The instance for the entity type that represents the table in the data context. - method. - + method. + ]]> @@ -1323,15 +1323,15 @@ End Function Returns a list of columns to display by using scaffolding. A list of columns to display by using scaffolding. - property is set to `true` except the following: - -- Long string columns, which are columns whose property is set to `true` and whose `containerType` parameter is `true`. - -- Child columns whose value is set to . - + property is set to `true` except the following: + +- Long string columns, which are columns whose property is set to `true` and whose `containerType` parameter is `true`. + +- Child columns whose value is set to . + ]]> @@ -1359,11 +1359,11 @@ End Function Retrieves the metatable that is associated with the specified type. The metatable that is associated with the specified type. - . If returns `false`, an exception is thrown. - + . If returns `false`, an exception is thrown. + ]]> The method that was called by this method returned . @@ -1411,30 +1411,30 @@ End Function Initializes data that may not be available when the constructor is called. - method for each column in the instance. This method cannot be called directly. To customize initialization, you can derive from this class and override the method. If you override this method, call the base control's `Initialize` method. - - - -## Examples - The following example shows how to override the method in order to customize the initialization process. - -```csharp -protected override void Initialize() { - base.Initialize(); - MyOverriddenInit(); -} -``` - -```vb -Protected Overloads Overrides Sub Initialize() - MyBase.Initialize() - MyOverriddenInit() -End Sub -``` - + method for each column in the instance. This method cannot be called directly. To customize initialization, you can derive from this class and override the method. If you override this method, call the base control's `Initialize` method. + + + +## Examples + The following example shows how to override the method in order to customize the initialization process. + +```csharp +protected override void Initialize() { + base.Initialize(); + MyOverriddenInit(); +} +``` + +```vb +Protected Overloads Overrides Sub Initialize() + MyBase.Initialize() + MyOverriddenInit() +End Sub +``` + ]]> @@ -1491,11 +1491,11 @@ End Sub Gets the action path of the list action for the table. The action path of the list action for the table. - class overview. - + class overview. + ]]> @@ -1526,11 +1526,11 @@ End Sub Gets the meta model that the table belongs to. The meta model that the table belongs to. - class overview. - + class overview. + ]]> @@ -1632,11 +1632,11 @@ End Sub Resets the cached metadata for the table. - @@ -1660,11 +1660,11 @@ End Sub Gets the root type of the entity's inheritance hierarchy. The root type of the entity's inheritance hierarchy. - @@ -1744,11 +1744,11 @@ End Sub if entries are sorted in descending order; otherwise, . - attribute. - + attribute. + ]]> @@ -1803,11 +1803,11 @@ End Sub if the specified column can be found; otherwise, . - exception is thrown. - + exception is thrown. + ]]> diff --git a/xml/System.Web.DynamicData/QueryableFilterRepeater.xml b/xml/System.Web.DynamicData/QueryableFilterRepeater.xml index 450e6cbf095..cf304bab44d 100644 --- a/xml/System.Web.DynamicData/QueryableFilterRepeater.xml +++ b/xml/System.Web.DynamicData/QueryableFilterRepeater.xml @@ -35,90 +35,90 @@ Provides a templated control that automatically generates the UI to filter table rows for supported column types. - -## Introduction - The control is used in page markup to automatically generate the UI to filter table rows. By default, Dynamic Data creates the UI for each supported column type by using the default filter templates that are in the ~\DynamicData\Filters directory. - - The default templates support foreign-key, Boolean, and enumeration column types. - - The following table lists tasks that are associated with the type. - -|Task|Description| -|----------|-----------------| -|Create the UI for filtering table rows.|Add controls to create UI using the property.| -|Verify whether the control contains data field filters.|Perform the check in the method.| - - -## Class Context - The control is designed to work with the control. It must be referenced by a instance inside a object in page markup. - - The following figure shows the steps that Dynamic Data follows in order to implement automatic table row filtering. - - ![Dynamic Data Table Row Filtering Elements](~/add/media/dynamic-autofilter.png "Dynamic Data Table Row Filtering Elements") - -1. The controls (which are contained in the control), pass a column value to the control. - -2. The control uses this value to create the query filtering information, which it then passes to the data source control. - -3. The data source control passes the query filtering information to the data source provider. - -4. The data source provider passes the query to the database. - -5. The database returns the filtered table rows. - -6. The data source provider sends this data back to the data source control. - -7. This control passes the filtered table rows to the data-bound control for display. - - -## Declarative Syntax - -``` - -``` - - - -## Examples - A Visual Studio project with source code is available at this location: [Scaffolding Dynamic Data](https://go.microsoft.com/fwlink/?LinkId=168914). - - The following example shows how to use the control to generate the UI for table row filtering. The repeater's item template contains a control that creates the UI for each supported column type. - - The example requires the following: - -- A Dynamic Data Web site or a Dynamic Data Web application. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. - + +## Introduction + The control is used in page markup to automatically generate the UI to filter table rows. By default, Dynamic Data creates the UI for each supported column type by using the default filter templates that are in the ~\DynamicData\Filters directory. + + The default templates support foreign-key, Boolean, and enumeration column types. + + The following table lists tasks that are associated with the type. + +|Task|Description| +|----------|-----------------| +|Create the UI for filtering table rows.|Add controls to create UI using the property.| +|Verify whether the control contains data field filters.|Perform the check in the method.| + + +## Class Context + The control is designed to work with the control. It must be referenced by a instance inside a object in page markup. + + The following figure shows the steps that Dynamic Data follows in order to implement automatic table row filtering. + + ![Dynamic Data Table Row Filtering Elements](~/add/media/dynamic-autofilter.png "Dynamic Data Table Row Filtering Elements") + +1. The controls (which are contained in the control), pass a column value to the control. + +2. The control uses this value to create the query filtering information, which it then passes to the data source control. + +3. The data source control passes the query filtering information to the data source provider. + +4. The data source provider passes the query to the database. + +5. The database returns the filtered table rows. + +6. The data source provider sends this data back to the data source control. + +7. This control passes the filtered table rows to the data-bound control for display. + + +## Declarative Syntax + +``` + +``` + + + +## Examples + A Visual Studio project with source code is available at this location: [Scaffolding Dynamic Data](https://go.microsoft.com/fwlink/?LinkId=168914). + + The following example shows how to use the control to generate the UI for table row filtering. The repeater's item template contains a control that creates the UI for each supported column type. + + The example requires the following: + +- A Dynamic Data Web site or a Dynamic Data Web application. For more information, see `Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding`. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/cs/queryablefilterrepeater.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/queryablefilterrepeater.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/queryablefilterrepeater.aspx" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/cs/queryablefilterrepeater.aspx.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/queryablefilterrepeater.aspx.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/queryablefilterrepeater.aspx.vb" id="Snippet3"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/cs/awltl2spartials.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/awltpartiall2sclasses.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/awltpartiall2sclasses.vb" id="Snippet4"::: + ]]> @@ -140,11 +140,11 @@ Initializes a new instance of the class. - class. Instead, you specify the control in page markup, and the control is initialized automatically when the page runs. - + class. Instead, you specify the control in page markup, and the control is initialized automatically when the page runs. + ]]> @@ -186,11 +186,11 @@ Gets or sets the ID of a control inside the template that is configured to be a filter for a column. The ID of a control inside the template that is configured to be a filter for a column. - @@ -240,19 +240,19 @@ Gets or sets the controls that populate the class. An object that defines how items in the control are displayed. - property defines the behavior that is used to populate the control with child controls. The child controls represent the inline templates that are defined on the page. - - - -## Examples - The following example shows how to set the control's property so that it contains controls to create the UI for each supported column type. - + property defines the behavior that is used to populate the control with child controls. The child controls represent the inline templates that are defined on the page. + + + +## Examples + The following example shows how to set the control's property so that it contains controls to create the UI for each supported column type. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/cs/queryablefilterrepeater.aspx" id="Snippet2"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/queryablefilterrepeater.aspx" id="Snippet2"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.dynamicdata.queryablefilterrepeater/vb/queryablefilterrepeater.aspx" id="Snippet2"::: + ]]> @@ -279,11 +279,11 @@ The event data. Verifies whether the control contains data field filters. - property of the object to `false`. This method is called after the control is loaded but before it is rendered. - + property of the object to `false`. This method is called after the control is loaded but before it is rendered. + ]]> diff --git a/xml/System.Web.Hosting/ApplicationManager.xml b/xml/System.Web.Hosting/ApplicationManager.xml index 8db68cc271c..f14c122a9ce 100644 --- a/xml/System.Web.Hosting/ApplicationManager.xml +++ b/xml/System.Web.Hosting/ApplicationManager.xml @@ -17,19 +17,19 @@ Manages ASP.NET application domains for an ASP.NET hosting application. - object provides lifetime management of objects in the hosting environment for an ASP.NET application. It is responsible for: - -- Activating and initializing ASP.NET applications. - -- Managing the application lifetime and the lifetime of objects registered in the application. - -- Exposing objects used by the hosting environment to process ASP.NET application requests. - -- Providing a list of applications running in the hosting process at any given moment. - + object provides lifetime management of objects in the hosting environment for an ASP.NET application. It is responsible for: + +- Activating and initializing ASP.NET applications. + +- Managing the application lifetime and the lifetime of objects registered in the application. + +- Exposing objects used by the hosting environment to process ASP.NET application requests. + +- Providing a list of applications running in the hosting process at any given moment. + ]]> @@ -54,11 +54,11 @@ Shuts down all application domains. - method reduces the reference count of applications using the application manager to 0, the method calls the method. - + method reduces the reference count of applications using the application manager to 0, the method calls the method. + ]]> @@ -98,19 +98,19 @@ Creates an object for the specified application domain, based on type. A new object of the type specified in . - is introduced in the .NET Framework version 3.5. For more information, see [Versions and Dependencies](/dotnet/framework/migration-guide/versions-and-dependencies). - + is introduced in the .NET Framework version 3.5. For more information, see [Versions and Dependencies](/dotnet/framework/migration-guide/versions-and-dependencies). + ]]> A physical path for the application does not exist. - is . - + is . + -or- - + is . @@ -153,44 +153,44 @@ Creates an object for the specified application domain based on type, virtual and physical paths, and a Boolean value indicating failure behavior when an object of the specified type already exists. A new object of the specified . - method is used to create and register objects in the application. Only one object of each type can be created. If you need to create multiple objects of the same type, you must implement an object factory. For more information, see the code example in this topic. - - Each application, identified by a unique application identifier, runs in its own application domain. The method creates an object of the specified type in the application domain of the application specified in the `appID` parameter. If an application domain does not exist for the specified application, one is created before the object is created. - - The `failIfExists` parameter controls the behavior of the method when an object of the specified type already exists in the application. When `failIfExists` is `true`, the method throws an exception. - - When `failIfExists` is `false`, the method returns the existing registered object of the specified type. - - The method calls the overload that takes an additional `throwOnError` parameter with `throwOnError` set to `false`. - - - -## Examples - The following code example is an implementation of the object-factory design pattern for registered objects. Using the factory pattern enables you to register multiple instances of an object. The example contains two objects: `SampleComponent`, which is the object the application will use multiple instances of, and `SampleComponentFactory`, which manages a list of `SampleComponent` instances. - + method is used to create and register objects in the application. Only one object of each type can be created. If you need to create multiple objects of the same type, you must implement an object factory. For more information, see the code example in this topic. + + Each application, identified by a unique application identifier, runs in its own application domain. The method creates an object of the specified type in the application domain of the application specified in the `appID` parameter. If an application domain does not exist for the specified application, one is created before the object is created. + + The `failIfExists` parameter controls the behavior of the method when an object of the specified type already exists in the application. When `failIfExists` is `true`, the method throws an exception. + + When `failIfExists` is `false`, the method returns the existing registered object of the specified type. + + The method calls the overload that takes an additional `throwOnError` parameter with `throwOnError` set to `false`. + + + +## Examples + The following code example is an implementation of the object-factory design pattern for registered objects. Using the factory pattern enables you to register multiple instances of an object. The example contains two objects: `SampleComponent`, which is the object the application will use multiple instances of, and `SampleComponentFactory`, which manages a list of `SampleComponent` instances. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Hosting.ApplicationManager/CS/appManagercs.aspx.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Hosting.ApplicationManager/VB/appManagervb.aspx.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Hosting.ApplicationManager/VB/appManagervb.aspx.vb" id="Snippet1"::: + ]]> - is - + is + -or- - - is not a valid application path. - + + is not a valid application path. + -or- - + does not implement the interface. - is . - + is . + -or- - + is . is and an object of the specified type is already registered. @@ -232,28 +232,28 @@ Creates an object for the specified application domain based on type, virtual and physical paths, a Boolean value indicating failure behavior when an object of the specified type already exists, and a Boolean value indicating whether hosting initialization error exceptions are thrown. A new object of the specified . - method provides the `throwOnError` parameter, which allows you to control whether hosting initialization exceptions are thrown. The overload of the method that does not provide `throwOnError` calls this overload with the parameter set to `false`. - + method provides the `throwOnError` parameter, which allows you to control whether hosting initialization exceptions are thrown. The overload of the method that does not provide `throwOnError` calls this overload with the parameter set to `false`. + ]]> - is - + is + -or- - - is not a valid application path. - + + is not a valid application path. + -or- - + does not implement the interface. - is . - + is . + -or- - + is . is and an object of the specified type is already registered. @@ -339,19 +339,19 @@ Returns the single instance of the object associated with this ASP.NET host process. The single instance of the object associated with the ASP.NET host process that is running. - object is created by an ASP.NET host process in the default application domain. If an instance of the class is not available, the method first creates an instance of the class and then returns the newly created object. If an instance of the class was previously created, the method returns the existing object. - - - -## Examples - The following code example uses the method to retrieve the instance for a Web application. - + object is created by an ASP.NET host process in the default application domain. If an instance of the class is not available, the method first creates an instance of the class and then returns the newly created object. If an instance of the class was previously created, the method returns the existing object. + + + +## Examples + The following code example uses the method to retrieve the instance for a Web application. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Hosting.ApplicationInfo/CS/applicationInfocs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Hosting.ApplicationInfo/VB/applicationInfovb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Hosting.ApplicationInfo/VB/applicationInfovb.aspx" id="Snippet1"::: + ]]> @@ -383,10 +383,10 @@ The registered object of the specified type; or if the type has not been registered through a call to the method. To be added. - is . - - -or- - + is . + + -or- + is . @@ -411,14 +411,14 @@ Returns a snapshot of running applications. An array of objects that contain information about the applications managed by this instance. - method to display information about the applications managed by an instance. - + method to display information about the applications managed by an instance. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Hosting.ApplicationInfo/CS/applicationInfocs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Hosting.ApplicationInfo/VB/applicationInfovb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Hosting.ApplicationInfo/VB/applicationInfovb.aspx" id="Snippet1"::: + ]]> @@ -444,11 +444,11 @@ Gives the application domain an infinite lifetime by preventing a lease from being created. Always . - method in its base class. It always returns `null` and thereby prevents a lease from being created that would limit the application domain's lifetime. - + method in its base class. It always returns `null` and thereby prevents a lease from being created that would limit the application domain's lifetime. + ]]> @@ -475,11 +475,11 @@ if all applications in the process are idle; otherwise, . - method returns `true` if all applications hosted by the process are idle. - + method returns `true` if all applications hosted by the process are idle. + ]]> @@ -526,11 +526,11 @@ Unloads all application resources. - method is equivalent to calling the method in all application domains managed by this instance; however, the method can be called from outside the managed application domains. - + method is equivalent to calling the method in all application domains managed by this instance; however, the method can be called from outside the managed application domains. + ]]> @@ -558,11 +558,11 @@ The unique identifier of the application to unload. Unloads the specified application. - method is equivalent to calling the method for a specific application domain; however, the method can be called from outside managed application domains. - + method is equivalent to calling the method for a specific application domain; however, the method can be called from outside managed application domains. + ]]> @@ -595,10 +595,10 @@ Removes the specified object from the list of registered objects in an application. If the object to be removed is the last remaining object in the list of registered objects in an application, the application is unloaded. To be added. - is . - + is . + -or- - + is . diff --git a/xml/System.Web.Hosting/VirtualPathProvider.xml b/xml/System.Web.Hosting/VirtualPathProvider.xml index a530cff6ff1..a9ee4a94ac1 100644 --- a/xml/System.Web.Hosting/VirtualPathProvider.xml +++ b/xml/System.Web.Hosting/VirtualPathProvider.xml @@ -17,151 +17,151 @@ Provides a set of methods that enable a Web application to retrieve resources from a virtual file system. - class provides a set of methods for implementing a virtual file system for a Web application. In a virtual file system, the files and directories are managed by a data store other than the file system provided by the server's operating system. For example, you can use a virtual file system to store content in a SQL Server database. - - You can store any file that is processed on request in a virtual file system. This includes: - -- ASP.NET pages, master pages, user controls, and other objects. - -- Standard Web pages with extensions such as .htm and .jpg. - -- Any custom extension mapped to a instance. - -- Any named theme in the `App_Theme` folder. - - You cannot store ASP.NET application folders or files that generate application-level assemblies in a virtual file system. This includes: - -- The Global.asax file. - -- Web.config files. - -- Site map data files used by the . - -- Directories that contain application assemblies or that generate application assemblies: `Bin`, `App_Code`, `App_GlobalResources`, any `App_LocalResources`. - -- The application data folder, `App_Data`. - + class provides a set of methods for implementing a virtual file system for a Web application. In a virtual file system, the files and directories are managed by a data store other than the file system provided by the server's operating system. For example, you can use a virtual file system to store content in a SQL Server database. + + You can store any file that is processed on request in a virtual file system. This includes: + +- ASP.NET pages, master pages, user controls, and other objects. + +- Standard Web pages with extensions such as .htm and .jpg. + +- Any custom extension mapped to a instance. + +- Any named theme in the `App_Theme` folder. + + You cannot store ASP.NET application folders or files that generate application-level assemblies in a virtual file system. This includes: + +- The Global.asax file. + +- Web.config files. + +- Site map data files used by the . + +- Directories that contain application assemblies or that generate application assemblies: `Bin`, `App_Code`, `App_GlobalResources`, any `App_LocalResources`. + +- The application data folder, `App_Data`. + > [!NOTE] -> If a Web site is precompiled for deployment, content provided by a instance is not compiled, and no instances are used by the precompiled site. - -## Registering a VirtualPathProvider - A custom instance should be registered with the ASP.NET compilation system by using the method before any page parsing or compilation is performed by the Web application. - - Typically, a instance is registered in an `AppInitialize` method defined in the `App_Code` directory, or during the `Application_Start` event in the `Global.asax` file. For an example of registering a instance in an `AppInitialize` method, see the Example section. - - You can register a instance during other events, but pages compiled and cached before the instance is registered will not be invalidated, even if the new instance would now provide the source for the previously compiled page. - - - -## Examples - The following code example is a class implementation that creates a virtual file system using information stored in a object. The code example works with the code examples for the and classes to provide virtual resources from a data store that is loaded into a object. - - This example has four parts: the class implementation, an XML data file used to populate the object, an `AppStart` object that contains an `AppInitialize` method used to register the class with the compilation system, and an ASP.NET page that provides links to the virtual files. - - To use this sample code in an application, follow these steps. - -1. Create a sample application on your Web server. - -2. Copy the source code for the custom object (see below) into a file in the application's `App_Code` directory. - -3. Copy the source code for the custom object (see the Example section in the class overview topic) into a file in the application's `App_Code` directory. - -4. Copy the source code for the custom object (see the Example section in the class overview topic) into a file in the application's `App_Code` directory. - -5. Copy the source code for the `AppStart` object (see below) into a file in the application's `App_Code` directory. - -6. Copy the XML data (see below) into a file named `XMLData.xml` into a file in the application's `App_Data` directory. - -7. Copy the `default.aspx` file (see below) into the root directory of the sample application. Use a Web browser to open the `default.aspx` file, and then click the links on the page to see the contents of the virtual files. - - The first example is a custom class. The and methods are overridden to indicate whether a requested directory is present in the virtual file system. The and methods are overridden to return custom and instances containing information from the virtual file system. - - The class also provides a `GetVirtualData` method used by the and classes to access the object containing the virtual file system data. In a production implementation, this method would typically be implemented in a business object responsible for interacting with the data store. - +> If a Web site is precompiled for deployment, content provided by a instance is not compiled, and no instances are used by the precompiled site. + +## Registering a VirtualPathProvider + A custom instance should be registered with the ASP.NET compilation system by using the method before any page parsing or compilation is performed by the Web application. + + Typically, a instance is registered in an `AppInitialize` method defined in the `App_Code` directory, or during the `Application_Start` event in the `Global.asax` file. For an example of registering a instance in an `AppInitialize` method, see the Example section. + + You can register a instance during other events, but pages compiled and cached before the instance is registered will not be invalidated, even if the new instance would now provide the source for the previously compiled page. + + + +## Examples + The following code example is a class implementation that creates a virtual file system using information stored in a object. The code example works with the code examples for the and classes to provide virtual resources from a data store that is loaded into a object. + + This example has four parts: the class implementation, an XML data file used to populate the object, an `AppStart` object that contains an `AppInitialize` method used to register the class with the compilation system, and an ASP.NET page that provides links to the virtual files. + + To use this sample code in an application, follow these steps. + +1. Create a sample application on your Web server. + +2. Copy the source code for the custom object (see below) into a file in the application's `App_Code` directory. + +3. Copy the source code for the custom object (see the Example section in the class overview topic) into a file in the application's `App_Code` directory. + +4. Copy the source code for the custom object (see the Example section in the class overview topic) into a file in the application's `App_Code` directory. + +5. Copy the source code for the `AppStart` object (see below) into a file in the application's `App_Code` directory. + +6. Copy the XML data (see below) into a file named `XMLData.xml` into a file in the application's `App_Data` directory. + +7. Copy the `default.aspx` file (see below) into the root directory of the sample application. Use a Web browser to open the `default.aspx` file, and then click the links on the page to see the contents of the virtual files. + + The first example is a custom class. The and methods are overridden to indicate whether a requested directory is present in the virtual file system. The and methods are overridden to return custom and instances containing information from the virtual file system. + + The class also provides a `GetVirtualData` method used by the and classes to access the object containing the virtual file system data. In a production implementation, this method would typically be implemented in a business object responsible for interacting with the data store. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet20"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet20"::: - - The second example is the XML data file used to populate the object returned by the custom object. This XML data is used to demonstrate using the , , and objects to retrieve data from external data and is not intended to represent a production-quality data store. - -``` - - - - - - - - - - - - - - - - - - - -``` - - The third example provides an `AppStart` object that contains an `AppInitialize` method. This method is called during the initialization of an ASP.NET application to perform any custom initialization required. In this case, it registers the custom object with the ASP.NET build system. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet20"::: + + The second example is the XML data file used to populate the object returned by the custom object. This XML data is used to demonstrate using the , , and objects to retrieve data from external data and is not intended to represent a production-quality data store. + +``` + + + + + + + + + + + + + + + + + + + +``` + + The third example provides an `AppStart` object that contains an `AppInitialize` method. This method is called during the initialization of an ASP.NET application to perform any custom initialization required. In this case, it registers the custom object with the ASP.NET build system. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/AppStart.cs" id="Snippet10"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/AppStart.vb" id="Snippet10"::: - - The last example is an ASP.NET page that contains links to the virtual files contained in the virtual file system. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/AppStart.vb" id="Snippet10"::: + + The last example is an ASP.NET page that contains links to the virtual files contained in the virtual file system. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/Default.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/Default.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/Default.aspx" id="Snippet1"::: + ]]> - When you inherit from , you must override the following members: - -- - -- - - If your custom class supports directories in the virtual file system, you must override the following members. - -- - + When you inherit from , you must override the following members: + +- + +- + + If your custom class supports directories in the virtual file system, you must override the following members. + +- + - Note: If your virtual file system will contain themes for the Web site (by creating a virtual App_Themes directory), your custom class must support directories. - + A custom class works with classes derived from the and classes. You should implement derived classes from these types to provide file and directory information from your virtual file system. For an example of a custom implementation, see the Example section of the class overview topic. For an example of a custom implementation, see the Example section of the class overview topic. @@ -188,19 +188,19 @@ Initializes the class for use by an inherited class instance. This constructor can be called only by an inherited class. - constructor, defer any initialization that must occur after the object is registered to the method. - - - -## Examples - The following code example is an implementation of the constructor that initializes a custom class. For the full code required to run the example, see the Example section of the class overview topic. - + constructor, defer any initialization that must occur after the object is registered to the method. + + + +## Examples + The following code example is an implementation of the constructor that initializes a custom class. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet25"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet25"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet25"::: + ]]> @@ -231,18 +231,18 @@ Combines a base path with a relative path to return a complete path to a virtual resource. The complete path to a virtual resource. - method to inspect the contents of a relative path to a virtual resource and perform any modifications required. - - The default implementation combines the `basePath` and `relativePath` parameters according to standard ASP.NET path processing. - + method to inspect the contents of a relative path to a virtual resource and perform any modifications required. + + The default implementation combines the `basePath` and `relativePath` parameters according to standard ASP.NET path processing. + ]]> - If you override the default implementation of the method, you are required to convert any special syntax with the parameter to a valid virtual path. You are responsible for syntax checking, path validation, and handling malformed input, as well as edge cases for well-formed input. - + If you override the default implementation of the method, you are required to convert any special syntax with the parameter to a valid virtual path. You are responsible for syntax checking, path validation, and handling malformed input, as well as edge cases for well-formed input. + In most cases it will not be necessary to override the default method. However, if you do need to modify the path, we recommend that you limit your implementation to modifying tokens specific to your virtual path provider in the parameter, and that you then call the base implementation to perform normal ASP.NET path processing @@ -272,24 +272,24 @@ if the directory exists in the virtual file system; otherwise, . - method to indicate to the compilation system that the resource represented by `virtualDir` exists in the virtual file system provided by this instance. - - If your custom class does not support directories, the method should return `false`. - + method to indicate to the compilation system that the resource represented by `virtualDir` exists in the virtual file system provided by this instance. + + If your custom class does not support directories, the method should return `false`. + > [!NOTE] -> If your virtual file system will contain themes for the Web site (by creating a virtual `App_Themes` directory), your custom class must support directories. - - - -## Examples - The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. - +> If your virtual file system will contain themes for the Web site (by creating a virtual `App_Themes` directory), your custom class must support directories. + + + +## Examples + The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet22"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet22"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet22"::: + ]]> @@ -319,19 +319,19 @@ if the file exists in the virtual file system; otherwise, . - method to indicate to the compilation system that the resource represented by `virtualPath` exists in the virtual file system provided by this instance. - - - -## Examples - The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. - + method to indicate to the compilation system that the resource represented by `virtualPath` exists in the virtual file system provided by this instance. + + + +## Examples + The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet21"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet21"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet21"::: + ]]> @@ -364,19 +364,19 @@ Creates a cache dependency based on the specified virtual paths. A object for the specified virtual resources. - method returns `null`. To cache virtual resources for later use you must override either the method or the method. - - - -## Examples - The following code example implements the method for a custom class. For the full code required to run the example, see the Example section of the class overview topic. - + method returns `null`. To cache virtual resources for later use you must override either the method or the method. + + + +## Examples + The following code example implements the method for a custom class. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet28"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet28"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet28"::: + ]]> @@ -405,11 +405,11 @@ Returns a cache key to use for the specified virtual path. A cache key for the specified virtual resource. - method to provide a custom cache key for virtual resources. If you do not override the method, the virtual path is used for the cache key. - + method to provide a custom cache key for virtual resources. If you do not override the method, the virtual path is used for the cache key. + ]]> @@ -441,24 +441,24 @@ Gets a virtual directory from the virtual file system. A descendent of the class that represents a directory in the virtual file system. - method returns a descendent of the class that contains the file and directories contained in the directory specified in the `virtualDir` parameter. - - If your custom class does not support directories, the method should return `null`. - + method returns a descendent of the class that contains the file and directories contained in the directory specified in the `virtualDir` parameter. + + If your custom class does not support directories, the method should return `null`. + > [!NOTE] -> If your virtual file system will contain themes for the Web site (by creating a virtual `App_Themes` directory), your custom class must support directories. - - - -## Examples - The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. - +> If your virtual file system will contain themes for the Web site (by creating a virtual `App_Themes` directory), your custom class must support directories. + + + +## Examples + The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet24"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet24"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet24"::: + ]]> @@ -487,19 +487,19 @@ Gets a virtual file from the virtual file system. A descendent of the class that represents a file in the virtual file system. - method returns a descendent of the class that represents the file specified by the `virtualPath` parameter. - - - -## Examples - The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. - + method returns a descendent of the class that represents the file specified by the `virtualPath` parameter. + + + +## Examples + The following code example is an implementation of the method in a custom class. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet23"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet23"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet23"::: + ]]> @@ -530,11 +530,11 @@ Returns a hash of the specified virtual paths. A hash of the specified virtual paths. - method to provide a hash of the dependencies for a virtual-file-system resource. - + method to provide a hash of the dependencies for a virtual-file-system resource. + ]]> @@ -559,19 +559,19 @@ Initializes the instance. - method is called after the provider is registered with the ASP.NET compilation system. The method is used to provide any initialization required after the instance is placed into the environment the application occupies. - - - -## Examples - The following code example is an implementation of the method that sets the path to a data file from the application's instance. For the full code required to run the example, see the Example section of the class overview topic. - + method is called after the provider is registered with the ASP.NET compilation system. The method is used to provide any initialization required after the instance is placed into the environment the application occupies. + + + +## Examples + The following code example is an implementation of the method that sets the path to a data file from the application's instance. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet26"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet26"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet26"::: + ]]> @@ -597,11 +597,11 @@ Gives the object an infinite lifetime by preventing a lease from being created. Always . - method in its base class. It always returns `null` and thereby prevents a lease from being created that would limit the object's lifetime. - + method in its base class. It always returns `null` and thereby prevents a lease from being created that would limit the object's lifetime. + ]]> @@ -630,11 +630,11 @@ Returns a stream from a virtual file. A read-only object for the specified virtual file or resource. - method is a convenience method that enables you to get a stream from a virtual file without creating a instance. - + method is a convenience method that enables you to get a stream from a virtual file without creating a instance. + ]]> @@ -665,21 +665,21 @@ Gets a reference to a previously registered object in the compilation system. The next object in the compilation system. - object is registered with the ASP.NET compilation system, it is added to a chain of providers. Use the property to hand processing off to the previous object in the chain if the requested path is not provided by this instance. - - The chain of path providers always ends with the default ASP.NET provider, which serves files from the file system. - - - -## Examples - The following code example is an implementation of the method. If the requested virtual directory does not begin with the string `"/vrdir"`, the method uses the property to pass the request to the next object in the chain. For the full code required to run the example, see the Example section of the class overview topic. - + object is registered with the ASP.NET compilation system, it is added to a chain of providers. Use the property to hand processing off to the previous object in the chain if the requested path is not provided by this instance. + + The chain of path providers always ends with the default ASP.NET provider, which serves files from the file system. + + + +## Examples + The following code example is an implementation of the method. If the requested virtual directory does not begin with the string `"/vrdir"`, the method uses the property to pass the request to the next object in the chain. For the full code required to run the example, see the Example section of the class overview topic. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/CS/SamplePathProvider.cs" id="Snippet23"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet23"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.hosting.virtualpathprovider/VB/SamplePathProvider.vb" id="Snippet23"::: + ]]> diff --git a/xml/System.Web.Management/EventNotificationType.xml b/xml/System.Web.Management/EventNotificationType.xml index 10f682e0e94..9297a46b73a 100644 --- a/xml/System.Web.Management/EventNotificationType.xml +++ b/xml/System.Web.Management/EventNotificationType.xml @@ -16,19 +16,19 @@ Specifies the type of event notification. - enumeration provides four notification types that specify how the notification should take place. The four notification types are as follows: - -- Flush - -- Regular - -- Unbuffered - -- Urgent - + enumeration provides four notification types that specify how the notification should take place. The four notification types are as follows: + +- Flush + +- Regular + +- Unbuffered + +- Urgent + ]]> diff --git a/xml/System.Web.Management/WebAuditEvent.xml b/xml/System.Web.Management/WebAuditEvent.xml index 9789ff2e10c..3faa850138b 100644 --- a/xml/System.Web.Management/WebAuditEvent.xml +++ b/xml/System.Web.Management/WebAuditEvent.xml @@ -17,67 +17,67 @@ Serves as the base class for all ASP.NET health-monitoring audit events. - namespace contains the health-event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. - - The class is the base class from which the ASP.NET health-monitoring audit-event classes derive. The audit events generate information about security-related operations in a Web application and provide both a success and failure event for each audited operation. - - The health-monitoring system can audit both successful and unsuccessful events, which means an application can be monitored for both normal and malfunctioning conditions. By default, only the failure audit events are recorded. - - The following operations are audited by ASP.NET, and may generate success-or-failure health-monitoring audit events: - -- Login attempts made by users of an ASP.NET application. For more details about this auditing, see and . - -- Security-related events, such as authentication failures, failed resource access attempts, and other security-related events. The log of these events can be useful when investigating an intrusion or attack on the application. By default, no auditing support is provided for authorization failures of anonymous users. For more details about failure event audits, see and . - -- Custom events raised by an ASP.NET application. You can audit custom events by extending the functionality provided by the class and derived classes - + namespace contains the health-event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. + + The class is the base class from which the ASP.NET health-monitoring audit-event classes derive. The audit events generate information about security-related operations in a Web application and provide both a success and failure event for each audited operation. + + The health-monitoring system can audit both successful and unsuccessful events, which means an application can be monitored for both normal and malfunctioning conditions. By default, only the failure audit events are recorded. + + The following operations are audited by ASP.NET, and may generate success-or-failure health-monitoring audit events: + +- Login attempts made by users of an ASP.NET application. For more details about this auditing, see and . + +- Security-related events, such as authentication failures, failed resource access attempts, and other security-related events. The log of these events can be useful when investigating an intrusion or attack on the application. By default, no auditing support is provided for authorization failures of anonymous users. For more details about failure event audits, see and . + +- Custom events raised by an ASP.NET application. You can audit custom events by extending the functionality provided by the class and derived classes + > [!NOTE] -> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. - - - -## Examples - The following code example shows how to derive from the class to create a custom audit event. - +> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. + + + +## Examples + The following code example shows how to derive from the class to create a custom audit event. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/CS/webauditevent.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet1"::: - - The following is an excerpt of the configuration file that enables ASP.NET to use the event. - -``` - - - - - - - - - - - - - - - -``` - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet1"::: + + The following is an excerpt of the configuration file that enables ASP.NET to use the event. + +``` + + + + + + + + + + + + + + + +``` + ]]> @@ -123,19 +123,19 @@ The code associated with the event. When you implement a custom event, the event code must be greater than . Initializes a new instance of the class using the supplied parameters. - object, but you can call this constructor when implementing your own event type that inherits from this class. - - - -## Examples - The following code example shows how to call this constructor. This code example is part of a larger example provided for the class. - + object, but you can call this constructor when implementing your own event type that inherits from this class. + + + +## Examples + The following code example shows how to call this constructor. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/CS/webauditevent.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet2"::: + ]]> @@ -172,19 +172,19 @@ The value that specifies the detailed identifier for the event. Initializes a new instance of the class with specified event parameters. - object, but you can call this constructor when implementing your own event type that inherits from this class. - - - -## Examples - The following code example shows how to call this constructor. This code example is part of a larger example provided for the class. - + object, but you can call this constructor when implementing your own event type that inherits from this class. + + + +## Examples + The following code example shows how to call this constructor. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/CS/webauditevent.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet3"::: + ]]> @@ -209,19 +209,19 @@ Get the information associated with the Web request. A that contains the information associated with the Web request. - property to help in the discovery of the causes of a malfunction. - - - -## Examples - The following code example shows how to obtain request information through the property. - + property to help in the discovery of the causes of a malfunction. + + + +## Examples + The following code example shows how to obtain request information through the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/CS/webauditevent.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebAuditEvent/VB/webauditevent.vb" id="Snippet5"::: + ]]> diff --git a/xml/System.Web.Management/WebAuthenticationFailureAuditEvent.xml b/xml/System.Web.Management/WebAuthenticationFailureAuditEvent.xml index 3c064f9c5f4..3c27c32f2a5 100644 --- a/xml/System.Web.Management/WebAuthenticationFailureAuditEvent.xml +++ b/xml/System.Web.Management/WebAuthenticationFailureAuditEvent.xml @@ -17,31 +17,31 @@ Provides information about ASP.NET authentication failures. - events are raised by default by ASP.NET. - + events are raised by default by ASP.NET. + > [!NOTE] -> By default ASP.NET is configured to log audit failure conditions only, as logging success conditions can severely strain system resources. You can always configure the system to log the success conditions. - -- Forms Authentication. While success audits include the user name that was authenticated; failure audits do not include the user name, since they typically result from a ticket that failed decryption or validation. Both contain the client IP address. The related event audit code is . - -- Membership. Both success and failure audits contain the username that was attempted. Neither form of audit will contain the password that was attempted, because that would risk persisting a valid password in the log. The related event audit code is . - - When a is raised, by default it updates the Audit Authentication Failure Events Raised performance counter. To view this performance counter in System Monitor (PerfMon), in the **Add Counters** window select `ASP.NET` in the **Performance** object drop-down list, select the **Authentication Failure Events Raised** performance counter, and click the **Add** button. For more information, see [Using the System Monitor (PerfMon) with ASP.NET Applications](https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc784965(v=ws.10)). - +> By default ASP.NET is configured to log audit failure conditions only, as logging success conditions can severely strain system resources. You can always configure the system to log the success conditions. + +- Forms Authentication. While success audits include the user name that was authenticated; failure audits do not include the user name, since they typically result from a ticket that failed decryption or validation. Both contain the client IP address. The related event audit code is . + +- Membership. Both success and failure audits contain the username that was attempted. Neither form of audit will contain the password that was attempted, because that would risk persisting a valid password in the log. The related event audit code is . + + When a is raised, by default it updates the Audit Authentication Failure Events Raised performance counter. To view this performance counter in System Monitor (PerfMon), in the **Add Counters** window select `ASP.NET` in the **Performance** object drop-down list, select the **Authentication Failure Events Raised** performance counter, and click the **Add** button. For more information, see [Using the System Monitor (PerfMon) with ASP.NET Applications](https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc784965(v=ws.10)). + > [!NOTE] -> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. - - - -## Examples - The following code example shows how to use the class. - +> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. + + + +## Examples + The following code example shows how to use the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/CS/WebAuthenticationFailureAuditEvent.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet1"::: + ]]> @@ -84,19 +84,19 @@ The name of the user to authenticate. Initializes a new instance of the class with the specified event parameters. - constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. - - - -## Examples - The following code example shows how to customize this constructor. - + constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. + + + +## Examples + The following code example shows how to customize this constructor. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/CS/WebAuthenticationFailureAuditEvent.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet2"::: + ]]> @@ -129,19 +129,19 @@ The name of the user to authenticate. Initializes a new instance of the class with the specified event parameters. - constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. - - - -## Examples - The following code example shows how to customize this constructor. - + constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. + + + +## Examples + The following code example shows how to customize this constructor. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/CS/WebAuthenticationFailureAuditEvent.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet3"::: + ]]> @@ -172,19 +172,19 @@ Gets the name of the user to authenticate. The name of the user to authenticate. - property. - + property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/CS/WebAuthenticationFailureAuditEvent.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationFailureAuditEvent/VB/WebAuthenticationFailureAuditEvent.vb" id="Snippet3"::: + ]]> diff --git a/xml/System.Web.Management/WebAuthenticationSuccessAuditEvent.xml b/xml/System.Web.Management/WebAuthenticationSuccessAuditEvent.xml index 6e0aa4d98cc..d5c47ce5a42 100644 --- a/xml/System.Web.Management/WebAuthenticationSuccessAuditEvent.xml +++ b/xml/System.Web.Management/WebAuthenticationSuccessAuditEvent.xml @@ -17,74 +17,74 @@ Provides information about successful authentication events. - namespace contains the health-event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. - - The following list describes the features for which ASP.NET raises events of type . - + namespace contains the health-event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. + + The following list describes the features for which ASP.NET raises events of type . + > [!NOTE] -> By default ASP.NET is configured to log audit failure conditions only, as logging success conditions can severely strain system resources. You can always configure the system to log the success conditions. - -- Forms Authentication. Successful conditions are audited. Success audits include the user name that was authenticated. Instead, failure audits do not include the user name, since they typically result from a ticket that failed decryption or validation. Both contain the client IP address. The related event audit code is . - -- Membership. Successful conditions are audited. Both success and failure audits contain the username that was attempted. Neither form of audit will contain the password that was attempted, because that would risk persisting a valid password in the log. The related event audit code is . - - When a is raised, by default it updates the Authentication Success Events Raised performance counter. To view this performance counter in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** in the **Performance object** drop-down list, select the Authentication Success Events Raised performance counter, and click the **Add** button. For more information, see [Using the System Monitor (PerfMon) with ASP.NET Applications](https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc784965(v=ws.10)). - +> By default ASP.NET is configured to log audit failure conditions only, as logging success conditions can severely strain system resources. You can always configure the system to log the success conditions. + +- Forms Authentication. Successful conditions are audited. Success audits include the user name that was authenticated. Instead, failure audits do not include the user name, since they typically result from a ticket that failed decryption or validation. Both contain the client IP address. The related event audit code is . + +- Membership. Successful conditions are audited. Both success and failure audits contain the username that was attempted. Neither form of audit will contain the password that was attempted, because that would risk persisting a valid password in the log. The related event audit code is . + + When a is raised, by default it updates the Authentication Success Events Raised performance counter. To view this performance counter in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** in the **Performance object** drop-down list, select the Authentication Success Events Raised performance counter, and click the **Add** button. For more information, see [Using the System Monitor (PerfMon) with ASP.NET Applications](https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc784965(v=ws.10)). + > [!NOTE] -> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. - - - -## Examples - This code example has two parts: a configuration-file excerpt, followed by code that shows how to customize the event. - - This following is an excerpt of the configuration file's `provider` and `eventMappings` sections. They are already set by default. The only thing you need to do is to provide the setup for the `rules` element in the `healthMonitoring` section. - -``` - - - - // Configure the provider to process - // the health events. - - - - - - // Configure the custom event - // to handle the audit events. - - - - - - // Establish the connection between custom event - // and the provider that must process it. - \ - - - -``` - - The following code shows how to customize the event. - +> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. + + + +## Examples + This code example has two parts: a configuration-file excerpt, followed by code that shows how to customize the event. + + This following is an excerpt of the configuration file's `provider` and `eventMappings` sections. They are already set by default. The only thing you need to do is to provide the setup for the `rules` element in the `healthMonitoring` section. + +``` + + + + // Configure the provider to process + // the health events. + + + + + + // Configure the custom event + // to handle the audit events. + + + + + + // Establish the connection between custom event + // and the provider that must process it. + \ + + + +``` + + The following code shows how to customize the event. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/CS/WebAuthenticationSuccessAuditEvent.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet1"::: + ]]> @@ -127,22 +127,22 @@ The name of the authenticated user. Initializes the class using the supplied parameters. - object, but you can call this constructor when implementing your own event type that inherits from this class. - + object, but you can call this constructor when implementing your own event type that inherits from this class. + > [!NOTE] -> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. - - - -## Examples - The following code example shows how to customize this constructor. - +> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. + + + +## Examples + The following code example shows how to customize this constructor. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/CS/WebAuthenticationSuccessAuditEvent.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet2"::: + ]]> @@ -175,22 +175,22 @@ The name of the authenticated user. Initializes the class using the supplied parameters. - object, but you can call this constructor when implementing your own event type that inherits from this class. - + object, but you can call this constructor when implementing your own event type that inherits from this class. + > [!NOTE] -> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. - - - -## Examples - The following code example shows how to customize this constructor. - +> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. + + + +## Examples + The following code example shows how to customize this constructor. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/CS/WebAuthenticationSuccessAuditEvent.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet3"::: + ]]> @@ -221,19 +221,19 @@ Gets the name of the authenticated user. The name of the authenticated user. - property. - + property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/CS/WebAuthenticationSuccessAuditEvent.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/system.web.management.WebAuthenticationSuccessAuditEvent/VB/WebAuthenticationSuccessAuditEvent.vb" id="Snippet3"::: + ]]> diff --git a/xml/System.Web.Management/WebBaseErrorEvent.xml b/xml/System.Web.Management/WebBaseErrorEvent.xml index 3e577065ec7..77493bfc3dc 100644 --- a/xml/System.Web.Management/WebBaseErrorEvent.xml +++ b/xml/System.Web.Management/WebBaseErrorEvent.xml @@ -17,62 +17,62 @@ Serves as the base class for all the health-monitoring error events. - namespace contains the health-event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. - - The class is the base class for the health-monitoring events that represent error conditions. ASP.NET uses and its derived types to indicate error conditions during the lifetime of a Web application. - + namespace contains the health-event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. + + The class is the base class for the health-monitoring events that represent error conditions. ASP.NET uses and its derived types to indicate error conditions during the lifetime of a Web application. + > [!NOTE] -> In most cases you will be able to use the ASP.NET health-monitoring types as implemented and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. - - - -## Examples - The following code example has two parts. The first is an excerpt of a configuration file that enables ASP.NET health monitoring to use an event derived from the class. The second shows how to derive from the class to create the custom event. - -``` - - - - - - - - - - - - - - - - - - - -``` - - The following code shows how to derive from the class to create a custom event. - +> In most cases you will be able to use the ASP.NET health-monitoring types as implemented and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. + + + +## Examples + The following code example has two parts. The first is an excerpt of a configuration file that enables ASP.NET health monitoring to use an event derived from the class. The second shows how to derive from the class to create the custom event. + +``` + + + + + + + + + + + + + + + + + + + +``` + + The following code shows how to derive from the class to create a custom event. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebErrorEvent/CS/weberrorevent.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebErrorEvent/VB/weberrorevent.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebErrorEvent/VB/weberrorevent.vb" id="Snippet1"::: + ]]> @@ -116,19 +116,19 @@ The associated with the error. Initializes a new instance of the class. - class. - + class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebBaseErrorEvent/CS/webbaseerrorevent.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebBaseErrorEvent/VB/webbaseerrorevent.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebBaseErrorEvent/VB/webbaseerrorevent.vb" id="Snippet2"::: + ]]> @@ -162,19 +162,19 @@ The associated with the error. Initializes a new instance of the class. - class. - + class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebBaseErrorEvent/CS/webbaseerrorevent.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebBaseErrorEvent/VB/webbaseerrorevent.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebBaseErrorEvent/VB/webbaseerrorevent.vb" id="Snippet3"::: + ]]> @@ -206,11 +206,11 @@ Gets the associated with the error. The associated with the error. - , you must ensure that your custom error event handles this exception. - + , you must ensure that your custom error event handles this exception. + ]]> @@ -235,19 +235,19 @@ Increments the event-error performance-related counters. - , which increments the Events Raised counter. This counter tracks the total number of events raised. - - To view these performance counters in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** in the **Performance object** drop-down list, select the performance counter you want to view, and click the **Add** button. For more information, see [Using the System Monitor (PerfMon) with ASP.NET Applications](https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc784965(v=ws.10)) in the IIS documentation on MSDN. - + , which increments the Events Raised counter. This counter tracks the total number of events raised. + + To view these performance counters in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** in the **Performance object** drop-down list, select the performance counter you want to view, and click the **Add** button. For more information, see [Using the System Monitor (PerfMon) with ASP.NET Applications](https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2003/cc784965(v=ws.10)) in the IIS documentation on MSDN. + ]]> diff --git a/xml/System.Web.Management/WebFailureAuditEvent.xml b/xml/System.Web.Management/WebFailureAuditEvent.xml index 93bd19a39ca..690e73be212 100644 --- a/xml/System.Web.Management/WebFailureAuditEvent.xml +++ b/xml/System.Web.Management/WebFailureAuditEvent.xml @@ -26,11 +26,11 @@ By default, ASP.NET is configured to raise the event for the following features: -- File authorization. ASP.NET attempts file authorization only when a Windows Identity is associated with the request. The related event audit code is . +- File authorization. ASP.NET attempts file authorization only when a Windows Identity is associated with the request. The related event audit code is . -- URL authorization. This governs unauthorized attempts to access a URL resource. Failed attempts by an anonymous user are not audited, because anonymous authentication failure is acceptable in most circumstances. The related event audit code is . +- URL authorization. This governs unauthorized attempts to access a URL resource. Failed attempts by an anonymous user are not audited, because anonymous authentication failure is acceptable in most circumstances. The related event audit code is . -- Generic unhandled or security unhandled conditions. The following is a list of the event codes related to these conditions: +- Generic unhandled or security unhandled conditions. The following is a list of the event codes related to these conditions: - diff --git a/xml/System.Web.Management/WebSuccessAuditEvent.xml b/xml/System.Web.Management/WebSuccessAuditEvent.xml index e379afbeea4..c2bd6a6ecc0 100644 --- a/xml/System.Web.Management/WebSuccessAuditEvent.xml +++ b/xml/System.Web.Management/WebSuccessAuditEvent.xml @@ -17,72 +17,72 @@ Provides information about successful security events. - namespace contains the health event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. - - The class is used when a successful security-related operation occurs. An example of this is a successful URL authorization for a Web request. - - The following list describes the features for which events of type are raised by ASP.NET: - -- File Authorization. Successful conditions are audited. File authorization is only attempted by ASP.NET when a Windows Identity is associated with the request. The related event audit code is . - -- URL Authorization. It signifies access of a URL resource for which authorization is granted. Successful conditions are audited. The related event audit code is . - -- Other security conditions. The following is a list of the related event codes: - - - - - - - - When a is raised, ASP.NET health monitoring increments the related Audit Success Events Raised performance counter and then checks the `healthMonitoring` configuration to determine whether any providers subscribe to the event. If providers subscribe to the event, ASP.NET dispatches the event to them for processing. - + namespace contains the health event types responsible for packaging application health-status data and the provider types responsible for processing this data. It also contains supporting types that help during the management of health events. + + The class is used when a successful security-related operation occurs. An example of this is a successful URL authorization for a Web request. + + The following list describes the features for which events of type are raised by ASP.NET: + +- File Authorization. Successful conditions are audited. File authorization is only attempted by ASP.NET when a Windows Identity is associated with the request. The related event audit code is . + +- URL Authorization. It signifies access of a URL resource for which authorization is granted. Successful conditions are audited. The related event audit code is . + +- Other security conditions. The following is a list of the related event codes: + + - + + - + + When a is raised, ASP.NET health monitoring increments the related Audit Success Events Raised performance counter and then checks the `healthMonitoring` configuration to determine whether any providers subscribe to the event. If providers subscribe to the event, ASP.NET dispatches the event to them for processing. + > [!NOTE] -> To view the Audit Success Event Raised performance counter in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** from the **Performance object** drop-down list, select the **Audit Success Event Raised** performance counter, and click the **Add** button. For more information, see [Monitoring ASP.NET Application Performance](https://msdn.microsoft.com/library/c96da1d1-6077-48d3-88e2-d9127ed91cf5). - - Because success audits represent an expected condition, you may not want to subscribe to them. You can subscribe to them in order to provide access auditing for the site. - +> To view the Audit Success Event Raised performance counter in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** from the **Performance object** drop-down list, select the **Audit Success Event Raised** performance counter, and click the **Add** button. For more information, see [Monitoring ASP.NET Application Performance](https://msdn.microsoft.com/library/c96da1d1-6077-48d3-88e2-d9127ed91cf5). + + Because success audits represent an expected condition, you may not want to subscribe to them. You can subscribe to them in order to provide access auditing for the site. + > [!NOTE] -> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. - - - -## Examples - The following code example shows how to derive from the class to create a custom audit event. - +> In most cases you will be able to use the ASP.NET health-monitoring types as implemented, and you will control the health-monitoring system by specifying values in the `healthMonitoring` configuration section. You can also derive from the health-monitoring types to create your own custom events and providers. For an example of deriving from the class, see the example provided in this topic. + + + +## Examples + The following code example shows how to derive from the class to create a custom audit event. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/CS/websuccessauditevent.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/VB/websuccessauditevent.vb" id="Snippet1"::: - - The following example is an excerpt of the configuration file that enables ASP.NET health monitoring to use the event. - -``` - - - - - - - - - - - -``` - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/VB/websuccessauditevent.vb" id="Snippet1"::: + + The following example is an excerpt of the configuration file that enables ASP.NET health monitoring to use the event. + +``` + + + + + + + + + + + +``` + ]]> @@ -130,22 +130,22 @@ The code associated with the event. When you implement a custom event, the event code must be greater than . Initializes a new instance of the class using the supplied parameters. - object, but you can call this constructor when implementing your own event type that inherits from this class. - + object, but you can call this constructor when implementing your own event type that inherits from this class. + > [!NOTE] -> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. - - - -## Examples - The following code example shows how to call this constructor in the `SampleWebSuccessAuditEvent` class. This code example is part of a larger example provided for the class. - +> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. + + + +## Examples + The following code example shows how to call this constructor in the `SampleWebSuccessAuditEvent` class. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/CS/websuccessauditevent.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/VB/websuccessauditevent.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/VB/websuccessauditevent.vb" id="Snippet2"::: + ]]> @@ -182,22 +182,22 @@ The value that specifies the detailed identifier for the event. Initializes a new instance of the class using the supplied parameters. - object, but you can call this constructor when implementing your own event type that inherits from this class. - + object, but you can call this constructor when implementing your own event type that inherits from this class. + > [!NOTE] -> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. - - - -## Examples - The following code example shows how to call this constructor in the `SampleWebSuccessAuditEvent` class. This code example is part of a larger example provided for the class. - +> The constructor is not intended to be used directly from your code. It is called by ASP.NET. You can call the constructor when deriving from the class. + + + +## Examples + The following code example shows how to call this constructor in the `SampleWebSuccessAuditEvent` class. This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/CS/websuccessauditevent.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/VB/websuccessauditevent.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Management.WebSuccessAuditEvent/VB/websuccessauditevent.vb" id="Snippet3"::: + ]]> @@ -222,13 +222,13 @@ Increments the Audit Success Events Raised performance counter. - method, which increments the Events Raised counter. This counter tracks the total number of events raised. - - To view these performance counters in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** from the **Performance object** drop-down list, select the performance counter you want to view, and click the **Add** button. For more information, see [Monitoring ASP.NET Application Performance](https://msdn.microsoft.com/library/c96da1d1-6077-48d3-88e2-d9127ed91cf5). - + method, which increments the Events Raised counter. This counter tracks the total number of events raised. + + To view these performance counters in System Monitor (PerfMon), in the **Add Counters** window select **ASP.NET** from the **Performance object** drop-down list, select the performance counter you want to view, and click the **Add** button. For more information, see [Monitoring ASP.NET Application Performance](https://msdn.microsoft.com/library/c96da1d1-6077-48d3-88e2-d9127ed91cf5). + ]]> diff --git a/xml/System.Web.Profile/ProfileModule.xml b/xml/System.Web.Profile/ProfileModule.xml index de43a6734ea..ba3196f49aa 100644 --- a/xml/System.Web.Profile/ProfileModule.xml +++ b/xml/System.Web.Profile/ProfileModule.xml @@ -21,51 +21,51 @@ Manages the creation of the user profile and profile events. This class cannot be inherited. - to create the user profile and store it in the property of the current . - - The exposes the following events you can handle to configure authentication in your application: - -- The event, to migrate profile settings from an anonymous profile to an authenticated profile when an anonymous user logs in. - -- The event, to customize how the user profile is created. - -- The event, to control how the user profile is saved when the property is set to `true`. - - For information about enabling the user profile, see [profile Element (ASP.NET Settings Schema)](https://msdn.microsoft.com/library/ccb9bf3a-a044-464d-b89b-5cb5a3d389dd). - - - -## Examples - The following example shows a Web.config file that enables anonymous identification and profile properties that support anonymous users. - -``` - - - - - - - - - - - - - - - - - -``` - - The following code example shows the event included in the Global.asax file for an ASP.NET application. The event copies profile property values from the anonymous profile to the profile for the current user. - + to create the user profile and store it in the property of the current . + + The exposes the following events you can handle to configure authentication in your application: + +- The event, to migrate profile settings from an anonymous profile to an authenticated profile when an anonymous user logs in. + +- The event, to customize how the user profile is created. + +- The event, to control how the user profile is saved when the property is set to `true`. + + For information about enabling the user profile, see [profile Element (ASP.NET Settings Schema)](https://msdn.microsoft.com/library/ccb9bf3a-a044-464d-b89b-5cb5a3d389dd). + + + +## Examples + The following example shows a Web.config file that enables anonymous identification and profile properties that support anonymous users. + +``` + + + + + + + + + + + + + + + + + +``` + + The following code example shows the event included in the Global.asax file for an ASP.NET application. The event copies profile property values from the anonymous profile to the profile for the current user. + [!code-csharp[System.Web.Profile.ProfileManager#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileManager/CS/global.asax#1)] - [!code-vb[System.Web.Profile.ProfileManager#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager/VB/global.asax#1)] - + [!code-vb[System.Web.Profile.ProfileManager#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager/VB/global.asax#1)] + ]]> ASP.NET Profile Properties Overview @@ -93,13 +93,13 @@ Initializes a new instance of the class. - is created when an ASP.NET application is started. The calls the constructor to create the for the application. The is specified in the configuration for an application. - + is created when an ASP.NET application is started. The calls the constructor to create the for the application. The is specified in the configuration for an application. + ]]> ASP.NET Profile Properties Overview @@ -128,13 +128,13 @@ Releases all resources used by the . - is created when an ASP.NET application is started. The creates and initializes the for the application and calls the method when the object is released. The is specified in the configuration for an application. - + is created when an ASP.NET application is started. The creates and initializes the for the application and calls the method when the object is released. The is specified in the configuration for an application. + ]]> ASP.NET Profile Properties Overview @@ -166,13 +166,13 @@ The current application. Calls initialization code when a object is created. - is created when an ASP.NET application is started. The calls the method when it creates the for the application. The is specified in the configuration for an application. - + is created when an ASP.NET application is started. The calls the method when it creates the for the application. The is specified in the configuration for an application. + ]]> ASP.NET Profile Properties Overview @@ -197,43 +197,43 @@ Occurs when the anonymous user for a profile logs in. - event of the class in the Global.asax file for your ASP.NET application by using the `Profile_MigrateAnonymous` global event, as shown in the example for this topic. - - You can use the event to copy profile property values from an anonymous profile to an authenticated profile when a user who has been anonymously using your application logs in. - + event of the class in the Global.asax file for your ASP.NET application by using the `Profile_MigrateAnonymous` global event, as shown in the example for this topic. + + You can use the event to copy profile property values from an anonymous profile to an authenticated profile when a user who has been anonymously using your application logs in. + When an application that has the user profile enabled is started, ASP.NET creates a new class of type `ProfileCommon`, which inherits from the class. Strongly typed accessors are added to the `ProfileCommon` class for each property defined in the \ configuration section. A `GetProfile` method enables you to retrieve a `ProfileCommon` object based on a user name. You can use the `GetProfile` method of the current, authenticated profile to retrieve the property values of the anonymous profile. The anonymous property values can then be copied to the current profile for the authenticated user. - -## Examples - The following example shows a Web.config file that enables anonymous identification and profile properties that support anonymous users. - + +## Examples + The following example shows a Web.config file that enables anonymous identification and profile properties that support anonymous users. + ```xml - - - - - - - - - - - - - - - - - -``` - - The following code example shows the event included in the Global.asax file for an ASP.NET application. The event copies profile property values from the anonymous profile to the profile for the current user. - + + + + + + + + + + + + + + + + + +``` + + The following code example shows the event included in the Global.asax file for an ASP.NET application. The event copies profile property values from the anonymous profile to the profile for the current user. + [!code-csharp[System.Web.Profile.ProfileManager#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileManager/CS/global.asax#1)] - [!code-vb[System.Web.Profile.ProfileManager#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager/VB/global.asax#1)] - + [!code-vb[System.Web.Profile.ProfileManager#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager/VB/global.asax#1)] + ]]> ASP.NET Profile Properties Overview @@ -258,21 +258,21 @@ Occurs before the user profile is created. - event is raised during the event. You can access the event of the class in the Global.asax file for your ASP.NET application using the `Profile_Personalize` global event as shown in the example for this topic. - - You can use the event to specify a custom user profile. If the property value specified for the event handler for the event is set to a value that is not `null` when the event ends, then the will use the specified value of the property as the value of the property of the current . - - - -## Examples - The following code example shows the event declared in the Global.asax file for an application. The event code loads a user profile for a user based on role membership. - + event is raised during the event. You can access the event of the class in the Global.asax file for your ASP.NET application using the `Profile_Personalize` global event as shown in the example for this topic. + + You can use the event to specify a custom user profile. If the property value specified for the event handler for the event is set to a value that is not `null` when the event ends, then the will use the specified value of the property as the value of the property of the current . + + + +## Examples + The following code example shows the event declared in the Global.asax file for an application. The event code loads a user profile for a user based on role membership. + [!code-csharp[System.Web.Profile.ProfileManager.Personalize#12](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileManager.Personalize/CS/global.asax#12)] - [!code-vb[System.Web.Profile.ProfileManager.Personalize#12](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager.Personalize/VB/global.asax#12)] - + [!code-vb[System.Web.Profile.ProfileManager.Personalize#12](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager.Personalize/VB/global.asax#12)] + ]]> @@ -296,25 +296,25 @@ Occurs at the end of page execution if automatic profile saving is enabled. - event is raised at the end of page execution if the property is `true`. You can access the event of the class in the Global.asax file for your ASP.NET application using the `Profile_ProfileAutoSaving` global event, as shown in the example for this topic. - - The method checks the property value for each in the user profile to determine whether properties that are made up of primitive types, strings, or objects have been changed. The method cannot explicitly determine whether a custom class has changed. You can use the event to determine whether a custom object has been changed and then either to continue with the automatic save for modified objects or to cancel the automatic save if no objects have been modified. - - To cancel the automatic profile save operation, set the property to `false` in the event; otherwise, set the property to `true`. - - There may be multiple subscribers to the event. The will use the last value that the property is set to. As a result, it is recommended that you explicitly set the property in the event whether you are canceling or continuing with the automatic save, as you may need to overwrite the value set by an earlier subscriber. - - - -## Examples - The following code example shows the event included in the Global.asax file for an ASP.NET application. - + event is raised at the end of page execution if the property is `true`. You can access the event of the class in the Global.asax file for your ASP.NET application using the `Profile_ProfileAutoSaving` global event, as shown in the example for this topic. + + The method checks the property value for each in the user profile to determine whether properties that are made up of primitive types, strings, or objects have been changed. The method cannot explicitly determine whether a custom class has changed. You can use the event to determine whether a custom object has been changed and then either to continue with the automatic save for modified objects or to cancel the automatic save if no objects have been modified. + + To cancel the automatic profile save operation, set the property to `false` in the event; otherwise, set the property to `true`. + + There may be multiple subscribers to the event. The will use the last value that the property is set to. As a result, it is recommended that you explicitly set the property in the event whether you are canceling or continuing with the automatic save, as you may need to overwrite the value set by an earlier subscriber. + + + +## Examples + The following code example shows the event included in the Global.asax file for an ASP.NET application. + [!code-csharp[System.Web.Profile.ProfileManager.ProfileAutoSaving#11](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileManager.ProfileAutoSaving/CS/global.asax#11)] - [!code-vb[System.Web.Profile.ProfileManager.ProfileAutoSaving#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager.ProfileAutoSaving/VB/global.asax#11)] - + [!code-vb[System.Web.Profile.ProfileManager.ProfileAutoSaving#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileManager.ProfileAutoSaving/VB/global.asax#11)] + ]]> ASP.NET Profile Properties Overview diff --git a/xml/System.Web.Profile/ProfileProvider.xml b/xml/System.Web.Profile/ProfileProvider.xml index 41c7756504f..60778d2c12f 100644 --- a/xml/System.Web.Profile/ProfileProvider.xml +++ b/xml/System.Web.Profile/ProfileProvider.xml @@ -17,24 +17,24 @@ Defines the contract that ASP.NET implements to provide profile services using custom profile providers. - implementation. You can use the profile providers that are included with the .NET Framework (represented by the classes that derive from the abstract class), or you can implement your own provider by creating a new class that derives from . - - There are two primary reasons for creating a custom profile provider. - -- You need to store profile information in a data source that is not supported by the profile providers included with the .NET Framework, such as a FoxPro database, an Oracle database, or other data stores. - -- You need to manage profile information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. A common example of this would be user data that already exists in a SQL Server database for a company network or a Web site. - - The abstract class inherits from the abstract class, which inherits from the abstract class. Classes that implement must also implement the required members of the and abstract classes. For more information about implementing a profile provider, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - - - -## Examples - For an example of a implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + implementation. You can use the profile providers that are included with the .NET Framework (represented by the classes that derive from the abstract class), or you can implement your own provider by creating a new class that derives from . + + There are two primary reasons for creating a custom profile provider. + +- You need to store profile information in a data source that is not supported by the profile providers included with the .NET Framework, such as a FoxPro database, an Oracle database, or other data stores. + +- You need to manage profile information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. A common example of this would be user data that already exists in a SQL Server database for a company network or a Web site. + + The abstract class inherits from the abstract class, which inherits from the abstract class. Classes that implement must also implement the required members of the and abstract classes. For more information about implementing a profile provider, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + + + +## Examples + For an example of a implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + ]]> Implementing a Profile Provider @@ -63,11 +63,11 @@ Initializes a new instance of the class. - abstract class. Initialization values for a implementation are passed to the method implementation. - + abstract class. Initialization values for a implementation are passed to the method implementation. + ]]> Implementing a Profile Provider @@ -100,19 +100,19 @@ When overridden in a derived class, deletes all user-profile data for profiles in which the last activity date occurred before the specified date. The number of profiles deleted from the data source. - method is used to remove unused profile data from the data source. Only data for the `applicationName` specified in the configuration file is removed. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Profiles in which the occurs on or before the specified `userInactiveSinceDate` parameter value are deleted. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method is used to remove unused profile data from the data source. Only data for the `applicationName` specified in the configuration file is removed. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Profiles in which the occurs on or before the specified `userInactiveSinceDate` parameter value are deleted. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet3"::: + ]]> Implementing a Profile Provider @@ -152,19 +152,19 @@ When overridden in a derived class, deletes profile properties and information for profiles that match the supplied list of user names. The number of profiles deleted from the data source. - method deletes the profiles specified in the `usernames` parameter. Only data for the `applicationName` specified in the configuration file is removed. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method deletes the profiles specified in the `usernames` parameter. Only data for the `applicationName` specified in the configuration file is removed. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet2"::: + ]]> Implementing a Profile Provider @@ -195,21 +195,21 @@ When overridden in a derived class, deletes profile properties and information for the supplied list of profiles. The number of profiles deleted from the data source. - method deletes the profiles specified in the `profiles` parameter. Only data for the `applicationName` specified in the configuration file is removed. - - When implementing this method in a derived class, you can use the `applicationName` value and the property of each object in the supplied to determine which profiles to delete from your data source. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method deletes the profiles specified in the `profiles` parameter. Only data for the `applicationName` specified in the configuration file is removed. + + When implementing this method in a derived class, you can use the `applicationName` value and the property of each object in the supplied to determine which profiles to delete from your data source. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet1"::: + ]]> Implementing a Profile Provider @@ -250,23 +250,23 @@ When overridden in a derived class, retrieves profile information for profiles in which the last activity date occurred on or before the specified date and the user name matches the specified user name. A containing user profile information for inactive profiles where the user name matches the supplied parameter. - method is used to retrieve profile information for unused user profiles for profiles in which the user name matches the supplied `usernameToMatch` parameter. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Of the searched profiles, any profile with a that occurs on or before the specified `userInactiveSinceDate` parameter value is returned. - - If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for user names. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method is used to retrieve profile information for unused user profiles for profiles in which the user name matches the supplied `usernameToMatch` parameter. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Of the searched profiles, any profile with a that occurs on or before the specified `userInactiveSinceDate` parameter value is returned. + + If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for user names. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet5"::: + ]]> Implementing a Profile Provider @@ -305,23 +305,23 @@ When overridden in a derived class, retrieves profile information for profiles in which the user name matches the specified user names. A containing user-profile information for profiles where the user name matches the supplied parameter. - method returns a list of profile information for profiles in which the user name matches the supplied `usernameToMatch` parameter. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. - - If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for user names. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method returns a list of profile information for profiles in which the user name matches the supplied `usernameToMatch` parameter. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. + + If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for user names. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet4"::: + ]]> Implementing a Profile Provider @@ -360,21 +360,21 @@ When overridden in a derived class, retrieves user-profile data from the data source for profiles in which the last activity date occurred on or before the specified date. A containing user-profile information about the inactive profiles. - method is used to retrieve profile information for unused user profiles. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Of the searched profiles, any profile with a that occurs on or before the specified `userInactiveSinceDate` parameter value is returned. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method is used to retrieve profile information for unused user profiles. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Of the searched profiles, any profile with a that occurs on or before the specified `userInactiveSinceDate` parameter value is returned. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet7"::: + ]]> Implementing a Profile Provider @@ -411,21 +411,21 @@ When overridden in a derived class, retrieves user profile data for all profiles in the data source. A containing user-profile information for all profiles in the data source. - method is used to retrieve profile information for all profiles. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method is used to retrieve profile information for all profiles. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of inactive user profiles for the configured `applicationName`, based on the `authenticationOption` and `userInactiveSinceDate` parameters. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value is 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth inactive profiles returned. The `totalRecords` parameter would be set to 13. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet6"::: + ]]> Implementing a Profile Provider @@ -458,19 +458,19 @@ When overridden in a derived class, returns the number of profiles in which the last activity date occurred on or before the specified date. The number of profiles in which the last activity date occurred on or before the specified date. - method is used to retrieve a count of all unused user profiles. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Of the searched profiles, any profile with a that occurs on or before the specified `userInactiveSinceDate` parameter value is counted. - - - -## Examples - The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). - + method is used to retrieve a count of all unused user profiles. Only data for the `applicationName` specified in the configuration file is returned. The `authenticationOption` parameter specifies whether only anonymous profiles, only authenticated profiles, or all profiles are searched. Of the searched profiles, any profile with a that occurs on or before the specified `userInactiveSinceDate` parameter value is counted. + + + +## Examples + The following code example shows the method signature for an implementation of the method. For an example of a full implementation, see [How to: Build and Run the Profile Provider Example](https://learn.microsoft.com/previous-versions/aspnet/8zs47k7y(v=vs.100)). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/CS/odbcprofileprovidersnippets.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Profile.ProfileProvider/VB/odbcprofileprovidersnippets.vb" id="Snippet8"::: + ]]> Implementing a Profile Provider diff --git a/xml/System.Web.RegularExpressions/IncludeRegex.xml b/xml/System.Web.RegularExpressions/IncludeRegex.xml index 72bdf95f7ff..12f620029f2 100644 --- a/xml/System.Web.RegularExpressions/IncludeRegex.xml +++ b/xml/System.Web.RegularExpressions/IncludeRegex.xml @@ -18,14 +18,14 @@ Provides a regular expression to parse an ASP.NET directive. - class provides a regular expression to parse an ASP.NET `#include` directive (``). - + class provides a regular expression to parse an ASP.NET `#include` directive (``). + > [!NOTE] -> The classes are used internally by the .NET Framework to parse ASP.NET pages. - +> The classes are used internally by the .NET Framework to parse ASP.NET pages. + ]]> @@ -80,11 +80,11 @@ A time-out interval, or if matching operations should not time out. Initializes a new instance of the class with a specified time-out value. - expression is thrown. - + expression is thrown. + ]]> diff --git a/xml/System.Web.RegularExpressions/RunatServerRegex.xml b/xml/System.Web.RegularExpressions/RunatServerRegex.xml index 07cfe295cfa..f4ad2e36754 100644 --- a/xml/System.Web.RegularExpressions/RunatServerRegex.xml +++ b/xml/System.Web.RegularExpressions/RunatServerRegex.xml @@ -18,14 +18,14 @@ Provides a regular expression to parse an ASP.NET attribute. - class provides a regular expression to parse an ASP.NET `runat="server"` attribute. - + class provides a regular expression to parse an ASP.NET `runat="server"` attribute. + > [!NOTE] -> The classes are used internally by the .NET Framework to parse ASP.NET pages. - +> The classes are used internally by the .NET Framework to parse ASP.NET pages. + ]]> @@ -80,11 +80,11 @@ A time-out interval, or if matching operations should not time out. Initializes a new instance of the class with a specified time-out value. - expression is thrown. - + expression is thrown. + ]]> diff --git a/xml/System.Web.RegularExpressions/ServerTagsRegex.xml b/xml/System.Web.RegularExpressions/ServerTagsRegex.xml index 0e745fc74ca..34c184f44f0 100644 --- a/xml/System.Web.RegularExpressions/ServerTagsRegex.xml +++ b/xml/System.Web.RegularExpressions/ServerTagsRegex.xml @@ -18,14 +18,14 @@ Provides a regular expression to parse ASP.NET server tags. - class provides a regular expression to parse ASP.NET server tag (`<%` … `%>`) blocks. - + class provides a regular expression to parse ASP.NET server tag (`<%` … `%>`) blocks. + > [!NOTE] -> The classes are used internally by the .NET Framework to parse ASP.NET pages. - +> The classes are used internally by the .NET Framework to parse ASP.NET pages. + ]]> @@ -80,11 +80,11 @@ A time-out interval, or if matching operations should not time out. Initializes a new instance of the class with a specified time-out value. - expression is thrown. - + expression is thrown. + ]]> diff --git a/xml/System.Web.RegularExpressions/SimpleDirectiveRegex.xml b/xml/System.Web.RegularExpressions/SimpleDirectiveRegex.xml index fbc31babfed..13a87b7fe90 100644 --- a/xml/System.Web.RegularExpressions/SimpleDirectiveRegex.xml +++ b/xml/System.Web.RegularExpressions/SimpleDirectiveRegex.xml @@ -18,14 +18,14 @@ Provides a regular expression to parse an ASP.NET data directive. - class provides a regular expression to parse an ASP.NET data directive (`<%@` … `%>`). - + class provides a regular expression to parse an ASP.NET data directive (`<%@` … `%>`). + > [!NOTE] -> The classes are used internally by the .NET Framework to parse ASP.NET pages. - +> The classes are used internally by the .NET Framework to parse ASP.NET pages. + ]]> @@ -81,11 +81,11 @@ A time-out interval, or if matching operations should not time out. Initializes a new instance of the class with a specified time-out value. - expression is thrown. - + expression is thrown. + ]]> diff --git a/xml/System.Web.RegularExpressions/TagRegex.xml b/xml/System.Web.RegularExpressions/TagRegex.xml index 7c09386e2c2..986350dad87 100644 --- a/xml/System.Web.RegularExpressions/TagRegex.xml +++ b/xml/System.Web.RegularExpressions/TagRegex.xml @@ -18,14 +18,14 @@ Provides a regular expression to parse the opening tag of an HTML element, an XML element, or an ASP.NET Web server control tag. - class provides a regular expression that ASP.NET uses internally to parse the opening tag of an HTML element, an XML element, or an ASP.NET Web server control tag, for applications that target the .NET Framework 4 or later versions. ASP.NET uses the class for applications that target the .NET Framework 3.5 and earlier versions. - + class provides a regular expression that ASP.NET uses internally to parse the opening tag of an HTML element, an XML element, or an ASP.NET Web server control tag, for applications that target the .NET Framework 4 or later versions. ASP.NET uses the class for applications that target the .NET Framework 3.5 and earlier versions. + > [!NOTE] -> The classes are used internally by the .NET Framework to parse ASP.NET pages. - +> The classes are used internally by the .NET Framework to parse ASP.NET pages. + ]]> @@ -81,11 +81,11 @@ A time-out interval, or if matching operations should not time out. Initializes a new instance of the class with a specified time-out value. - expression is thrown. - + expression is thrown. + ]]> diff --git a/xml/System.Web.RegularExpressions/TagRegex35.xml b/xml/System.Web.RegularExpressions/TagRegex35.xml index fb536210fe5..92fcde9594f 100644 --- a/xml/System.Web.RegularExpressions/TagRegex35.xml +++ b/xml/System.Web.RegularExpressions/TagRegex35.xml @@ -16,14 +16,14 @@ Provides a regular expression to parse the opening tag of an HTML element, an XML element, or an ASP.NET Web server control tag, for applications that target the .NET Framework 3.5 SP1 and earlier versions. - class provides a regular expression that ASP.NET uses internally to parse the opening tag of an HTML element, an XML element, or an ASP.NET Web server control tag, for applications that target the .NET Framework 3.5 SP1 and earlier versions. ASP.NET uses the class for applications that target the .NET Framework 4 and later versions. - + class provides a regular expression that ASP.NET uses internally to parse the opening tag of an HTML element, an XML element, or an ASP.NET Web server control tag, for applications that target the .NET Framework 3.5 SP1 and earlier versions. ASP.NET uses the class for applications that target the .NET Framework 4 and later versions. + > [!NOTE] -> The classes are used internally by the .NET Framework to parse ASP.NET pages. - +> The classes are used internally by the .NET Framework to parse ASP.NET pages. + ]]> @@ -77,11 +77,11 @@ A time-out interval, or if matching operations should not time out. Initializes a new instance of the class with a specified time-out value. - exception is thrown. - + exception is thrown. + ]]> diff --git a/xml/System.Web.Routing/PageRouteHandler.xml b/xml/System.Web.Routing/PageRouteHandler.xml index 512e586b13b..0c88744a652 100644 --- a/xml/System.Web.Routing/PageRouteHandler.xml +++ b/xml/System.Web.Routing/PageRouteHandler.xml @@ -180,9 +180,9 @@ For a request URL that contains `Category/food/show` after the domain name, if the route URL pattern is `Category/{action}/{categoryName}` and the physical page is Categoriespage.aspx, ASP.NET applies the permissions defined in the previous example in one of the following ways: -- If the property is `false`, all users are granted access, because all users are granted access to the URL pattern that starts with `category`. +- If the property is `false`, all users are granted access, because all users are granted access to the URL pattern that starts with `category`. -- If the property is `true`, only `admin` users are granted access. All users have access to the URL pattern that begins with `category`, but only `admin` users have access to the physical page Categoriespage.aspx. +- If the property is `true`, only `admin` users are granted access. All users have access to the URL pattern that begins with `category`, but only `admin` users have access to the physical page Categoriespage.aspx. ]]> diff --git a/xml/System.Web.Routing/Route.xml b/xml/System.Web.Routing/Route.xml index cf2aef92fe9..3ee7f75f042 100644 --- a/xml/System.Web.Routing/Route.xml +++ b/xml/System.Web.Routing/Route.xml @@ -238,9 +238,9 @@ ## Remarks The property enables you to limit acceptable values for a URL parameter that is processed by a route. You assign a object to the property. Each element in the object contains the name of a parameter and one of the following: -- A string that defines a regular expression. The regular expression is case-insensitive. +- A string that defines a regular expression. The regular expression is case-insensitive. -- An object that implements the interface and that includes a method. +- An object that implements the interface and that includes a method. The class implements the interface. You can include an instance of the class as a constraint to specify which HTTP verbs are acceptable for the route. @@ -552,11 +552,11 @@ Any of the following: -- The value starts with ~ or /. +- The value starts with ~ or /. -- The value contains a ? character. +- The value contains a ? character. -- The catch-all parameter is not last. +- The catch-all parameter is not last. URL segments are not separated by a delimiter or a literal constant. ASP.NET Routing diff --git a/xml/System.Web.Routing/RouteCollection.xml b/xml/System.Web.Routing/RouteCollection.xml index 3b592643842..2e92593df80 100644 --- a/xml/System.Web.Routing/RouteCollection.xml +++ b/xml/System.Web.Routing/RouteCollection.xml @@ -261,9 +261,9 @@ There are two scenarios in which you do not have to call : -- Public methods of the class such as and call internally. Therefore, you do not have to explicitly call when you call a public method of the class to retrieve data from the collection. +- Public methods of the class such as and call internally. Therefore, you do not have to explicitly call when you call a public method of the class to retrieve data from the collection. -- When the application is starting and is not yet processing requests, such as in the `Application_Start` event handler, only one thread is running. Because there are no other threads that might update the collection while you are reading it, you do not have to call . +- When the application is starting and is not yet processing requests, such as in the `Application_Start` event handler, only one thread is running. Because there are no other threads that might update the collection while you are reading it, you do not have to call . diff --git a/xml/System.Web.Script.Serialization/JavaScriptSerializer.xml b/xml/System.Web.Script.Serialization/JavaScriptSerializer.xml index cfb65510c0b..02e41250e53 100644 --- a/xml/System.Web.Script.Serialization/JavaScriptSerializer.xml +++ b/xml/System.Web.Script.Serialization/JavaScriptSerializer.xml @@ -19,56 +19,56 @@ For .NET Framework 4.7.2 and later versions, use the APIs in the namespace for serialization and deserialization. For earlier versions of .NET Framework, use Newtonsoft.Json. This type was intended to provide serialization and deserialization functionality for AJAX-enabled applications. - [!IMPORTANT] > For .NET Framework 4.7.2 and later versions, the APIs in the namespace should be used for serialization and deserialization. For earlier versions of .NET Framework, use [Newtonsoft.Json](https://www.newtonsoft.com/json). -The class is used internally by the asynchronous communication layer to serialize and deserialize the data that is passed between the browser and the Web server. You cannot access that instance of the serializer. However, this class exposes a public API. Therefore, you can use the class when you want to work with JavaScript Object Notation (JSON) in managed code. - -To serialize an object, use the method. To deserialize a JSON string, use the or methods. To serialize and deserialize types that are not natively supported by , implement custom converters by using the class. Then register the converters by using the method. - -## Mapping Between Managed Types and JSON - The following table shows the mapping between managed types and JSON for the serialization process. These managed types are natively supported by . When you are deserializing from a JSON string to a managed type, the same mapping applies. However, deserialization can be asymmetric; not all serializable managed types can be deserialized from JSON. - +The class is used internally by the asynchronous communication layer to serialize and deserialize the data that is passed between the browser and the Web server. You cannot access that instance of the serializer. However, this class exposes a public API. Therefore, you can use the class when you want to work with JavaScript Object Notation (JSON) in managed code. + +To serialize an object, use the method. To deserialize a JSON string, use the or methods. To serialize and deserialize types that are not natively supported by , implement custom converters by using the class. Then register the converters by using the method. + +## Mapping Between Managed Types and JSON + The following table shows the mapping between managed types and JSON for the serialization process. These managed types are natively supported by . When you are deserializing from a JSON string to a managed type, the same mapping applies. However, deserialization can be asymmetric; not all serializable managed types can be deserialized from JSON. + > [!NOTE] -> A multidimensional array is serialized as a one-dimensional array, and you should use it as a flat array. - -|Managed type|JSON equivalent| -|------------------|---------------------| -| (UTF-8 encoding only).|String| -||String| -|Single null char (such as, \0 )|Null| -||Boolean. Represented in JSON as `true` or `false`| -|`null` (`null` object references and value types).|A string value of null| -||A string value of null| -|Primitive numeric (or numeric-compatible) types: , , , , , , , , , and . The culture-invariant string representation is used.|Number| -||Date object, represented in JSON as "\\/Date(number of ticks)\\/". The number of ticks is a positive or negative long value that indicates the number of ticks (milliseconds) that have elapsed since midnight 01 January, 1970 UTC.

The maximum supported date value is (12/31/9999 11:59:59 PM) and the minimum supported date value is (1/1/0001 12:00:00 AM).| -|Enumerations of integer type|Integer equivalent of the enumeration value| -|Types that implement or that are not also implementations of or . This includes types such as , , and .|Array that uses JSON array syntax| -|Types that implement or . This includes types such as and .|JavaScript object that uses JSON dictionary syntax| -|Custom concrete (non-abstract) types that have public instance properties that have get accessors or public instance fields.

Note that public write-only properties, public property or public field attributes marked with , and public indexed properties in these types are ignored.|JavaScript object that uses JSON dictionary syntax. A special metadata property named "__type" is included to ensure correct deserialization. Make sure that public instance properties have get and set accessors to ensure correct deserialization.| -||String representation of a GUID| -||String representation of the return value of | - - - -## Examples - The first example provides a simple illustration of how to serialize and deserialize data objects. It requires a class named Person which is shown below. - +> A multidimensional array is serialized as a one-dimensional array, and you should use it as a flat array. + +|Managed type|JSON equivalent| +|------------------|---------------------| +| (UTF-8 encoding only).|String| +||String| +|Single null char (such as, \0 )|Null| +||Boolean. Represented in JSON as `true` or `false`| +|`null` (`null` object references and value types).|A string value of null| +||A string value of null| +|Primitive numeric (or numeric-compatible) types: , , , , , , , , , and . The culture-invariant string representation is used.|Number| +||Date object, represented in JSON as "\\/Date(number of ticks)\\/". The number of ticks is a positive or negative long value that indicates the number of ticks (milliseconds) that have elapsed since midnight 01 January, 1970 UTC.

The maximum supported date value is (12/31/9999 11:59:59 PM) and the minimum supported date value is (1/1/0001 12:00:00 AM).| +|Enumerations of integer type|Integer equivalent of the enumeration value| +|Types that implement or that are not also implementations of or . This includes types such as , , and .|Array that uses JSON array syntax| +|Types that implement or . This includes types such as and .|JavaScript object that uses JSON dictionary syntax| +|Custom concrete (non-abstract) types that have public instance properties that have get accessors or public instance fields.

Note that public write-only properties, public property or public field attributes marked with , and public indexed properties in these types are ignored.|JavaScript object that uses JSON dictionary syntax. A special metadata property named "__type" is included to ensure correct deserialization. Make sure that public instance properties have get and set accessors to ensure correct deserialization.| +||String representation of a GUID| +||String representation of the return value of | + + + +## Examples + The first example provides a simple illustration of how to serialize and deserialize data objects. It requires a class named Person which is shown below. + [!code-csharp[System.Web.Script.Serialization.JavaScriptSerializer#1](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#1)] - [!code-vb[System.Web.Script.Serialization.JavaScriptSerializer#1](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#1)] - + [!code-vb[System.Web.Script.Serialization.JavaScriptSerializer#1](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#1)] + [!code-csharp[System.Web.Script.Serialization.JavaScriptSerializer#2](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#2)] - [!code-vb[System.Web.Script.Serialization.JavaScriptSerializer#2](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#2)] - - The next example shows a more complicated and complete project that uses the class to save and restore the state of an object by using JSON serialization. This code uses a custom converter that is provided for the class. - + [!code-vb[System.Web.Script.Serialization.JavaScriptSerializer#2](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#2)] + + The next example shows a more complicated and complete project that uses the class to save and restore the state of an object by using JSON serialization. This code uses a custom converter that is provided for the class. + [!code-aspx-csharp[System.Web.Script.Serialization#4](~/snippets/csharp/VS_Snippets_Atlas/System.Web.Script.Serialization/CS/Default.aspx#4)] - [!code-aspx-vb[System.Web.Script.Serialization#4](~/snippets/visualbasic/VS_Snippets_Atlas/System.Web.Script.Serialization/VB/Default.aspx#4)] - + [!code-aspx-vb[System.Web.Script.Serialization#4](~/snippets/visualbasic/VS_Snippets_Atlas/System.Web.Script.Serialization/VB/Default.aspx#4)] + ]]>
Using Web Services in ASP.NET AJAX @@ -106,11 +106,11 @@ To serialize an object, use the Initializes a new instance of the class that has no type resolver. - class without a type resolver does not include type metadata properties (named "__type") in the serialized JSON string. A type metadata property is used by the and methods to determine the appropriate managed type to which the JSON string will be converted. For information about type resolvers, see the class. - + class without a type resolver does not include type metadata properties (named "__type") in the serialized JSON string. A type metadata property is used by the and methods to determine the appropriate managed type to which the JSON string will be converted. For information about type resolvers, see the class. + ]]> @@ -135,18 +135,18 @@ To serialize an object, use the The custom type-resolver object. Initializes a new instance of the class that has a custom type resolver. - class uses the `resolver` parameter to determine the appropriate value to include in the serialized JSON string for the type metadata property ("__type"). Similarly, when the class is deserializing a JSON string, it resolves the type metadata property value to the appropriate managed type by using the resolver instance. - - You can set the `resolver` parameter to `null`, which is equivalent to calling the constructor. - - The instance of that is used by the asynchronous communication layer for invoking Web services from client script uses a special type resolver. This type resolver restricts the types that can be deserialized to those defined in the Web service's method signature, or the ones that have the applied. You cannot modify this built-in type resolver programmatically. - + class uses the `resolver` parameter to determine the appropriate value to include in the serialized JSON string for the type metadata property ("__type"). Similarly, when the class is deserializing a JSON string, it resolves the type metadata property value to the appropriate managed type by using the resolver instance. + + You can set the `resolver` parameter to `null`, which is equivalent to calling the constructor. + + The instance of that is used by the asynchronous communication layer for invoking Web services from client script uses a special type resolver. This type resolver restricts the types that can be deserialized to those defined in the Web service's method signature, or the ones that have the applied. You cannot modify this built-in type resolver programmatically. + > [!IMPORTANT] -> Using an instance of this object initialized with a custom type-resolver can present a security risk. Use this object only with trusted data. For more information, see [Validate All Inputs](https://top10proactive.owasp.org/archive/2024/the-top-10/c3-validate-input-and-handle-exceptions/). - +> Using an instance of this object initialized with a custom type-resolver can present a security risk. Use this object only with trusted data. For more information, see [Validate All Inputs](https://top10proactive.owasp.org/archive/2024/the-top-10/c3-validate-input-and-handle-exceptions/). + ]]> @@ -179,19 +179,19 @@ To serialize an object, use the Converts the specified object to the specified type. The serialized JSON string. - instance is serializing a type for which a custom converter is registered, the serializer calls the method to obtain the dictionary of name/value pairs that will be converted to a JSON-formatted string. - - The method can also throw exceptions if the object graph is too complex, or if registered instances of have caused converter recursion. - + instance is serializing a type for which a custom converter is registered, the serializer calls the method to obtain the dictionary of name/value pairs that will be converted to a JSON-formatted string. + + The method can also throw exceptions if the object graph is too complex, or if registered instances of have caused converter recursion. + ]]> - The resulting JSON-formatted string exceeds the value of . - - -or- - + The resulting JSON-formatted string exceeds the value of . + + -or- + contains a circular reference. A circular reference occurs when a child object has a reference to a parent object, and the parent object has a reference to the child object. The recursion limit defined by was exceeded. @@ -224,46 +224,46 @@ To serialize an object, use the Converts the given object to the specified type. The object that has been converted to the target type. - method tries to convert the object instance that is represented by `obj` to an instance of type `T`. During this conversion there is no guarantee that object reference equality is maintained. Therefore, you cannot assume that `obj` and `T` refer to the same object. - - is intended to be used if you implement a class that derives from . Converter code must be able to take a value that is in the dictionary that the serializer passes to it, and then convert that value to an instance of type `T`. Instead of re-implementing the custom conversion code to perform this task, you can call the method from the converter code. - - - -## Examples - The following example shows how to use the method to obtain a object from a value in the dictionary that is passed to the converter. This code example is part of a larger example provided for the class. - + method tries to convert the object instance that is represented by `obj` to an instance of type `T`. During this conversion there is no guarantee that object reference equality is maintained. Therefore, you cannot assume that `obj` and `T` refer to the same object. + + is intended to be used if you implement a class that derives from . Converter code must be able to take a value that is in the dictionary that the serializer passes to it, and then convert that value to an instance of type `T`. Instead of re-implementing the custom conversion code to perform this task, you can call the method from the converter code. + + + +## Examples + The following example shows how to use the method to obtain a object from a value in the dictionary that is passed to the converter. This code example is part of a larger example provided for the class. + [!code-csharp[System.Web.Script.Serialization#5](~/snippets/csharp/VS_Snippets_Atlas/System.Web.Script.Serialization/CS/App_Code/ListItemCollectionConverter.cs#5)] - [!code-vb[System.Web.Script.Serialization#5](~/snippets/visualbasic/VS_Snippets_Atlas/System.Web.Script.Serialization/VB/App_Code/ListItemCollectionConverter.vb#5)] - + [!code-vb[System.Web.Script.Serialization#5](~/snippets/visualbasic/VS_Snippets_Atlas/System.Web.Script.Serialization/VB/App_Code/ListItemCollectionConverter.vb#5)] + ]]> - (or a nested member of ) contains a "__type" property that indicates a custom type, but the type resolver that is associated with the serializer cannot find a corresponding managed type. - - -or- - - (or a nested member of ) contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. - - -or- - - (or a nested member of ) contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract type or an interface). - - -or- - - An attempt was made to convert to an array-like managed type, which is not supported for use as a deserialization target. - - -or- - + (or a nested member of ) contains a "__type" property that indicates a custom type, but the type resolver that is associated with the serializer cannot find a corresponding managed type. + + -or- + + (or a nested member of ) contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. + + -or- + + (or a nested member of ) contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract type or an interface). + + -or- + + An attempt was made to convert to an array-like managed type, which is not supported for use as a deserialization target. + + -or- + It is not possible to convert to . - is a dictionary type and a non-string key value was encountered. - - -or- - + is a dictionary type and a non-string key value was encountered. + + -or- + includes member definitions that are not available on type . @@ -292,49 +292,49 @@ To serialize an object, use the Converts a JSON-formatted string to an object of the specified type. The deserialized object. - method does. - + method does. + ]]> is . - The length of exceeds the value of . - - -or- - - The recursion limit defined by was exceeded. - - -or- - - contains an unexpected character sequence. - - -or- - - is a dictionary type and a non-string key value was encountered. - - -or- - + The length of exceeds the value of . + + -or- + + The recursion limit defined by was exceeded. + + -or- + + contains an unexpected character sequence. + + -or- + + is a dictionary type and a non-string key value was encountered. + + -or- + includes member definitions that are not available on the target type. - contains a "__type" property that indicates a custom type, but the type resolver that is currently associated with the serializer cannot find a corresponding managed type. - - -or- - - contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. - - -or- - - contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract type or an interface). - - -or- - - An attempt was made to convert a JSON array to an array-like managed type that is not supported for use as a JSON deserialization target. - - -or- - + contains a "__type" property that indicates a custom type, but the type resolver that is currently associated with the serializer cannot find a corresponding managed type. + + -or- + + contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. + + -or- + + contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract type or an interface). + + -or- + + An attempt was made to convert a JSON array to an array-like managed type that is not supported for use as a JSON deserialization target. + + -or- + It is not possible to convert to the target type. @@ -366,64 +366,64 @@ To serialize an object, use the Converts the specified JSON string to an object of type . The deserialized object. - method is equivalent to first using the method to obtain an object graph and then trying to cast the result to type `T`. - - During deserialization, the serializer's current type resolver is referenced, which determines the managed type to use when converting elements that are nested inside arrays and dictionary types. As a result, the deserialization process iterates through all nested elements of `input`. For more information about type resolvers, see the class. - - - -## Examples -The following example provides a simple illustration of how to serialize and deserialize data objects. - -[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#1)] -[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#1)] - -It requires a class named `Person`, which is shown in the following example. - -[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#2)] -[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#2)] + method is equivalent to first using the method to obtain an object graph and then trying to cast the result to type `T`. + + During deserialization, the serializer's current type resolver is referenced, which determines the managed type to use when converting elements that are nested inside arrays and dictionary types. As a result, the deserialization process iterates through all nested elements of `input`. For more information about type resolvers, see the class. + + + +## Examples +The following example provides a simple illustration of how to serialize and deserialize data objects. + +[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#1)] +[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#1)] + +It requires a class named `Person`, which is shown in the following example. + +[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#2)] +[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#2)] ]]> - The length exceeds the value of . - - -or- - - The recursion limit defined by was exceeded. - - -or- - - contains an unexpected character sequence. - - -or- - - is a dictionary type and a non-string key value was encountered. - - -or- - + The length exceeds the value of . + + -or- + + The recursion limit defined by was exceeded. + + -or- + + contains an unexpected character sequence. + + -or- + + is a dictionary type and a non-string key value was encountered. + + -or- + includes member definitions that are not available on type . is . - contains a "__type" property that indicates a custom type, but the type resolver associated with the serializer cannot find a corresponding managed type. - - -or- - - contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. - - -or- - - contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract types or an interface). - - -or- - - An attempt was made to convert a JSON array to an array-like managed type that is not supported for use as a JSON deserialization target. - - -or- - + contains a "__type" property that indicates a custom type, but the type resolver associated with the serializer cannot find a corresponding managed type. + + -or- + + contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. + + -or- + + contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract types or an interface). + + -or- + + An attempt was made to convert a JSON array to an array-like managed type that is not supported for use as a JSON deserialization target. + + -or- + It is not possible to convert to . @@ -451,49 +451,49 @@ It requires a class named `Person`, which is shown in the following example. Converts the specified JSON string to an object graph. The deserialized object. - method. - + method. + ]]> is . - The length exceeds the value of . - - -or- - - The recursion limit defined by was exceeded. - - -or- - - contains an unexpected character sequence. - - -or- - - is a dictionary type and a non-string key value was encountered. - - -or- - + The length exceeds the value of . + + -or- + + The recursion limit defined by was exceeded. + + -or- + + contains an unexpected character sequence. + + -or- + + is a dictionary type and a non-string key value was encountered. + + -or- + includes member definitions that are not available on the target type. - contains a "__type" property that indicates a custom type, but the type resolver that is currently associated with the serializer cannot find a corresponding managed type. - - -or- - - contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. - - -or- - - contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract type or an interface). - - -or- - - An attempt was made to convert a JSON array to an array-like managed type that is not supported for use as a JSON deserialization target. - - -or- - + contains a "__type" property that indicates a custom type, but the type resolver that is currently associated with the serializer cannot find a corresponding managed type. + + -or- + + contains a "__type" property that indicates a custom type, but the result of deserializing the corresponding JSON string cannot be assigned to the expected target type. + + -or- + + contains a "__type" property that indicates either or a non-instantiable type (for example, an abstract type or an interface). + + -or- + + An attempt was made to convert a JSON array to an array-like managed type that is not supported for use as a JSON deserialization target. + + -or- + It is not possible to convert to the target type. @@ -523,11 +523,11 @@ It requires a class named `Person`, which is shown in the following example. Gets or sets the maximum length of JSON strings that are accepted by the class. The maximum length of JSON strings. The default is 2097152 characters, which is equivalent to 4 MB of Unicode string data. - property applies only when you explicitly create an instance of the class. Use the `jsonSerialization` element of the configuration file to set the maximum length for the internal serializer instance that is used by the asynchronous communication layer. For more information about the configuration elements for serialization, see [How to: Configure ASP.NET Services in Microsoft Ajax](https://learn.microsoft.com/previous-versions/aspnet/bb763183(v=vs.100)). - + property applies only when you explicitly create an instance of the class. Use the `jsonSerialization` element of the configuration file to set the maximum length for the internal serializer instance that is used by the asynchronous communication layer. For more information about the configuration elements for serialization, see [How to: Configure ASP.NET Services in Microsoft Ajax](https://learn.microsoft.com/previous-versions/aspnet/bb763183(v=vs.100)). + ]]> The property is set to a value that is less than one. @@ -560,17 +560,17 @@ It requires a class named `Person`, which is shown in the following example. Gets or sets the limit for constraining the number of object levels to process. The number of object levels. The default is 100. - property refers to the number of levels in the object hierarchy that will process in the following cases: - -- When the class is deserializing a JSON string. - -- When the class is walking an object graph during serialization. - - The value of applies only when you explicitly create an instance of the class. Use the `jsonSerialization` element of the configuration file to set the number of object levels to process for the internal serializer instance that is used by the asynchronous communication layer. For more information about the configuration elements for serialization, see [How to: Configure ASP.NET Services in Microsoft Ajax](https://learn.microsoft.com/previous-versions/aspnet/bb763183(v=vs.100)). - + property refers to the number of levels in the object hierarchy that will process in the following cases: + +- When the class is deserializing a JSON string. + +- When the class is walking an object graph during serialization. + + The value of applies only when you explicitly create an instance of the class. Use the `jsonSerialization` element of the configuration file to set the number of object levels to process for the internal serializer instance that is used by the asynchronous communication layer. For more information about the configuration elements for serialization, see [How to: Configure ASP.NET Services in Microsoft Ajax](https://learn.microsoft.com/previous-versions/aspnet/bb763183(v=vs.100)). + ]]> The property is set to a value that is less than one. @@ -600,23 +600,23 @@ It requires a class named `Person`, which is shown in the following example. An array that contains the custom converters to be registered. Registers a custom converter with the instance. - instance by using the method. When custom converters are registered, uses the converters both to serialize managed types and to deserialize JSON strings to managed types. - - Multiple converters can be registered with the same instance, and these converters can indicate support for the same type. As a result, the last converter that is registered for a specific type is the one that will be used by to serialize the type. - - For more information about custom converters, see the class. - - - -## Examples - The following example shows how to register a custom converter with a instance. This code example is part of a larger example provided for the class. - + instance by using the method. When custom converters are registered, uses the converters both to serialize managed types and to deserialize JSON strings to managed types. + + Multiple converters can be registered with the same instance, and these converters can indicate support for the same type. As a result, the last converter that is registered for a specific type is the one that will be used by to serialize the type. + + For more information about custom converters, see the class. + + + +## Examples + The following example shows how to register a custom converter with a instance. This code example is part of a larger example provided for the class. + [!code-csharp[System.Web.Script.Serialization#1](~/snippets/csharp/VS_Snippets_Atlas/System.Web.Script.Serialization/CS/Default.aspx#1)] - [!code-vb[System.Web.Script.Serialization#1](~/snippets/visualbasic/VS_Snippets_Atlas/System.Web.Script.Serialization/VB/Default.aspx#1)] - + [!code-vb[System.Web.Script.Serialization#1](~/snippets/visualbasic/VS_Snippets_Atlas/System.Web.Script.Serialization/VB/Default.aspx#1)] + ]]> @@ -662,32 +662,32 @@ It requires a class named `Person`, which is shown in the following example. Converts an object to a JSON string. The serialized JSON string. - instance is serializing a type for which a custom converter is registered, the serializer calls the method to obtain the dictionary of name/value pairs that will be converted to a JSON string. - - The method can also throw exceptions if the object graph is too complex, or if registered instances of have caused converter recursion. - - - -## Examples -The following example provides a simple illustration of how to serialize and deserialize data objects. - -[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#1)] -[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#1)] - -It requires a class named `Person`, which is shown in the following example. - -[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#2)] -[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#2)] - + instance is serializing a type for which a custom converter is registered, the serializer calls the method to obtain the dictionary of name/value pairs that will be converted to a JSON string. + + The method can also throw exceptions if the object graph is too complex, or if registered instances of have caused converter recursion. + + + +## Examples +The following example provides a simple illustration of how to serialize and deserialize data objects. + +[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#1)] +[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#1)] + +It requires a class named `Person`, which is shown in the following example. + +[!code-csharp[System.Web.Script.JavaScriptSerializer](~/snippets/csharp/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/cs/default.aspx.cs#2)] +[!code-vb[System.Web.Script.JavaScriptSerializer](~/snippets/visualbasic/VS_Snippets_WebNet/system.web.script.serialization.javascriptserializer/vb/default.aspx.vb#2)] + ]]> - The resulting JSON string exceeds the value of . - - -or- - + The resulting JSON string exceeds the value of . + + -or- + contains a circular reference. A circular reference occurs when a child object has a reference to a parent object, and the parent object has a reference to the child object. The recursion limit defined by was exceeded. @@ -723,19 +723,19 @@ It requires a class named `Person`, which is shown in the following example. The object that is used to write the JSON string. Serializes an object and writes the resulting JSON string to the specified object. - instance is serializing a type for which a custom converter is registered, the serializer calls the method to obtain the dictionary of name/value pairs that will be converted to a JSON string. - - The method can also throw exceptions if the object graph is too complex, or if registered instances of have caused converter recursion. - + instance is serializing a type for which a custom converter is registered, the serializer calls the method to obtain the dictionary of name/value pairs that will be converted to a JSON string. + + The method can also throw exceptions if the object graph is too complex, or if registered instances of have caused converter recursion. + ]]> - The resulting JSON string exceeds the value of . - - -or- - + The resulting JSON string exceeds the value of . + + -or- + contains a circular reference. A circular reference occurs when a child object has a reference to a parent object, and the parent object has a reference to the child object. The recursion limit defined by was exceeded. diff --git a/xml/System.Web.Script.Serialization/JavaScriptTypeResolver.xml b/xml/System.Web.Script.Serialization/JavaScriptTypeResolver.xml index 104270c672d..84de7175c82 100644 --- a/xml/System.Web.Script.Serialization/JavaScriptTypeResolver.xml +++ b/xml/System.Web.Script.Serialization/JavaScriptTypeResolver.xml @@ -22,9 +22,9 @@ ## Remarks The class provides the services for: -- Converting managed type information to a string value through the method. +- Converting managed type information to a string value through the method. -- Resolving a string value back to the appropriate managed type through the method. +- Resolving a string value back to the appropriate managed type through the method. When the object serializes custom types, it can optionally include in the serialized JavaScript Object Notation (JSON) string a value that contains type information. During deserialization, can then reference this string value to determine the appropriate managed type to which the JSON string will be converted. @@ -260,7 +260,7 @@ Even though the app only expects `Person` and `Adult` instances to be deserializ * All types that might be present in the object graph need to be accounted for in the allow list. Primitives like `int` and `string` do not need to be specified. > [!WARNING] -> Do not call `Type.GetType(id)` within the `ResolveType` method. This could introduce a security vunerability into the app. Instead, iterate through the list of allowed types and compare their `Type.FullName` property against the incoming `id`, as shown in the preceding sample. +> Do not call `Type.GetType(id)` within the `ResolveType` method. This could introduce a security vunerability into the app. Instead, iterate through the list of allowed types and compare their `Type.FullName` property against the incoming `id`, as shown in the preceding sample. ]]> diff --git a/xml/System.Web.Script.Services/GenerateScriptTypeAttribute.xml b/xml/System.Web.Script.Services/GenerateScriptTypeAttribute.xml index fa170732569..54eaa6cb9d8 100644 --- a/xml/System.Web.Script.Services/GenerateScriptTypeAttribute.xml +++ b/xml/System.Web.Script.Services/GenerateScriptTypeAttribute.xml @@ -23,29 +23,29 @@ Specifies that the server type must be generated in the proxy object. This class cannot be inherited. - . - - In other cases, if you proxy objects generated for server types, you must apply manually. You can apply to the Web service itself or to any Web service method or `static` page method marked with . - - In some cases, even if the type corresponds to an input parameter or return value of a Web service method, the proxy will not be generated automatically. In that case, you must use the attribute to generate the proxy object for the type. This occurs for generic types and arrays that have more than one argument, such as `Dictionary>`. - - One or more instances of can be applied to a Web service class or method. ASP.NET will then generate an ECMAScript (JavaScript) proxy class for each top-level type that is referenced by each declaration of . - + . + + In other cases, if you proxy objects generated for server types, you must apply manually. You can apply to the Web service itself or to any Web service method or `static` page method marked with . + + In some cases, even if the type corresponds to an input parameter or return value of a Web service method, the proxy will not be generated automatically. In that case, you must use the attribute to generate the proxy object for the type. This occurs for generic types and arrays that have more than one argument, such as `Dictionary>`. + + One or more instances of can be applied to a Web service class or method. ASP.NET will then generate an ECMAScript (JavaScript) proxy class for each top-level type that is referenced by each declaration of . + > [!NOTE] -> If you want to generate proxy objects for nested types, you must manually apply to each nested type. ASP.NET generates proxies only for top-level types and does not automatically recursively apply the attribute to nested types. - - For more information about how to use attributes, see [Attributes](/dotnet/standard/attributes/). - - - -## Examples - The following example shows how to apply to a Web service class and to a Web method. As a result, the `ColorObject` type and its nested type `FavoriteColors` are included in the proxy object. - - - +> If you want to generate proxy objects for nested types, you must manually apply to each nested type. ASP.NET generates proxies only for top-level types and does not automatically recursively apply the attribute to nested types. + + For more information about how to use attributes, see [Attributes](/dotnet/standard/attributes/). + + + +## Examples + The following example shows how to apply to a Web service class and to a Web method. As a result, the `ColorObject` type and its nested type `FavoriteColors` are included in the proxy object. + + + ]]> Using Web Services in ASP.NET AJAX @@ -72,18 +72,18 @@ The type to include in the proxy class. Initializes a new instance of the class for the specified type. - property is an optional named parameter for this constructor. - - - -## Examples - The following example shows how to use to generate a proxy object for the specified type that uses a specific type identifier for the metadata marker. - - - + property is an optional named parameter for this constructor. + + + +## Examples + The following example shows how to use to generate a proxy object for the specified type that uses a specific type identifier for the metadata marker. + + + ]]> @@ -116,11 +116,11 @@ Gets or sets the type identifier for the type metadata marker. The type identifier for the type metadata marker on the serialized JavaScript Object Notation (JSON) string. The default value is the assembly-qualified name of the type. - is used for the type metadata marker ("__type") on the serialized JSON string instead of the assembly-qualified name of the type. During deserialization, the type resolver that is associated with the object will use the type metadata marker value to map back to the appropriate managed type. - + is used for the type metadata marker ("__type") on the serialized JSON string instead of the assembly-qualified name of the type. During deserialization, the type resolver that is associated with the object will use the type metadata marker value to map back to the appropriate managed type. + ]]> diff --git a/xml/System.Web.Script.Services/ScriptMethodAttribute.xml b/xml/System.Web.Script.Services/ScriptMethodAttribute.xml index 604e7f59ca9..8fe8a065be0 100644 --- a/xml/System.Web.Script.Services/ScriptMethodAttribute.xml +++ b/xml/System.Web.Script.Services/ScriptMethodAttribute.xml @@ -23,39 +23,39 @@ Specifies which HTTP verb is used to invoke a method, and the format of the response. This class cannot be inherited. - attribute is optional. (However, methods that can be called from client script must have the attribute applied.). If a method is not marked with , the method will be called by using the HTTP POST command and the response will be serialized as JSON. You cannot override this setting from script. - - takes only named parameters. The following are the properties of the class that can be used as named parameters: - -- - - Specifies whether the method will be invoked by using the HTTP GET command. The default is `false`. - + attribute is optional. (However, methods that can be called from client script must have the attribute applied.). If a method is not marked with , the method will be called by using the HTTP POST command and the response will be serialized as JSON. You cannot override this setting from script. + + takes only named parameters. The following are the properties of the class that can be used as named parameters: + +- + + Specifies whether the method will be invoked by using the HTTP GET command. The default is `false`. + > [!IMPORTANT] - > Setting the property to `true` might pose a security risk for your application if you are working with sensitive data or transactions. In GET requests, the message is encoded by the browser into the URL and is therefore an easier target for tampering. For both GET and POST requests, you should follow security guidelines to protect sensitive data. - -- - - Specifies whether the response will be serialized as JSON or as XML. The default is `Json`. The property is useful to specify XML as the return type when the method returns an or an object. - -- - - Specifies whether all return types, including string types, are serialized as XML. The value of the property is ignored when the response is serialized as JSON. - - For more information about how to use attributes, see [Attributes](/dotnet/standard/attributes/). - - - -## Examples - The following example shows how to apply to the `GetXmlDocument` and `EchoStringAndDate` methods to specify which HTTP verb to use and to specify the response format. - - - + > Setting the property to `true` might pose a security risk for your application if you are working with sensitive data or transactions. In GET requests, the message is encoded by the browser into the URL and is therefore an easier target for tampering. For both GET and POST requests, you should follow security guidelines to protect sensitive data. + +- + + Specifies whether the response will be serialized as JSON or as XML. The default is `Json`. The property is useful to specify XML as the return type when the method returns an or an object. + +- + + Specifies whether all return types, including string types, are serialized as XML. The value of the property is ignored when the response is serialized as JSON. + + For more information about how to use attributes, see [Attributes](/dotnet/standard/attributes/). + + + +## Examples + The following example shows how to apply to the `GetXmlDocument` and `EchoStringAndDate` methods to specify which HTTP verb to use and to specify the response format. + + + ]]> @@ -118,20 +118,20 @@ Gets or sets the format of the method response. One of the values. The default is . - property when you want to specify XML as the format for the return type. This is useful when the method returns an or an object. - - When the property is set to `Xml`, the public fields and properties of the return type that have the attribute applied will not be ignored. This is because they will be serialized by using the object instead of the object. You must apply the attribute to make ignore, or skip, those public fields and properties of the return type. - - - -## Examples - The following example shows how to apply the attribute to a Web method with the property set to `Xml`. The return value of the method will be serialized as XML and sent to the succeeded callback function as an object of type . This code example is part of a larger example provided for the class. - - - + property when you want to specify XML as the format for the return type. This is useful when the method returns an or an object. + + When the property is set to `Xml`, the public fields and properties of the return type that have the attribute applied will not be ignored. This is because they will be serialized by using the object instead of the object. You must apply the attribute to make ignore, or skip, those public fields and properties of the return type. + + + +## Examples + The following example shows how to apply the attribute to a Web method with the property set to `Xml`. The return value of the method will be serialized as XML and sent to the succeeded callback function as an object of type . This code example is part of a larger example provided for the class. + + + ]]> @@ -169,25 +169,25 @@ if the method is invoked by using the HTTP GET command; if the method is invoked by using the HTTP POST command. The default is . - [!IMPORTANT] -> Setting the property to `true` might pose a security risk for your application if you are working with sensitive data or transactions. In GET requests, the message is encoded by the browser into the URL and is therefore an easier target for tampering. - - - -## Examples - The following example shows how to apply to a Web method with the property set to `true`. This code example is part of a larger example provided for the class. - - - +> Setting the property to `true` might pose a security risk for your application if you are working with sensitive data or transactions. In GET requests, the message is encoded by the browser into the URL and is therefore an easier target for tampering. + + + +## Examples + The following example shows how to apply to a Web method with the property set to `true`. This code example is part of a larger example provided for the class. + + + ]]> @@ -223,20 +223,20 @@ if all return types are serialized as XML; otherwise, . The default is . - is ignored when the property is set to `Json`. - - - -## Examples - The following example shows how to apply to a Web method with the property set to `true`. This code example is part of a larger example provided for the class. - - - + is ignored when the property is set to `Json`. + + + +## Examples + The following example shows how to apply to a Web method with the property set to `true`. This code example is part of a larger example provided for the class. + + + ]]> Sys.Net.ClientServiceProxy Class diff --git a/xml/System.Web.Security.AntiXss/AntiXssEncoder.xml b/xml/System.Web.Security.AntiXss/AntiXssEncoder.xml index c9bc890b80a..16a3fdb8b79 100644 --- a/xml/System.Web.Security.AntiXss/AntiXssEncoder.xml +++ b/xml/System.Web.Security.AntiXss/AntiXssEncoder.xml @@ -81,7 +81,7 @@ This method encodes all characters except those that are in the safe list. > [!NOTE] -> Put quotation marks (" ") around the resulting string before you add it to a cascading style sheet. +> Put quotation marks (" ") around the resulting string before you add it to a cascading style sheet. The following table lists the default safe characters. All are from the [Unicode C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range. @@ -135,7 +135,7 @@ This method encodes all characters except those that are in the safe list. Characters are encoded by using `&#DECIMAL;` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range unless noted in the Description column. @@ -233,7 +233,7 @@ This method encodes all characters except those that are in the safe list. Characters are encoded by using `&#DECIMAL;` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All characters are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range unless noted in the Description column. @@ -321,7 +321,7 @@ This method encodes all characters except those that are in the safe list. Characters are encoded by using `&#DECIMAL;` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All characters are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range unless noted in the Description column. @@ -417,7 +417,7 @@ This method encodes all characters except those that are in the safe list. Characters are encoded by using `%SINGLE_BYTE_HEX` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All characters are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range. @@ -476,7 +476,7 @@ The following table lists the default safe characters. All characters are from t This method encodes all characters except those that are in the safe list. Characters are encoded by using `%SINGLE_BYTE_HEX` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All characters are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range. @@ -535,7 +535,7 @@ The following table lists the default safe characters. All characters are from t This method encodes all characters except those that are in the safe list. Characters are encoded by using `%SINGLE_BYTE_HEX` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All characters are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range. @@ -618,7 +618,7 @@ MarkAsSafe( ``` > [!NOTE] -> The method must be called in the `Application_Start` method in the Global.asax file. +> The method must be called in the `Application_Start` method in the Global.asax file. ]]> @@ -957,7 +957,7 @@ The following table lists the default safe characters. All characters are from t This method encodes all characters except those that are in the safe list. Characters are encoded by using `&#DECIMAL;` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All characters are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range unless noted in the Description column. @@ -1044,7 +1044,7 @@ The following table lists the default safe characters. All characters are from t This method encodes all characters except those that are in the safe list. Characters are encoded by using `&#DECIMAL;` notation. > [!NOTE] -> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. +> Put double quotation marks (" ") or single quotation marks (' ') around the resulting string before you add it to a page. The following table lists the default safe characters. All characters are from the Unicode [C0 Controls and Basic Latin](https://www.unicode.org/charts/PDF/U0000.pdf) character range except when noted in the Description column. diff --git a/xml/System.Web.Security/AnonymousIdentificationModule.xml b/xml/System.Web.Security/AnonymousIdentificationModule.xml index a1bca95c1a6..2511f05a6d7 100644 --- a/xml/System.Web.Security/AnonymousIdentificationModule.xml +++ b/xml/System.Web.Security/AnonymousIdentificationModule.xml @@ -21,46 +21,46 @@ Manages anonymous identifiers for the ASP.NET application. - class creates and manages anonymous identifiers for an ASP.NET application. Anonymous identifiers are used by features that support anonymous identification such as the ASP.NET . - - The exposes a event that enables you to set the anonymous identifier to a custom value. If you do not specify a custom anonymous identifier value, a is used. - - The event is accessed by specifying a subroutine named **AnonymousIdentification_Creating** in the Global.asax file for your ASP.NET application. - - The is only used when anonymous identification is by setting the enabled attribute of the [anonymousIdentification](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/91ka2e6a(v%3dvs.100)) configuration element to `true`. - + class creates and manages anonymous identifiers for an ASP.NET application. Anonymous identifiers are used by features that support anonymous identification such as the ASP.NET . + + The exposes a event that enables you to set the anonymous identifier to a custom value. If you do not specify a custom anonymous identifier value, a is used. + + The event is accessed by specifying a subroutine named **AnonymousIdentification_Creating** in the Global.asax file for your ASP.NET application. + + The is only used when anonymous identification is by setting the enabled attribute of the [anonymousIdentification](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/91ka2e6a(v%3dvs.100)) configuration element to `true`. + > [!NOTE] -> Anonymous identification is independent of any type of ASP.NET authentication. - - - -## Examples - The following code example shows a Web.config file for an application that enables anonymous identification. - -``` - - - - - - - - - - - - - - - - - -``` - +> Anonymous identification is independent of any type of ASP.NET authentication. + + + +## Examples + The following code example shows a Web.config file for an application that enables anonymous identification. + +``` + + + + + + + + + + + + + + + + + +``` + ]]> @@ -87,13 +87,13 @@ Creates an instance of the class. - class. After calling the constructor, it calls the method to initialize the new object. - + class. After calling the constructor, it calls the method to initialize the new object. + ]]> @@ -118,31 +118,31 @@ Clears the anonymous cookie or identifier associated with a session. - method removes the anonymous identifier associated with a session on a Web site. Use the method to remove the anonymous identifier associated with a session when the user switches to an authenticated session associated with a user ID, for example when the event occurs. - - Since a new anonymous identifier will be issued immediately if the current anonymous identifier is removed, the method will throw a if it is called while the session is identified by an anonymous identifier. - - If the site is using cookies, the method issues a clear cookie to remove the anonymous identifier from the browser. The clear cookie is issued even if an anonymous cookie was not sent on the previous request. - - The clear cookie is constructed as follows: - -- If the browser supports empty strings in a cookie, the cookie is issued with the empty string as its value; otherwise, the cookie is issued with "NoCookie" as its value. - -- The values for the cookie name, path, and domain are set to the defaults configured in the Web application's configuration file. - -- The expiration date is set to October 12, 1999. - - If the site is using cookieless authentication, and an anonymous identifier is present in the URL, the anonymous identifier is removed from the URL. No other changes are made to the address or query string. After the URL is modified, a redirect is issued to return to the currently executing page. - + method removes the anonymous identifier associated with a session on a Web site. Use the method to remove the anonymous identifier associated with a session when the user switches to an authenticated session associated with a user ID, for example when the event occurs. + + Since a new anonymous identifier will be issued immediately if the current anonymous identifier is removed, the method will throw a if it is called while the session is identified by an anonymous identifier. + + If the site is using cookies, the method issues a clear cookie to remove the anonymous identifier from the browser. The clear cookie is issued even if an anonymous cookie was not sent on the previous request. + + The clear cookie is constructed as follows: + +- If the browser supports empty strings in a cookie, the cookie is issued with the empty string as its value; otherwise, the cookie is issued with "NoCookie" as its value. + +- The values for the cookie name, path, and domain are set to the defaults configured in the Web application's configuration file. + +- The expiration date is set to October 12, 1999. + + If the site is using cookieless authentication, and an anonymous identifier is present in the URL, the anonymous identifier is removed from the URL. No other changes are made to the address or query string. After the URL is modified, a redirect is issued to return to the currently executing page. + ]]> - Calling when the anonymous identification is not enabled. - - -or- - + Calling when the anonymous identification is not enabled. + + -or- + The user for the current request is anonymous. @@ -165,25 +165,25 @@ Occurs when a new anonymous identifier is created. - event is raised during the event. - - You can access the event of the class by specifying a subroutine named **AnonymousIdentification_Creating** in the Global.asax file for your ASP.NET application. - - You can use the property of the object supplied to the **AnonymousIdentification_Creating** event to set the anonymous identifier to a custom value. If you do not specify a value for the property during the **AnonymousIdentification_Creating** event, a is used. - - The **AnonymousIdentification_Creating** event is only raised when the anonymous identification is . - - - -## Examples - The following code example uses the **AnonymousIdentification_Creating** event to set the anonymous identifier to a custom value. - + event is raised during the event. + + You can access the event of the class by specifying a subroutine named **AnonymousIdentification_Creating** in the Global.asax file for your ASP.NET application. + + You can use the property of the object supplied to the **AnonymousIdentification_Creating** event to set the anonymous identifier to a custom value. If you do not specify a value for the property during the **AnonymousIdentification_Creating** event, a is used. + + The **AnonymousIdentification_Creating** event is only raised when the anonymous identification is . + + + +## Examples + The following code example uses the **AnonymousIdentification_Creating** event to set the anonymous identifier to a custom value. + [!code-csharp[System.Web.Security.AnonymousIdentificationModule#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.AnonymousIdentificationModule/CS/global.asax#1)] - [!code-vb[System.Web.Security.AnonymousIdentificationModule#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.AnonymousIdentificationModule/VB/global.asax#1)] - + [!code-vb[System.Web.Security.AnonymousIdentificationModule#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.AnonymousIdentificationModule/VB/global.asax#1)] + ]]> @@ -211,11 +211,11 @@ Releases all resources, other than memory, used by the . - @@ -241,32 +241,32 @@ if anonymous identification is enabled for the ASP.NET application; otherwise, . The default is . - - - - - - - - - - - - - - - - - -``` - + + + + + + + + + + + + + + + + + +``` + ]]> @@ -297,13 +297,13 @@ The current instance. Initializes the object. - method ensures that the is included in the processing of the event. - + method ensures that the is included in the processing of the event. + ]]> diff --git a/xml/System.Web.Security/AuthorizationStoreRoleProvider.xml b/xml/System.Web.Security/AuthorizationStoreRoleProvider.xml index 6a2d847b375..59cbb5aca04 100644 --- a/xml/System.Web.Security/AuthorizationStoreRoleProvider.xml +++ b/xml/System.Web.Security/AuthorizationStoreRoleProvider.xml @@ -35,7 +35,7 @@ msxml:// `msxml://~\App_Data\datafilename.xml` > [!IMPORTANT] -> Storing an XML data file in the Web application directory is a potential security threat. By default, IIS will serve XML data files to the Web. To improve security when using a local data file in an ASP.NET application, you should store the data file in the `App_Data` directory. Files stored in the `App_Data` directory will not be served to the Web. +> Storing an XML data file in the Web application directory is a potential security threat. By default, IIS will serve XML data files to the Web. To improve security when using a local data file in an ASP.NET application, you should store the data file in the `App_Data` directory. Files stored in the `App_Data` directory will not be served to the Web. If you are using an Active Directory or ADAM server for the policy store, your connection string should be similar to the following example. @@ -44,13 +44,13 @@ msxml:// The exceptions listed in the documentation for object methods are the exceptions that are raised by the object. Since the provider relies on the underlying Authentication Manager runtime, a exception may be thrown whenever the object forwards a method call to the Authentication Manager runtime. > [!IMPORTANT] -> The object has the following requirements for running in partial-trust environments: +> The object has the following requirements for running in partial-trust environments: > -> When using a file-based policy store in an ASP.NET application, the file I/O permissions granted by the current trust level determine whether read and write actions are allowed by the provider. The ASP.NET application must have read permission on the file to read data from the policy store, and must have write permission to save new information or update existing information in the policy store. The default Medium-trust policy file gives an ASP.NET application read/write permissions in its application directory. The default Low-trust policy file only gives an ASP.NET application read permission in its application directory. In addition, the process identity under which the ASP.NET application runs must have file-system permissions to read and/or write the policy file. +> When using a file-based policy store in an ASP.NET application, the file I/O permissions granted by the current trust level determine whether read and write actions are allowed by the provider. The ASP.NET application must have read permission on the file to read data from the policy store, and must have write permission to save new information or update existing information in the policy store. The default Medium-trust policy file gives an ASP.NET application read/write permissions in its application directory. The default Low-trust policy file only gives an ASP.NET application read permission in its application directory. In addition, the process identity under which the ASP.NET application runs must have file-system permissions to read and/or write the policy file. > -> When using an Active Directory or ADAM server, the ASP.NET application needs unmanaged-code permission because the internal object code uses COM interop. +> When using an Active Directory or ADAM server, the ASP.NET application needs unmanaged-code permission because the internal object code uses COM interop. > -> When using the object outside of ASP.NET, the calling code needs unmanaged-code permission. +> When using the object outside of ASP.NET, the calling code needs unmanaged-code permission. @@ -244,10 +244,10 @@ msxml:// If a value is not specified for the `applicationName` attribute in the Web.config file, then the property value for the current object is used. > [!NOTE] -> Authorization-manager application names cannot contain the "/" character that is included in the property. As a result, the default value for the property cannot be used as an authorization-manager application name, and in the application's Web.config file, you must always specify an `applicationName` attribute in the `provider` element to configure your instance. +> Authorization-manager application names cannot contain the "/" character that is included in the property. As a result, the default value for the property cannot be used as an authorization-manager application name, and in the application's Web.config file, you must always specify an `applicationName` attribute in the `provider` element to configure your instance. > [!CAUTION] -> Because a single default role provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior when there are multiple users of an application. We recommend that you avoid writing code that allows users to set the property unless you must. An example of an application where setting the property may be required is an administrative application that manages role data for multiple applications. Such an application should be a single-user application and not a Web application. +> Because a single default role provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior when there are multiple users of an application. We recommend that you avoid writing code that allows users to set the property unless you must. An example of an application where setting the property may be required is an administrative application that manages role data for multiple applications. Such an application should be a single-user application and not a Web application. @@ -936,7 +936,7 @@ msxml:// The property can be set using the `scopeName` configuration attribute for the provider instance in the `providers` section of the `roleManager` configuration section. > [!CAUTION] -> Because a single default role provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior when there are multiple users of an application. We recommend that you avoid writing code that allows users to set the property unless you must. An example of an application where setting the property may be required is an administrative application that manages role data for multiple applications. Such an application should be a single-user application and not a Web application. +> Because a single default role provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior when there are multiple users of an application. We recommend that you avoid writing code that allows users to set the property unless you must. An example of an application where setting the property may be required is an administrative application that manages role data for multiple applications. Such an application should be a single-user application and not a Web application. ]]> diff --git a/xml/System.Web.Security/DefaultAuthenticationEventArgs.xml b/xml/System.Web.Security/DefaultAuthenticationEventArgs.xml index 61fd4a9fbb5..749a25468d7 100644 --- a/xml/System.Web.Security/DefaultAuthenticationEventArgs.xml +++ b/xml/System.Web.Security/DefaultAuthenticationEventArgs.xml @@ -72,7 +72,7 @@ The following code example uses the **DefaultAuthentication_OnAuthenticate** event to test whether the property of the current is `null`. If the property is `null`, the example sets the property of the current to a object where the property of the object is a object with a property value of "default". > [!NOTE] -> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you are ensuring that only authenticated users have access to your site, by using the `authorization` section and specifying ``, you will cause the `deny` element in this example to be ignored, as the user will have a name, which is "default". Instead you would specify `` to ensure that only authenticated users can access your site. +> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you are ensuring that only authenticated users have access to your site, by using the `authorization` section and specifying ``, you will cause the `deny` element in this example to be ignored, as the user will have a name, which is "default". Instead you would specify `` to ensure that only authenticated users can access your site. [!code-csharp[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/CS/global.asax#1)] [!code-vb[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/VB/global.asax#1)] diff --git a/xml/System.Web.Security/DefaultAuthenticationEventHandler.xml b/xml/System.Web.Security/DefaultAuthenticationEventHandler.xml index 2bd8c557000..9263400160d 100644 --- a/xml/System.Web.Security/DefaultAuthenticationEventHandler.xml +++ b/xml/System.Web.Security/DefaultAuthenticationEventHandler.xml @@ -26,26 +26,26 @@ A that contains the event data. Represents the method that handles the **DefaultAuthentication_OnAuthenticate** event of a . - delegate is defined for the event of the class. You can access the event of the class by specifying a subroutine named **DefaultAuthentication_OnAuthenticate** in the Global.asax file for your ASP.NET application. The event is raised after the event and is used to ensure that the property of the current is populated with an object. - - You can use the property of the object supplied to the **DefaultAuthentication_OnAuthenticate** event to set the property of the current to a custom object. If you do not specify a value for the property of the supplied during the **DefaultAuthentication_OnAuthenticate** event, the sets the property of the to a object that contains no user information. - - The **DefaultAuthentication_OnAuthenticate** event is raised after the event and before the event. If you have an `authorization` section that depends on the user name to deny or allow access to your application, modifying the property of the current can affect the behavior of your application. Be sure that the user name you set during the **DefaultAuthentication_OnAuthenticate** event is considered when you specify the `authorization` section in your configuration. - - - -## Examples - The following code example uses the **DefaultAuthentication_OnAuthenticate** event to test whether the property of the current is `null`. If the property is `null`, the sample sets the property of the current to a object, where the of the object is a with a value of "default". - + delegate is defined for the event of the class. You can access the event of the class by specifying a subroutine named **DefaultAuthentication_OnAuthenticate** in the Global.asax file for your ASP.NET application. The event is raised after the event and is used to ensure that the property of the current is populated with an object. + + You can use the property of the object supplied to the **DefaultAuthentication_OnAuthenticate** event to set the property of the current to a custom object. If you do not specify a value for the property of the supplied during the **DefaultAuthentication_OnAuthenticate** event, the sets the property of the to a object that contains no user information. + + The **DefaultAuthentication_OnAuthenticate** event is raised after the event and before the event. If you have an `authorization` section that depends on the user name to deny or allow access to your application, modifying the property of the current can affect the behavior of your application. Be sure that the user name you set during the **DefaultAuthentication_OnAuthenticate** event is considered when you specify the `authorization` section in your configuration. + + + +## Examples + The following code example uses the **DefaultAuthentication_OnAuthenticate** event to test whether the property of the current is `null`. If the property is `null`, the sample sets the property of the current to a object, where the of the object is a with a value of "default". + > [!NOTE] -> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you are ensuring that only authenticated users have access to your site, by using the `authorization` section and specifying ``, this sample will cause the `deny` element to be ignored, as the user will have a name, which is "default". Instead you would specify `` to ensure that only authenticated users can access your site. - +> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you are ensuring that only authenticated users have access to your site, by using the `authorization` section and specifying ``, this sample will cause the `deny` element to be ignored, as the user will have a name, which is "default". Instead you would specify `` to ensure that only authenticated users can access your site. + [!code-csharp[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/CS/global.asax#1)] - [!code-vb[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/VB/global.asax#1)] - + [!code-vb[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/VB/global.asax#1)] + ]]> diff --git a/xml/System.Web.Security/DefaultAuthenticationModule.xml b/xml/System.Web.Security/DefaultAuthenticationModule.xml index f05811e6e76..49aea4dbaf6 100644 --- a/xml/System.Web.Security/DefaultAuthenticationModule.xml +++ b/xml/System.Web.Security/DefaultAuthenticationModule.xml @@ -37,7 +37,7 @@ The following example uses the **DefaultAuthentication_OnAuthenticate** event to test whether the property of the current instance is `null`. If the property is `null`, then the sample sets the property of the current instance to a object where the of the object is a with a value of "default." > [!NOTE] -> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current instance to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you specify `` in the [authorization](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8d82143t(v%3dvs.100)) configuration section to ensure that only authenticated users have access to your site, this sample will cause the [deny](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8aeskccd(v%3dvs.100)) element to be ignored, as the user will have a name, which is "default." Instead, you would specify `` to ensure that only authenticated users can access your site. +> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current instance to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you specify `` in the [authorization](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8d82143t(v%3dvs.100)) configuration section to ensure that only authenticated users have access to your site, this sample will cause the [deny](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8aeskccd(v%3dvs.100)) element to be ignored, as the user will have a name, which is "default." Instead, you would specify `` to ensure that only authenticated users can access your site. [!code-csharp[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/CS/global.asax#1)] [!code-vb[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/VB/global.asax#1)] @@ -114,7 +114,7 @@ The **DefaultAuthentication_OnAuthenticate** event is raised after the event and before the event. If you have an `authorization` section that depends on the user name to deny or allow access to your application, modifying the property of the current instance can affect the behavior of your application. Be sure that the user name you set during the **DefaultAuthentication_OnAuthenticate** event is considered when you specify the [authorization](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8d82143t(v%3dvs.100)) section in your configuration. > [!NOTE] -> If the Web application is running in IIS 7.0 in Integrated mode, the event of the is not raised. If the `mode` attribute of the [authentication](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/532aee0e(v%3dvs.100)) configuration element is set to "None" and the application subscribes to the event, a error is raised. In this scenario, to receive authentication notification, subscribe to the event of the instance. For more information about compatibility issues in Integrated mode, see [Moving an ASP.NET Application from IIS 6.0 to IIS 7.0](https://msdn.microsoft.com/library/76f9cc78-f978-4837-b1c8-51d642ec4847). +> If the Web application is running in IIS 7.0 in Integrated mode, the event of the is not raised. If the `mode` attribute of the [authentication](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/532aee0e(v%3dvs.100)) configuration element is set to "None" and the application subscribes to the event, a error is raised. In this scenario, to receive authentication notification, subscribe to the event of the instance. For more information about compatibility issues in Integrated mode, see [Moving an ASP.NET Application from IIS 6.0 to IIS 7.0](https://msdn.microsoft.com/library/76f9cc78-f978-4837-b1c8-51d642ec4847). @@ -122,7 +122,7 @@ The following code example uses the **DefaultAuthentication_OnAuthenticate** event to test whether the property of the current instance is `null`. If the property is `null`, then the sample sets the property of the current instance to a object where the of the object is a with a value of "default." > [!NOTE] -> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current instance to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you specify `` in the [authorization](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8d82143t(v%3dvs.100)) configuration section to ensure that only authenticated users have access to your site, this sample will cause the [deny](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8aeskccd(v%3dvs.100)) element to be ignored, as the user will have a name, which is "default." Instead, you would specify `` to ensure that only authenticated users can access your site. +> The **DefaultAuthentication_OnAuthenticate** event is raised before the event. As a result, if you set the property of the current instance to a custom identity, it can affect the behavior of your application. For example, if you are using the class and you specify `` in the [authorization](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8d82143t(v%3dvs.100)) configuration section to ensure that only authenticated users have access to your site, this sample will cause the [deny](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/8aeskccd(v%3dvs.100)) element to be ignored, as the user will have a name, which is "default." Instead, you would specify `` to ensure that only authenticated users can access your site. [!code-csharp[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/CS/global.asax#1)] [!code-vb[System.Web.Security.DefaultAuthenticationModule#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.DefaultAuthenticationModule/VB/global.asax#1)] diff --git a/xml/System.Web.Security/FormsAuthentication.xml b/xml/System.Web.Security/FormsAuthentication.xml index 291864569b7..50c12f583ac 100644 --- a/xml/System.Web.Security/FormsAuthentication.xml +++ b/xml/System.Web.Security/FormsAuthentication.xml @@ -68,7 +68,7 @@ The following code example shows the login page for an ASP.NET application that uses forms authentication and ASP.NET membership. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/logincs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx" id="Snippet1"::: @@ -222,7 +222,7 @@ This method is obsolete. The recommended alternative is to use the Membership AP The property reflects the value for the `cookieless` attribute of the [forms](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1d3t3c61(v%3dvs.100)) configuration element. The property determines whether the value will be stored in a session cookie in the browser or stored in the property. > [!NOTE] -> When the value is stored in the URI, the length of the generated URI may be longer than the maximum length allowed. This is most likely to occur when the property is set to the application name and the application name is long (40 or more characters), when user names in the application are long, or when long strings are stored in the value. If the generated URI is too long, the Web server will return a `400 - Bad Request` error. +> When the value is stored in the URI, the length of the generated URI may be longer than the maximum length allowed. This is most likely to occur when the property is set to the application name and the application name is long (40 or more characters), when user names in the application are long, or when long strings are stored in the value. If the generated URI is too long, the Web server will return a `400 - Bad Request` error. @@ -288,13 +288,13 @@ This method is obsolete. The recommended alternative is to use the Membership AP ## Remarks The property returns a value based on the value and the capabilities of the browser. -- If the property is set to , the property will return `true`. +- If the property is set to , the property will return `true`. -- If the property is set to , the property will return `false`. +- If the property is set to , the property will return `false`. -- If the property is set to , the property will return `true` if the browser supports cookies and cookies are enabled; otherwise, the property will return `false`. +- If the property is set to , the property will return `true` if the browser supports cookies and cookies are enabled; otherwise, the property will return `false`. -- If the property is set to , the property will return `true` if the for the current supports both cookies and redirecting with cookies; otherwise, the property will return `false`. +- If the property is set to , the property will return `true` if the for the current supports both cookies and redirecting with cookies; otherwise, the property will return `false`. @@ -429,7 +429,7 @@ This method is obsolete. The recommended alternative is to use the Membership AP > When you redirect pages across applications, you must make sure that specific attributes in the [forms](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1d3t3c61(v%3dvs.100)) configuration element are duplicated across the authenticated applications. For more information and an example, see [Forms Authentication Across Applications](https://learn.microsoft.com/previous-versions/aspnet/eb0zx8fc(v=vs.100)). > [!IMPORTANT] -> When cross-application redirects are allowed, your site is vulnerable to an exploit that directs users to a malicious Web site but uses the login page for your site. Always verify that the redirect URL that is returned by the method is a URL that you expect so that you can make sure that you allow redirects only to approved Web sites. You must also verify that the redirect URL uses the appropriate protocol (HTTP or HTTPS). To perform these verifications, you can add a postback event handler to your login page, or you can add a handler for the event of the control. +> When cross-application redirects are allowed, your site is vulnerable to an exploit that directs users to a malicious Web site but uses the login page for your site. Always verify that the redirect URL that is returned by the method is a URL that you expect so that you can make sure that you allow redirects only to approved Web sites. You must also verify that the redirect URL uses the appropriate protocol (HTTP or HTTPS). To perform these verifications, you can add a postback event handler to your login page, or you can add a handler for the event of the control. @@ -519,7 +519,7 @@ This method is obsolete. The recommended alternative is to use the Membership AP The following code example stores the result of the method in a cookie by using the property and redirects the user to the URL returned from the method. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketClass/CS/formsauthenticationticketclasscs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketClass/VB/formsauthenticationticketclassvb.aspx" id="Snippet1"::: @@ -747,7 +747,7 @@ This method is obsolete. The recommended alternative is to use the Membership AP This method does not create a cookie. > [!IMPORTANT] -> Setting the property to `true` to allow cross-application redirects is a potential security threat. For more information, see the property. +> Setting the property to `true` to allow cross-application redirects is a potential security threat. For more information, see the property. @@ -755,7 +755,7 @@ This method does not create a cookie. The following code example redirects authenticated users to the URL returned from the method. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketClass/CS/formsauthenticationticketclasscs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketClass/VB/formsauthenticationticketclassvb.aspx" id="Snippet1"::: @@ -958,7 +958,7 @@ This method is obsolete. Alternatively, you can use ASP.NET membership to store By default, the `ReturnUrl` variable must refer to a page within the current application. If `ReturnUrl` refers to a page in a different application or on a different server, the methods redirects to the URL in the property. If you want to allow redirects to a page outside the current application, you must set the property to `true` using the `enableCrossAppRedirects` attribute of the [forms](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1d3t3c61(v%3dvs.100)) configuration element. > [!IMPORTANT] -> Setting the property to `true` to allow cross-application redirects is a potential security threat. For more information, see the property. +> Setting the property to `true` to allow cross-application redirects is a potential security threat. For more information, see the property. If the property is `true`, and either the `ReturnUrl` variable is within the current application or the property is `true`, then the method issues an authentication ticket and places it in the default cookie using the method. @@ -970,7 +970,7 @@ This method is obsolete. Alternatively, you can use ASP.NET membership to store The following code example redirects validated users to either the originally requested URL or the . The code example uses ASP.NET membership to validate users. For more information about ASP.NET membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/logincs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx" id="Snippet1"::: @@ -1020,7 +1020,7 @@ This method is obsolete. Alternatively, you can use ASP.NET membership to store By default, the `ReturnUrl` variable must refer to a page within the current application. If `ReturnUrl` refers to a page in a different application or on a different server, the method redirects to the URL in the property. If you want to allow redirects to a page outside the current application, you must set the property to `true` using the `enableCrossAppRedirects` attribute of the [forms](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1d3t3c61(v%3dvs.100)) configuration element. > [!IMPORTANT] -> Setting the property to `true` to allow cross-application redirects is a potential security threat. For more information, see the property. +> Setting the property to `true` to allow cross-application redirects is a potential security threat. For more information, see the property. If the property is `true`, and either the `ReturnUrl` variable is within the current application or the property is `true`, then the method issues an authentication ticket and places it in the cookie specified by the `strCookiePath` parameter using the method. @@ -1370,11 +1370,11 @@ This method is obsolete. Alternatively, you can use ASP.NET membership to store Calling the method only removes the forms authentication cookie. The Web server does not store valid and expired authentication tickets for later comparison. This makes your site vulnerable to a replay attack if a malicious user obtains a valid forms authentication cookie. To improve security when using a forms authentication cookie, you should do the following: -- Use absolute expiration for forms authentication cookies by setting the property to `false`. This limits the window in which a hijacked cookie can be replayed. +- Use absolute expiration for forms authentication cookies by setting the property to `false`. This limits the window in which a hijacked cookie can be replayed. -- Only issue and accept authentication cookies over Secure Sockets Layer (SSL), by setting the property to `true` and by running the entire Web site under SSL. Setting the property to `true` ensures that ASP.NET will never send an authentication cookie to the browser over a non-SSL connection; however, the client might not honor the secure setting on the cookie. This means the client might send the forms authentication cookie over a non-SSL connection, thus leaving it vulnerable to hijack. You can prevent a client from sending the forms authentication cookie in the clear by running the entire Web site under SSL. +- Only issue and accept authentication cookies over Secure Sockets Layer (SSL), by setting the property to `true` and by running the entire Web site under SSL. Setting the property to `true` ensures that ASP.NET will never send an authentication cookie to the browser over a non-SSL connection; however, the client might not honor the secure setting on the cookie. This means the client might send the forms authentication cookie over a non-SSL connection, thus leaving it vulnerable to hijack. You can prevent a client from sending the forms authentication cookie in the clear by running the entire Web site under SSL. -- Use persistent storage on the server to record when a user logs out of the Web site, and then use an application event such as event to determine whether the current user was authenticated with forms authentication. If the user was authenticated with forms authentication, and if the information in persistent storage indicates the user is logged out, immediately clear the authentication cookie and redirect the browser back to the login page. After a successful login, update storage to reflect that the user is logged in. When you use this method, your application must track the logged-in status of the user, and must force idle users to log out. +- Use persistent storage on the server to record when a user logs out of the Web site, and then use an application event such as event to determine whether the current user was authenticated with forms authentication. If the user was authenticated with forms authentication, and if the information in persistent storage indicates the user is logged out, immediately clear the authentication cookie and redirect the browser back to the login page. After a successful login, update storage to reflect that the user is logged in. When you use this method, your application must track the logged-in status of the user, and must force idle users to log out. diff --git a/xml/System.Web.Security/FormsAuthenticationTicket.xml b/xml/System.Web.Security/FormsAuthenticationTicket.xml index 85933f9f0e3..fcf3feaf1c0 100644 --- a/xml/System.Web.Security/FormsAuthenticationTicket.xml +++ b/xml/System.Web.Security/FormsAuthenticationTicket.xml @@ -39,7 +39,7 @@ The following code example stores the result of the method in a cookie using the and redirects the user to the URL returned from the method. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketClass/CS/formsauthenticationticketclasscs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketClass/VB/formsauthenticationticketclassvb.aspx" id="Snippet1"::: @@ -133,7 +133,7 @@ The object created by this constructor will have a value set to the value of the . > [!NOTE] -> The `userData` parameter cannot be `null`. +> The `userData` parameter cannot be `null`. ]]> @@ -185,7 +185,7 @@ ## Remarks > [!NOTE] -> The `userData` parameter cannot be `null`. +> The `userData` parameter cannot be `null`. @@ -193,7 +193,7 @@ The following code example stores the result of the method in a cookie using the property and redirects the user to the URL returned from the method. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketClass/CS/formsauthenticationticketclasscs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketClass/VB/formsauthenticationticketclassvb.aspx" id="Snippet1"::: @@ -241,7 +241,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: @@ -291,7 +291,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: @@ -334,7 +334,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: @@ -378,7 +378,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: @@ -426,7 +426,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: @@ -469,7 +469,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: @@ -514,7 +514,7 @@ You can use the property to store additional user information with the that is not maintained by the property values. > [!NOTE] -> You should limit the amount of data stored in the property. You must ensure that the size of the property does not result in an invalid cookie or an excessively long URL. +> You should limit the amount of data stored in the property. You must ensure that the size of the property does not result in an invalid cookie or an excessively long URL. @@ -522,7 +522,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: @@ -570,7 +570,7 @@ The following code example displays the property values of the for the current logged-on user. > [!NOTE] -> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. +> If there is no logged-on user, the property will be `null` and you will receive a compiler exception when attempting to cast the property as a object. :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/CS/formsauthenticationticketpropertiescs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/FormsAuthenticationTicketProperties/VB/formsauthenticationticketpropertiesvb.aspx" id="Snippet1"::: diff --git a/xml/System.Web.Security/MachineKey.xml b/xml/System.Web.Security/MachineKey.xml index db06f71c959..51888155789 100644 --- a/xml/System.Web.Security/MachineKey.xml +++ b/xml/System.Web.Security/MachineKey.xml @@ -16,14 +16,14 @@ Provides a way to encrypt or hash data (or both) by using the same algorithms and key values that are used for ASP.NET forms authentication and view state. - class provides methods that expose the hashing and encryption logic that ASP.NET provides. For information about which encryption and hashing algorithms ASP.NET uses, and the key values that it uses with them, see [machineKey Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)). - + class provides methods that expose the hashing and encryption logic that ASP.NET provides. For information about which encryption and hashing algorithms ASP.NET uses, and the key values that it uses with them, see [machineKey Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)). + > [!WARNING] -> The APIs should only be used in an ASP.NET app. Behavior of the MachineKey APIs outside the context of an ASP.NET application is undefined - +> The APIs should only be used in an ASP.NET app. Behavior of the MachineKey APIs outside the context of an ASP.NET application is undefined + ]]> The data to encrypt, hash, decrypt, or validate does not exist. @@ -60,16 +60,16 @@ Decodes and/or validates data that has been encrypted or provided with a hash-based message authentication code (HMAC). A array that represents the decrypted data. - class overview. - + class overview. + ]]> @@ -105,16 +105,16 @@ Encrypts data and/or appends a hash-based message authentication code (HMAC). The encrypted value, the input value with an HMAC appended, or the result of encrypting the input value with an HMAC appended. - class overview. - + class overview. + ]]> @@ -151,41 +151,41 @@ Protects the specified data by encrypting or signing it. The ciphertext data. - method, which requires the caller to specify whether the plaintext data should be encrypted, signed, or both. The method performs the appropriate operation and securely protects the data. Ciphertext data produced by this method can only be deciphered by the method. - - The `purposes` parameter is an optional list of reasons that can lock the ciphertext to a specific purpose. This parameter lets you isolate cryptographic operations performed by different subsystems within an application. A malicious client should not be able to get the result of one subsystem's method and feed it as input to another subsystem's method, which could compromise application security. The `purposes` parameter helps ensure that protected data can only be used by the component that originally generated it. Applications should make sure that each subsystem uses a unique `purposes` list. - - For example, to protect or unprotect an authentication token, you could call the method using code like the following example: - -```csharp -MachineKey.Protect(..., "Authentication token"); -MachineKey.Unprotect(..., "Authentication token"); -``` - -```vb -MachineKey.Protect(..., "Authentication token") -MachineKey.Unprotect(..., "Authentication token") -``` - - Applications can dynamically generate the `purposes` parameter. In that case, prefix user-supplied values with a fixed value (like "`Username:` " + *username*) to minimize the risk of a malicious client crafting input that matches a token that is used by some other part of the system. Any dynamically-generated strings should come after fixed strings. For example, to protect or unprotect a private message that is tied to a specific user, use code like the following example: - -```csharp -MachineKey.Protect(..., "Private message", "Recipient: " + username); -MachineKey.Unprotect(..., "Private message", "Recipient: " + username); -``` - -```vb -MachineKey.Protect(..., "Private message", "Recipient: " + username) -MachineKey.Unprotect(..., "Private message", "Recipient: " + username) -``` - - When the method is called, the value that is provided for the `purposes` parameter must be the same value that was provided to the method. Otherwise the operation will fail with a exception. - - The configuration settings that are required for the option are required for this method even if the property is not set to the option. - + method, which requires the caller to specify whether the plaintext data should be encrypted, signed, or both. The method performs the appropriate operation and securely protects the data. Ciphertext data produced by this method can only be deciphered by the method. + + The `purposes` parameter is an optional list of reasons that can lock the ciphertext to a specific purpose. This parameter lets you isolate cryptographic operations performed by different subsystems within an application. A malicious client should not be able to get the result of one subsystem's method and feed it as input to another subsystem's method, which could compromise application security. The `purposes` parameter helps ensure that protected data can only be used by the component that originally generated it. Applications should make sure that each subsystem uses a unique `purposes` list. + + For example, to protect or unprotect an authentication token, you could call the method using code like the following example: + +```csharp +MachineKey.Protect(..., "Authentication token"); +MachineKey.Unprotect(..., "Authentication token"); +``` + +```vb +MachineKey.Protect(..., "Authentication token") +MachineKey.Unprotect(..., "Authentication token") +``` + + Applications can dynamically generate the `purposes` parameter. In that case, prefix user-supplied values with a fixed value (like "`Username:` " + *username*) to minimize the risk of a malicious client crafting input that matches a token that is used by some other part of the system. Any dynamically-generated strings should come after fixed strings. For example, to protect or unprotect a private message that is tied to a specific user, use code like the following example: + +```csharp +MachineKey.Protect(..., "Private message", "Recipient: " + username); +MachineKey.Unprotect(..., "Private message", "Recipient: " + username); +``` + +```vb +MachineKey.Protect(..., "Private message", "Recipient: " + username) +MachineKey.Unprotect(..., "Private message", "Recipient: " + username) +``` + + When the method is called, the value that is provided for the `purposes` parameter must be the same value that was provided to the method. Otherwise the operation will fail with a exception. + + The configuration settings that are required for the option are required for this method even if the property is not set to the option. + ]]> The parameter is null. @@ -224,22 +224,22 @@ MachineKey.Unprotect(..., "Private message", "Recipient: " + username) Unprotects the specified data, which was protected by the method. The plaintext data. - method. - + method. + ]]> The parameter is null. The purposes array contains one or more white-space-only entries. - Possible causes include the following: - -- The protected data was tampered with. - -- The value of the parameter is not the same as the value that was specified when the data was protected. - -- The application is deployed to more than one server and is using auto-generated encryption keys. + Possible causes include the following: + +- The protected data was tampered with. + +- The value of the parameter is not the same as the value that was specified when the data was protected. + +- The application is deployed to more than one server and is using auto-generated encryption keys. diff --git a/xml/System.Web.Security/Membership.xml b/xml/System.Web.Security/Membership.xml index fe7702d594d..2b6b673accd 100644 --- a/xml/System.Web.Security/Membership.xml +++ b/xml/System.Web.Security/Membership.xml @@ -17,69 +17,69 @@ Validates user credentials and manages user settings. This class cannot be inherited. - class is used in ASP.NET applications to validate user credentials and manage user settings such as passwords and email addresses. The class can be used on its own, or in conjunction with the to create a complete system for authenticating users of a Web application or site. The control encapsulates the class to provide a convenient mechanism for validating users. - + class is used in ASP.NET applications to validate user credentials and manage user settings such as passwords and email addresses. The class can be used on its own, or in conjunction with the to create a complete system for authenticating users of a Web application or site. The control encapsulates the class to provide a convenient mechanism for validating users. + > [!NOTE] -> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). - - The class provides facilities for: - -- Creating new users. - -- Storing membership information (user names, passwords, email addresses, and supporting data) in Microsoft SQL Server or in an alternative data store. - -- Authenticating users who visit your site. You can authenticate users programmatically, or you can use the control to create a complete authentication system that requires little or no code. - -- Managing passwords, which includes creating, changing, retrieving, and resetting them, and so on. You can optionally configure ASP.NET membership to require a password question and answer to authenticate password reset or retrieval requests for users that have forgotten their password. - - Although ASP.NET membership is a self-standing feature in ASP.NET For authentication, it can be integrated with ASP.NET role management to provide authorization services for your site. Membership can also be integrated with the ASP.NET user to provide application-specific customization that can be tailored to individual users. For details, see [Understanding Role Management](https://learn.microsoft.com/previous-versions/aspnet/5k850zwb(v=vs.100)) and [ASP.NET Profile Properties Overview](https://learn.microsoft.com/previous-versions/aspnet/2y3fs9xs(v=vs.100)). - - The class relies on membership providers to communicate with a data source. The .NET Framework includes a , which stores user information in a Microsoft SQL Server database, and an , which enables you to store user information on an Active Directory or Active Directory Application Mode (ADAM) server. You can also implement a custom membership provider to communicate with an alternative data source that can be used by the class. Custom membership providers inherit the abstract class. For more information, see [Implementing a Membership Provider](https://learn.microsoft.com/previous-versions/aspnet/f1kyba5e(v=vs.100)). - - By default, ASP.NET membership is enabled for all ASP.NET applications. The default membership provider is the and is specified in the machine configuration with the name `AspNetSqlProvider`. The default instance of the is configured to connect to a local instance of Microsoft SQL Server. - - You can modify the default settings to specify a other than the `AspNetSqlProvider` instance as the default provider, or specify an instance of a custom provider as the default provider for your ASP.NET application using the Web.config file. You can specify the ASP.NET membership configuration for your Web application using the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration section in the Web.config file. You can use the [providers](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6d4936ht(v%3dvs.100)) subsection of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section to specify a membership provider other than one of the default providers. For example, the following [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section removes the default membership providers from the current application configuration and adds a new provider with a name of `SqlProvider` that connects to a SQL Server instance named `AspSqlServer`. - -``` - - - - - - - - - - - - - -``` - - - -## Examples - The following code example shows the login page for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the supplied user credentials are invalid, a message is displayed to the user. Otherwise, the user is redirected to the originally requested URL using the method. - +> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). + + The class provides facilities for: + +- Creating new users. + +- Storing membership information (user names, passwords, email addresses, and supporting data) in Microsoft SQL Server or in an alternative data store. + +- Authenticating users who visit your site. You can authenticate users programmatically, or you can use the control to create a complete authentication system that requires little or no code. + +- Managing passwords, which includes creating, changing, retrieving, and resetting them, and so on. You can optionally configure ASP.NET membership to require a password question and answer to authenticate password reset or retrieval requests for users that have forgotten their password. + + Although ASP.NET membership is a self-standing feature in ASP.NET For authentication, it can be integrated with ASP.NET role management to provide authorization services for your site. Membership can also be integrated with the ASP.NET user to provide application-specific customization that can be tailored to individual users. For details, see [Understanding Role Management](https://learn.microsoft.com/previous-versions/aspnet/5k850zwb(v=vs.100)) and [ASP.NET Profile Properties Overview](https://learn.microsoft.com/previous-versions/aspnet/2y3fs9xs(v=vs.100)). + + The class relies on membership providers to communicate with a data source. The .NET Framework includes a , which stores user information in a Microsoft SQL Server database, and an , which enables you to store user information on an Active Directory or Active Directory Application Mode (ADAM) server. You can also implement a custom membership provider to communicate with an alternative data source that can be used by the class. Custom membership providers inherit the abstract class. For more information, see [Implementing a Membership Provider](https://learn.microsoft.com/previous-versions/aspnet/f1kyba5e(v=vs.100)). + + By default, ASP.NET membership is enabled for all ASP.NET applications. The default membership provider is the and is specified in the machine configuration with the name `AspNetSqlProvider`. The default instance of the is configured to connect to a local instance of Microsoft SQL Server. + + You can modify the default settings to specify a other than the `AspNetSqlProvider` instance as the default provider, or specify an instance of a custom provider as the default provider for your ASP.NET application using the Web.config file. You can specify the ASP.NET membership configuration for your Web application using the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration section in the Web.config file. You can use the [providers](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6d4936ht(v%3dvs.100)) subsection of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section to specify a membership provider other than one of the default providers. For example, the following [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section removes the default membership providers from the current application configuration and adds a new provider with a name of `SqlProvider` that connects to a SQL Server instance named `AspSqlServer`. + +``` + + + + + + + + + + + + + +``` + + + +## Examples + The following code example shows the login page for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the supplied user credentials are invalid, a message is displayed to the user. Otherwise, the user is redirected to the originally requested URL using the method. + > [!NOTE] -> The ASP.NET login controls (, , , , and ) encapsulate virtually all of the logic required to prompt users for credentials and validate the credentials in the membership system and can be used in place of programmatic checking using the class. - +> The ASP.NET login controls (, , , , and ) encapsulate virtually all of the logic required to prompt users for credentials and validate the credentials in the membership system and can be used in place of programmatic checking using the class. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/logincs.aspx#1)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx#1)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx#1)] + ]]> Introduction to Membership @@ -105,34 +105,34 @@ Gets or sets the name of the application. The name of the application. - is used to identify users specific to an application. That is, the same user name can exist in the database for multiple ASP.NET applications that specify a different . This enables multiple applications to use the same database to store user information without running into duplicate user name conflicts. Alternatively, multiple ASP.NET applications can use the same user database by specifying the same . The can be set programmatically or declaratively in the configuration for the Web application. - + is used to identify users specific to an application. That is, the same user name can exist in the database for multiple ASP.NET applications that specify a different . This enables multiple applications to use the same database to store user information without running into duplicate user name conflicts. Alternatively, multiple ASP.NET applications can use the same user database by specifying the same . The can be set programmatically or declaratively in the configuration for the Web application. + > [!CAUTION] -> Because a single default membership provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior for multiple users of an application. We recommend that you avoid writing code that allows users to set the property, unless you must. An example of an application where setting the property may be required is an administrative application that manages membership data for multiple applications. Such an application should be a single-user application and not a Web application. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use a instance and sets the to `MyApplication`. - -``` - - - - - -``` - +> Because a single default membership provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior for multiple users of an application. We recommend that you avoid writing code that allows users to set the property, unless you must. An example of an application where setting the property may be required is an administrative application that manages membership data for multiple applications. Such an application should be a single-user application and not a Web application. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use a instance and sets the to `MyApplication`. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -180,30 +180,30 @@ Adds a new user to the data store. A object for the newly created user. - adds a new user to the data store and returns a object for the newly created user. If the user creation fails, a is thrown. You can retrieve a value from the property of the that indicates why user creation failed. - - Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods, such as for applications where is `true`, or by setting the property values of the object and passing them to the method. - - If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. - - The provides an option to require a unique email address for each user. If the property is `true`, you will need to use one of the overloads that allows you to specify an email address for the user being created. Otherwise, a will be thrown. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the login page for the application. - + adds a new user to the data store and returns a object for the newly created user. If the user creation fails, a is thrown. You can retrieve a value from the property of the that indicates why user creation failed. + + Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods, such as for applications where is `true`, or by setting the property values of the object and passing them to the method. + + If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. + + The provides an option to require a unique email address for each user. If the property is `true`, you will need to use one of the overloads that allows you to specify an email address for the user being created. Otherwise, a will be thrown. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the login page for the application. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.Membership#2](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/createuser2cs.aspx#2)] - [!code-aspx-vb[System.Web.Security.Membership#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/createuser2vb.aspx#2)] - + [!code-aspx-vb[System.Web.Security.Membership#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/createuser2vb.aspx#2)] + ]]> The user was not created. Check the property for a value. @@ -238,28 +238,28 @@ Adds a new user with a specified email address to the data store. A object for the newly created user. - adds a new user to the data store and returns a object for the newly created user. If the user creation fails, a is thrown. You can retrieve a value from the property of the that indicates why user creation failed. - - Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods, such as for applications where is `true`, or by setting the property values of the object and passing them to the method. - - If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the login page for the application. - + adds a new user to the data store and returns a object for the newly created user. If the user creation fails, a is thrown. You can retrieve a value from the property of the that indicates why user creation failed. + + Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods, such as for applications where is `true`, or by setting the property values of the object and passing them to the method. + + If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the login page for the application. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.Membership#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/createuser1cs.aspx#1)] - [!code-aspx-vb[System.Web.Security.Membership#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/createuser1vb.aspx#1)] - + [!code-aspx-vb[System.Web.Security.Membership#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/createuser1vb.aspx#1)] + ]]> The user was not created. Check the property for a value. @@ -308,30 +308,30 @@ Adds a new user with specified property values to the data store and returns a status parameter indicating that the user was successfully created or the reason the user creation failed. A object for the newly created user. If no user was created, this method returns . - adds a new user to the data store and returns a object for the newly created user. If the user creation fails, you can retrieve a value from the `status` output parameter that indicates why user creation failed. - - The method will return `null` if `password` is an empty string or `null`, `username` is an empty string or `null` or contains a comma (,), `passwordQuestion` is not `null` and is an empty string, or `passwordAnswer` is not `null` and contains an empty string. - - Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods and by setting the property values of the object and then passing the object to the method. - - If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. - - Leading and trailing spaces are trimmed from all string parameter values. - - - -## Examples - The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the login page for the application. - + adds a new user to the data store and returns a object for the newly created user. If the user creation fails, you can retrieve a value from the `status` output parameter that indicates why user creation failed. + + The method will return `null` if `password` is an empty string or `null`, `username` is an empty string or `null` or contains a comma (,), `passwordQuestion` is not `null` and is an empty string, or `passwordAnswer` is not `null` and contains an empty string. + + Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods and by setting the property values of the object and then passing the object to the method. + + If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. + + Leading and trailing spaces are trimmed from all string parameter values. + + + +## Examples + The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the login page for the application. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#2](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/CreateUsercs.aspx#2)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx#2)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx#2)] + ]]> Introduction to ASP.NET Membership @@ -375,19 +375,19 @@ Adds a new user with specified property values and a unique identifier to the data store and returns a status parameter indicating that the user was successfully created or the reason the user creation failed. A object for the newly created user. If no user was created, this method returns . - adds a new user to the data store and returns a object for the newly created user. If the user creation fails, you can retrieve a value from the `status` output parameter that indicates why user creation failed. You can specify a unique identifier for the user, such as a primary key value for a database, by using the `providerUserKey` parameter. - - The method will return `null` if `password` is an empty string or `null`, `username` is an empty string or `null` or contains a comma (,), `passwordQuestion` is not `null` and contains an empty string, or `passwordAnswer` is not `null` and contains an empty string. - - Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods and by setting the property values of the object and then passing the object to the method. - - If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. - - Leading and trailing spaces are trimmed from all string parameter values. - + adds a new user to the data store and returns a object for the newly created user. If the user creation fails, you can retrieve a value from the `status` output parameter that indicates why user creation failed. You can specify a unique identifier for the user, such as a primary key value for a database, by using the `providerUserKey` parameter. + + The method will return `null` if `password` is an empty string or `null`, `username` is an empty string or `null` or contains a comma (,), `passwordQuestion` is not `null` and contains an empty string, or `passwordAnswer` is not `null` and contains an empty string. + + Once a membership user has been created and you have a reference to a object for that user, you can modify the settings for that user with the public methods and by setting the property values of the object and then passing the object to the method. + + If a user already exists in the data source for the application, you can obtain a object for the existing user with the method. + + Leading and trailing spaces are trimmed from all string parameter values. + ]]> Introduction to ASP.NET Membership @@ -428,19 +428,19 @@ if the user was deleted; otherwise, . - , , or personalization is also deleted when you are using the , , and objects for data storage. - - - -## Examples - The following code example deletes the currently logged-on user and all related data. - + , , or personalization is also deleted when you are using the , , and objects for data storage. + + + +## Examples + The following code example deletes the currently logged-on user and all related data. + [!code-aspx-csharp[System.Web.Security.Membership#8](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/DeleteUsercs.aspx#8)] - [!code-aspx-vb[System.Web.Security.Membership#8](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/DeleteUservb.aspx#8)] - + [!code-aspx-vb[System.Web.Security.Membership#8](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/DeleteUservb.aspx#8)] + ]]> @@ -478,21 +478,21 @@ if the user was deleted; otherwise, . - , , or personalization is also deleted when you are using the , , and objects for data storage. - - - -## Examples - The following code example deletes the currently logged-on user and all related data. - + , , or personalization is also deleted when you are using the , , and objects for data storage. + + + +## Examples + The following code example deletes the currently logged-on user and all related data. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#6](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/DeleteUsercs.aspx#6)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#6](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/DeleteUservb.aspx#6)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#6](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/DeleteUservb.aspx#6)] + ]]> @@ -523,36 +523,36 @@ if the membership provider supports password reset; otherwise, . - , as users cannot retrieve hashed password values. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and enables password reset. - -``` - - - - - -``` - - The following code example first verifies that is `true`, then resets a user's password and returns the new, automatically generated password. - + , as users cannot retrieve hashed password values. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and enables password reset. + +``` + + + + + +``` + + The following code example first verifies that is `true`, then resets a user's password and returns the new, automatically generated password. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#8](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ResetPasswordcs.aspx#8)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#8](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ResetPasswordvb.aspx#8)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#8](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ResetPasswordvb.aspx#8)] + ]]> Introduction to ASP.NET Membership @@ -579,43 +579,43 @@ if the membership provider supports password retrieval; otherwise, . - is `false`, the underlying membership provider may throw a . - - The providers that are included with the .NET Framework support multiple password formats to enhance password security. If the password format is set to , then users will not be able to retrieve their existing password from the database. The password format provides one-way encoding of password values. Passwords are "hashed" and compared to values stored in the database for authentication. "Hashed" values cannot be un-encoded to retrieve the original password value. For more information, see . - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and enables password retrieval. - -``` - - - - - -``` - - The following code example first verifies that is `true`, then retrieves the password for a specified user name and sends it to the email address for the specified user. - + is `false`, the underlying membership provider may throw a . + + The providers that are included with the .NET Framework support multiple password formats to enhance password security. If the password format is set to , then users will not be able to retrieve their existing password from the database. The password format provides one-way encoding of password values. Passwords are "hashed" and compared to values stored in the database for authentication. "Hashed" values cannot be un-encoded to retrieve the original password value. For more information, see . + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and enables password retrieval. + +``` + + + + + +``` + + The following code example first verifies that is `true`, then retrieves the password for a specified user name and sends it to the email address for the specified user. + > [!IMPORTANT] -> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, we recommend that you return passwords using encryption, such as SSL. -> -> This example includes a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, we recommend that you return passwords using encryption, such as SSL. +> +> This example includes a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#4](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/RetrievePasswordcs.aspx#4)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] + ]]> Introduction to ASP.NET Membership @@ -653,28 +653,28 @@ The email address to search for. Gets a collection of membership users where the email address contains the specified email address to match. - A that contains all users that match the parameter. - + A that contains all users that match the parameter. + Leading and trailing spaces are trimmed from the parameter value. - returns a list of membership users where the email address matches the supplied `emailToMatch` for the configured `applicationName`. - - The performs its search using a LIKE clause against the `emailToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `emailToMatch` parameter value. - - - -## Examples - The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. - + returns a list of membership users where the email address matches the supplied `emailToMatch` for the configured `applicationName`. + + The performs its search using a LIKE clause against the `emailToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `emailToMatch` parameter value. + + + +## Examples + The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.Membership#9](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/FindUsersByEmailcs.aspx#9)] - [!code-aspx-vb[System.Web.Security.Membership#9](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/FindUsersByEmailvb.aspx#9)] - + [!code-aspx-vb[System.Web.Security.Membership#9](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/FindUsersByEmailvb.aspx#9)] + ]]> Introduction to ASP.NET Membership @@ -710,35 +710,35 @@ Gets a collection of membership users, in a page of data, where the email address contains the specified email address to match. A that contains a page of objects beginning at the page specified by . - returns a list of membership users where the email address matches the supplied `emailToMatch` for the configured `applicationName`. - - The performs its search using a LIKE clause against the `emailToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `emailToMatch` parameter value. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `emailToMatch` value. For example, if 13 users were found where `emailToMatch` matched part of or the entire email address, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. - - Leading and trailing spaces are trimmed from the `emailToMatch` parameter value. - - - -## Examples - The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. - + returns a list of membership users where the email address matches the supplied `emailToMatch` for the configured `applicationName`. + + The performs its search using a LIKE clause against the `emailToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `emailToMatch` parameter value. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `emailToMatch` value. For example, if 13 users were found where `emailToMatch` matched part of or the entire email address, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. + + Leading and trailing spaces are trimmed from the `emailToMatch` parameter value. + + + +## Examples + The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#13](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/FindUsersByEmailcs.aspx#13)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#13](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByEmailvb.aspx#13)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#13](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByEmailvb.aspx#13)] + ]]> - is less than zero. - - -or- - + is less than zero. + + -or- + is less than 1. Introduction to ASP.NET Membership @@ -775,30 +775,30 @@ The user name to search for. Gets a collection of membership users where the user name contains the specified user name to match. - A that contains all users that match the parameter. - + A that contains all users that match the parameter. + Leading and trailing spaces are trimmed from the parameter value. - returns a list of membership users where the user name matches the supplied `usernameToMatch` for the configured `applicationName`. - - The performs its search using a LIKE clause against the `usernameToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `usernameToMatch` parameter value. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. - + returns a list of membership users where the user name matches the supplied `usernameToMatch` for the configured `applicationName`. + + The performs its search using a LIKE clause against the `usernameToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `usernameToMatch` parameter value. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.Membership#10](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/FindUsersByNamecs.aspx#10)] - [!code-aspx-vb[System.Web.Security.Membership#10](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/FindUsersByNamevb.aspx#10)] - + [!code-aspx-vb[System.Web.Security.Membership#10](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/FindUsersByNamevb.aspx#10)] + ]]> @@ -836,41 +836,41 @@ The size of the page of results to return. The total number of matched users. Gets a collection of membership users, in a page of data, where the user name contains the specified user name to match. - A that contains a page of objects beginning at the page specified by . - + A that contains a page of objects beginning at the page specified by . + Leading and trailing spaces are trimmed from the parameter value. - returns a list of membership users where the user name matches the supplied `usernameToMatch` for the configured `applicationName`. - - The performs its search using a LIKE clause against the `usernameToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `usernameToMatch` parameter value. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `usernameToMatch` value. For example, if 13 users were found where `usernameToMatch` matched part of or the entire user name, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. - - - -## Examples - The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. - + returns a list of membership users where the user name matches the supplied `usernameToMatch` for the configured `applicationName`. + + The performs its search using a LIKE clause against the `usernameToMatch` parameter. Any wildcards that are supported by SQL Server in LIKE clauses can be used in the `usernameToMatch` parameter value. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `usernameToMatch` value. For example, if 13 users were found where `usernameToMatch` matched part of or the entire user name, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. + + + +## Examples + The following code example uses the method to retrieve membership user information from the membership database based on user input and displays the results in pages of data. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#12](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/FindUsersByNamecs.aspx#12)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#12](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByNamevb.aspx#12)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#12](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByNamevb.aspx#12)] + ]]> - is an empty string. - - -or- - - is less than zero. - - -or- - + is an empty string. + + -or- + + is less than zero. + + -or- + is less than 1. is . @@ -903,32 +903,32 @@ Generates a random password of the specified length. A random password of the specified length. - method is used to generate a random password and is most commonly used by the method implemented by a membership provider to reset the password for a user to a new, temporary password. - - The generated password only contains alphanumeric characters and the following punctuation marks: `!@#$%^&*()_-+=[{]};:<>|./?`. No hidden or non-printable control characters are included in the generated password. - + method is used to generate a random password and is most commonly used by the method implemented by a membership provider to reset the password for a user to a new, temporary password. + + The generated password only contains alphanumeric characters and the following punctuation marks: `!@#$%^&*()_-+=[{]};:<>|./?`. No hidden or non-printable control characters are included in the generated password. + > [!NOTE] -> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the property and the `numberOfNonAlphanumericCharacters` parameter. - - - -## Examples - The following code example creates a new membership user and uses the method to initialize the password for the new user to a random value, which is displayed to the user. - +> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the property and the `numberOfNonAlphanumericCharacters` parameter. + + + +## Examples + The following code example creates a new membership user and uses the method to initialize the password for the new user to a random value, which is displayed to the user. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.Membership#5](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/GeneratePasswordcs.aspx#5)] - [!code-aspx-vb[System.Web.Security.Membership#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/GeneratePasswordvb.aspx#5)] - + [!code-aspx-vb[System.Web.Security.Membership#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/GeneratePasswordvb.aspx#5)] + ]]> - is less than 1 or greater than 128 -or- - + is less than 1 or greater than 128 -or- + is less than 0 or greater than . Introduction to ASP.NET Membership @@ -964,19 +964,19 @@ Gets a collection of all the users in the database. A of objects representing all of the users in the database. - returns the information for all membership users for an application as a collection of objects. Be careful when using the method with very large user databases, as the resulting in your ASP.NET page may degrade the performance of your application. - - - -## Examples - The following code example returns a list of users with a count of the number of users currently online. - + returns the information for all membership users for an application as a collection of objects. Be careful when using the method with very large user databases, as the resulting in your ASP.NET page may degrade the performance of your application. + + + +## Examples + The following code example returns a list of users with a count of the number of users currently online. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#5](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ShowUserscs.aspx#5)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] + ]]> Introduction to ASP.NET Membership @@ -1010,26 +1010,26 @@ Gets a collection of all the users in the database in pages of data. A of objects representing all the users in the database for the configured . - are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. - - - -## Examples - The following code example returns a list of users in pages of data with a count of the number of users currently online. - + are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. + + + +## Examples + The following code example returns a list of users in pages of data with a count of the number of users currently online. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#5](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ShowUserscs.aspx#5)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] + ]]> - is less than zero. - - -or- - + is less than zero. + + -or- + is less than 1. Introduction to ASP.NET Membership @@ -1055,19 +1055,19 @@ Gets the number of users currently accessing an application. The number of users currently accessing an application. - returns the number of users for the current where the last-activity date is greater than the current time less the . The last-activity date/time stamp is updated to the current date and time when user credentials are validated by way of the or method or when a call to a overload that takes no parameters or one that uses the `userIsOnline` parameter to specify that the date/time stamp should be updated. - - - -## Examples - The following code example returns a list of users with a count of the number of users currently online. - + returns the number of users for the current where the last-activity date is greater than the current time less the . The last-activity date/time stamp is updated to the current date and time when user credentials are validated by way of the or method or when a call to a overload that takes no parameters or one that uses the `userIsOnline` parameter to specify that the date/time stamp should be updated. + + + +## Examples + The following code example returns a list of users with a count of the number of users currently online. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#5](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ShowUserscs.aspx#5)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] + ]]> Introduction to ASP.NET Membership @@ -1103,21 +1103,21 @@ Gets the information from the data source and updates the last-activity date/time stamp for the current logged-on membership user. A object representing the current logged-on user. - retrieves the user information from the data source and creates a object populated with the returned data. If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . - - You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved using the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, `GetUser()` implicitly updates the last-activity date/time stamp for the user. `GetUser(System.String)` and `GetUser(System.Object)` do not. - - - -## Examples - The following code example updates the last-activity date/time stamp for the current logged-on membership user and displays the user name in the ASP.NET page. - + retrieves the user information from the data source and creates a object populated with the returned data. If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . + + You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved using the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, `GetUser()` implicitly updates the last-activity date/time stamp for the user. `GetUser(System.String)` and `GetUser(System.Object)` do not. + + + +## Examples + The following code example updates the last-activity date/time stamp for the current logged-on membership user and displays the user name in the ASP.NET page. + [!code-aspx-csharp[System.Web.Security.Membership#3](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/default1cs.aspx#3)] - [!code-aspx-vb[System.Web.Security.Membership#3](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/default1vb.aspx#3)] - + [!code-aspx-vb[System.Web.Security.Membership#3](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/default1vb.aspx#3)] + ]]> No membership user is currently logged in. @@ -1148,21 +1148,21 @@ Gets the information from the data source for the current logged-on membership user. Updates the last-activity date/time stamp for the current logged-on membership user, if specified. A object representing the current logged-on user. - method retrieves the user information from the data source and creates a object populated with the returned data. If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . - - You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved using the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, `GetUser()` implicitly updates the last-activity date/time stamp for the user. `GetUser(System.String)` and `GetUser(System.Object)` do not. - - - -## Examples - The following code example displays the user name for the current logged-on membership user in the ASP.NET page without updating the last-activity date/time stamp for the user. - + method retrieves the user information from the data source and creates a object populated with the returned data. If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . + + You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved using the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, `GetUser()` implicitly updates the last-activity date/time stamp for the user. `GetUser(System.String)` and `GetUser(System.Object)` do not. + + + +## Examples + The following code example displays the user name for the current logged-on membership user in the ASP.NET page without updating the last-activity date/time stamp for the user. + [!code-aspx-csharp[System.Web.Security.Membership#4](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/default2cs.aspx#4)] - [!code-aspx-vb[System.Web.Security.Membership#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/default2vb.aspx#4)] - + [!code-aspx-vb[System.Web.Security.Membership#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/default2vb.aspx#4)] + ]]> No membership user is currently logged in. @@ -1199,13 +1199,13 @@ Gets the information from the data source for the membership user associated with the specified unique identifier. A object representing the user associated with the specified unique identifier. - method retrieves the user information from the data source and creates a object populated with the returned data. The user is identified using the unique identifier from the data source specified using the `providerUserKey` parameter. - - You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved with the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, `GetUser()` implicitly updates the last-activity date/time stamp for the user. `GetUser(System.String)` and `GetUser(System.Object)` do not - + method retrieves the user information from the data source and creates a object populated with the returned data. The user is identified using the unique identifier from the data source specified using the `providerUserKey` parameter. + + You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved with the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, `GetUser()` implicitly updates the last-activity date/time stamp for the user. `GetUser(System.String)` and `GetUser(System.Object)` do not + ]]> @@ -1243,21 +1243,21 @@ Gets the information from the data source for the specified membership user. A object representing the specified user. If the parameter does not correspond to an existing user, this method returns . - method retrieves the user information from the data source and creates a object populated with the returned data. If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . - - You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved with the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, implicitly updates the last-activity date/time stamp for the user. and do not. - - - -## Examples - The following code example uses the method to return a object for the current logged-on user and updates the email address for the user. - + method retrieves the user information from the data source and creates a object populated with the returned data. If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . + + You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved with the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, implicitly updates the last-activity date/time stamp for the user. and do not. + + + +## Examples + The following code example uses the method to return a object for the current logged-on user and updates the email address for the user. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#11](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/UpdateEmailcs.aspx#11)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/UpdateEmailvb.aspx#11)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/UpdateEmailvb.aspx#11)] + ]]> @@ -1293,11 +1293,11 @@ Gets the information from the data source for the membership user associated with the specified unique identifier. Updates the last-activity date/time stamp for the user, if specified. A object representing the user associated with the specified unique identifier. - method retrieves the user information from the data source and creates a object populated with the returned data. The user is identified with the unique identifier from the data source specified in the `providerUserKey` parameter. - + method retrieves the user information from the data source and creates a object populated with the returned data. The user is identified with the unique identifier from the data source specified in the `providerUserKey` parameter. + ]]> @@ -1331,23 +1331,23 @@ Gets the information from the data source for the specified membership user. Updates the last-activity date/time stamp for the user, if specified. A object representing the specified user. If the parameter does not correspond to an existing user, this method returns . - method retrieves the user information from the data source and creates a object populated with the returned data. - - If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . - - You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved with the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, implicitly updates the last-activity date/time stamp for the user. and do not. - - - -## Examples - The following code example retrieves the password for a specified user name and sends it to the email address for the specified user. The call to specifies that the last-activity date/time stamp for the user not be updated. - + method retrieves the user information from the data source and creates a object populated with the returned data. + + If you use one of the overloads that does not take a `username` parameter, returns the information for the current logged-on membership user. The current logged-on membership user is identified by the of the user in the current . + + You can also specify whether you want to update the last-activity date/time stamp for the user being retrieved with the `userIsOnline` parameter. Of the overloads that do not take a `userIsOnline` parameter, implicitly updates the last-activity date/time stamp for the user. and do not. + + + +## Examples + The following code example retrieves the password for a specified user name and sends it to the email address for the specified user. The call to specifies that the last-activity date/time stamp for the user not be updated. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#4](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/RetrievePasswordcs.aspx#4)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] + ]]> @@ -1381,24 +1381,24 @@ Gets a user name where the email address for the user matches the specified email address. The user name where the email address for the user matches the specified email address. If no match is found, is returned. - can be used to retrieve the user name for a membership user in the case where a user does not know their user name, but does know their email address. If more than one user in the data store has the same email address, the first user name encountered is returned. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example retrieves the user name for a specified email address. - + can be used to retrieve the user name for a membership user in the case where a user does not know their user name, but does know their email address. If more than one user in the data store has the same email address, the first user name encountered is returned. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example retrieves the user name for a specified email address. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#7](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/GetUserByEmailcs.aspx#7)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/GetUserByEmailvb.aspx#7)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/GetUserByEmailvb.aspx#7)] + ]]> Introduction to ASP.NET Membership @@ -1424,15 +1424,15 @@ The identifier of the algorithm used to hash passwords. The identifier of the algorithm used to hash passwords, or blank to use the default hash algorithm. - property identifies the custom hash algorithm used by the class. You set the property using the `hashAlgorithmType` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element. - - The .NET Framework enables you to configure custom cryptography classes using the [``](/dotnet/framework/configure-apps/file-schema/cryptography/cryptographysettings-element) element configuration section. The property must match the `name` attribute of the [``](/dotnet/framework/configure-apps/file-schema/cryptography/nameentry-element) element in a [``](/dotnet/framework/configure-apps/file-schema/cryptography/cryptonamemapping-element) element. For more information, see [Mapping Algorithm Names to Cryptography Classes](/dotnet/framework/configure-apps/map-algorithm-names-to-cryptography-classes). - - If the property is not set, the class uses the hash algorithm set in the `validation` attribute of the `` element. - + property identifies the custom hash algorithm used by the class. You set the property using the `hashAlgorithmType` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element. + + The .NET Framework enables you to configure custom cryptography classes using the [``](/dotnet/framework/configure-apps/file-schema/cryptography/cryptographysettings-element) element configuration section. The property must match the `name` attribute of the [``](/dotnet/framework/configure-apps/file-schema/cryptography/nameentry-element) element in a [``](/dotnet/framework/configure-apps/file-schema/cryptography/cryptonamemapping-element) element. For more information, see [Mapping Algorithm Names to Cryptography Classes](/dotnet/framework/configure-apps/map-algorithm-names-to-cryptography-classes). + + If the property is not set, the class uses the hash algorithm set in the `validation` attribute of the `` element. + ]]> Introduction to ASP.NET Membership @@ -1458,42 +1458,42 @@ Gets the number of invalid password or password-answer attempts allowed before the membership user is locked out. The number of invalid password or password-answer attempts allowed before the membership user is locked out. - property works in conjunction with the property to guard against an unwanted source using repeated attempts to guess the password or password answer of a membership user. - - If the number of invalid passwords or password answers entered for a membership user is greater than or equal to the value of the property within the number of minutes specified by the property, then the user is locked out of the Web site by setting the property to `true` until the user is unlocked by a call to the method. - - If a valid password or password answer is supplied before the value of the property is reached, the counter that tracks the number of invalid attempts is set to zero. - - Invalid password and password answer attempts are tracked separately. For example, if the property is set to 5, the user has up to five attempts to enter a correct password and up to five attempts to enter a correct password answer without being locked out. - - The property value is set in the application configuration using the `maxInvalidPasswordAttempts` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. - - If the property is `false`, invalid password-answer attempts are not tracked. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of an application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. - -``` - - - -``` - + property works in conjunction with the property to guard against an unwanted source using repeated attempts to guess the password or password answer of a membership user. + + If the number of invalid passwords or password answers entered for a membership user is greater than or equal to the value of the property within the number of minutes specified by the property, then the user is locked out of the Web site by setting the property to `true` until the user is unlocked by a call to the method. + + If a valid password or password answer is supplied before the value of the property is reached, the counter that tracks the number of invalid attempts is set to zero. + + Invalid password and password answer attempts are tracked separately. For example, if the property is set to 5, the user has up to five attempts to enter a correct password and up to five attempts to enter a correct password answer without being locked out. + + The property value is set in the application configuration using the `maxInvalidPasswordAttempts` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. + + If the property is `false`, invalid password-answer attempts are not tracked. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of an application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. + +``` + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1519,35 +1519,35 @@ Gets the minimum number of special characters that must be present in a valid password. The minimum number of special characters that must be present in a valid password. - property returns the minimum number of special, non-alphanumeric characters that must be entered to create a valid password for the membership provider specified in the property. - - The property value is set in the application configuration using the `minRequiredNonAlphanumericCharacters` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. - - A non-alphanumeric character is a character for which the method returns `false`. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredNonAlphanumericCharacters` attribute to 1 character. - -``` - - - -``` - + property returns the minimum number of special, non-alphanumeric characters that must be entered to create a valid password for the membership provider specified in the property. + + The property value is set in the application configuration using the `minRequiredNonAlphanumericCharacters` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. + + A non-alphanumeric character is a character for which the method returns `false`. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredNonAlphanumericCharacters` attribute to 1 character. + +``` + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1573,33 +1573,33 @@ Gets the minimum length required for a password. The minimum length required for a password. - property gets the minimum number of characters that must be entered to create a valid password for the membership provider specified in the property. - - The property value is set in the application configuration using the `minRequiredPasswordLength` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredPasswordLength` attribute to seven characters. - -``` - - - -``` - + property gets the minimum number of characters that must be entered to create a valid password for the membership provider specified in the property. + + The property value is set in the application configuration using the `minRequiredPasswordLength` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredPasswordLength` attribute to seven characters. + +``` + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1625,41 +1625,41 @@ Gets the time window between which consecutive failed attempts to provide a valid password or password answer are tracked. The time window, in minutes, during which consecutive failed attempts to provide a valid password or password answer are tracked. The default is 10 minutes. If the interval between the current failed attempt and the last failed attempt is greater than the property setting, each failed attempt is treated as if it were the first failed attempt. - property works in conjunction with the property to help guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. When a user attempts to log in with, change, or reset their password, only a certain number of consecutive attempts are allowed within a specified time window. The length of this time window is specified in the property, which identifies the number of minutes allowed between invalid attempts. - - If the number of consecutive failed attempts that a user makes to reset their password equals the value stored in the property, and the time elapsed since the last invalid attempt is less than the number of minutes specified in the property, then the membership user is locked out. The user is locked out by setting the property to `true` until the user is unlocked by a call to the method. - - If the interval between the current failed attempt and the last failed attempt is greater than the property setting, the current invalid attempt is counted as the first. If a valid password answer is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password-answer attempts is set to 0 (zero). If a valid password is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password attempts and the count of invalid password-answer attempts are set to 0 (zero). - - Invalid password and password-answer attempts accumulate independently of one another. For example, if the is set to 5, and three invalid password attempts are made followed by two invalid password-answer attempts, two more invalid password attempts (or three more invalid password-answer attempts) must be made within for the membership user to be locked out. - - The property value is set in the application configuration by using the `passwordAttemptWindow` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration-element section. - - If the property is set to `false`, invalid password-answer attempts are not tracked. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. - -``` - - - - - -``` - + property works in conjunction with the property to help guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. When a user attempts to log in with, change, or reset their password, only a certain number of consecutive attempts are allowed within a specified time window. The length of this time window is specified in the property, which identifies the number of minutes allowed between invalid attempts. + + If the number of consecutive failed attempts that a user makes to reset their password equals the value stored in the property, and the time elapsed since the last invalid attempt is less than the number of minutes specified in the property, then the membership user is locked out. The user is locked out by setting the property to `true` until the user is unlocked by a call to the method. + + If the interval between the current failed attempt and the last failed attempt is greater than the property setting, the current invalid attempt is counted as the first. If a valid password answer is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password-answer attempts is set to 0 (zero). If a valid password is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password attempts and the count of invalid password-answer attempts are set to 0 (zero). + + Invalid password and password-answer attempts accumulate independently of one another. For example, if the is set to 5, and three invalid password attempts are made followed by two invalid password-answer attempts, two more invalid password attempts (or three more invalid password-answer attempts) must be made within for the membership user to be locked out. + + The property value is set in the application configuration by using the `passwordAttemptWindow` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration-element section. + + If the property is set to `false`, invalid password-answer attempts are not tracked. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1685,47 +1685,47 @@ Gets the regular expression used to evaluate a password. A regular expression used to evaluate a password. - property gets the regular expression used to evaluate password complexity from the provider specified in the property. - - The property is set in the application configuration using the `passwordStrengthRegularExpression` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. - - For more information about regular expressions, see [.NET Framework Regular Expressions](/dotnet/standard/base-types/regular-expressions). - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `passwordStrengthRegularExpression` attribute to a regular expression that validates the password meets the following criteria: - -- Is at least six characters long. - -- Contains at least one digit. - -- Contains at least one special (non-alphanumeric) character. - -- Contains at least one lowercase letter. - -- Contains at least one uppercase letter. - - If the password does not meet these criteria, the password is not accepted by the membership provider. - -``` - - - -``` - + property gets the regular expression used to evaluate password complexity from the provider specified in the property. + + The property is set in the application configuration using the `passwordStrengthRegularExpression` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element. + + For more information about regular expressions, see [.NET Framework Regular Expressions](/dotnet/standard/base-types/regular-expressions). + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `passwordStrengthRegularExpression` attribute to a regular expression that validates the password meets the following criteria: + +- Is at least six characters long. + +- Contains at least one digit. + +- Contains at least one special (non-alphanumeric) character. + +- Contains at least one lowercase letter. + +- Contains at least one uppercase letter. + + If the password does not meet these criteria, the password is not accepted by the membership provider. + +``` + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1751,19 +1751,19 @@ Gets a reference to the default membership provider for the application. The default membership provider for the application exposed using the abstract base class. - property enables you to reference the default membership provider for an application directly. This is commonly used to access custom members of the membership provider that are not part of the abstract base class. - - - -## Examples - The following code example accesses the default enabled for the application using the property in order to determine the value of the custom property. - + property enables you to reference the default membership provider for an application directly. This is commonly used to access custom members of the membership provider that are not part of the abstract base class. + + + +## Examples + The following code example accesses the default enabled for the application using the property in order to determine the value of the custom property. + [!code-aspx-csharp[System.Web.Security.Membership#6](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/Providercs.aspx#6)] - [!code-aspx-vb[System.Web.Security.Membership#6](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/Providervb.aspx#6)] - + [!code-aspx-vb[System.Web.Security.Membership#6](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/Providervb.aspx#6)] + ]]> Introduction to ASP.NET Membership @@ -1789,46 +1789,46 @@ Gets a collection of the membership providers for the ASP.NET application. A of the membership providers configured for the ASP.NET application. - property references all of the membership providers enabled for an application, including providers added in the Web.config file for the application and the Machine.config file for all applications. You can control which membership providers are available for an application using the [providers](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6d4936ht(v%3dvs.100)) element of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section in the configuration for your application. For example, the following sample shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section in the Web.config file for an application that removes the instance (`AspNetSqlProvider`) specified in the machine configuration file and adds a instance named `SqlProvider` as the default membership provider for the application. - -``` - - - - - - - - - - - - - -``` - - When specifying the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) section, you must specify the `defaultProvider` attribute. If you do not specify a [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) section in your Web.config, the values from the machine configuration are used and the instance named `AspNetSqlProvider` is established as the `defaultProvider`. - - You can obtain a strongly typed reference to a provider from the collection by indexing the membership provider by name and casting it as the desired type. - - - -## Examples - The following code example lists the providers enabled for an application and their respective types. - + property references all of the membership providers enabled for an application, including providers added in the Web.config file for the application and the Machine.config file for all applications. You can control which membership providers are available for an application using the [providers](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6d4936ht(v%3dvs.100)) element of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section in the configuration for your application. For example, the following sample shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) section in the Web.config file for an application that removes the instance (`AspNetSqlProvider`) specified in the machine configuration file and adds a instance named `SqlProvider` as the default membership provider for the application. + +``` + + + + + + + + + + + + + +``` + + When specifying the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) section, you must specify the `defaultProvider` attribute. If you do not specify a [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) section in your Web.config, the values from the machine configuration are used and the instance named `AspNetSqlProvider` is established as the `defaultProvider`. + + You can obtain a strongly typed reference to a provider from the collection by indexing the membership provider by name and casting it as the desired type. + + + +## Examples + The following code example lists the providers enabled for an application and their respective types. + [!code-aspx-csharp[System.Web.Security.Membership#7](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/Providerscs.aspx#7)] - [!code-aspx-vb[System.Web.Security.Membership#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/Providersvb.aspx#7)] - + [!code-aspx-vb[System.Web.Security.Membership#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/Providersvb.aspx#7)] + ]]> Introduction to ASP.NET Membership @@ -1855,45 +1855,45 @@ if a password answer is required for password reset and retrieval; otherwise, . - is checked when or is called. The provider provided with the .NET Framework throws a if is `true` and the supplied password answer is `null`. - - If and are both `false`, can still be used to enforce the creation of questions and answers when new users are created; however, the question and answer will not be used. You will be able to retrieve the question by using the class. - - For more information, see and . - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the , enables password reset, and requires a password answer when performing a reset. - -``` - - - - - -``` - - The following code sample checks the value of and adds the necessary controls for a password question and answer to be supplied when creating a user. - + is checked when or is called. The provider provided with the .NET Framework throws a if is `true` and the supplied password answer is `null`. + + If and are both `false`, can still be used to enforce the creation of questions and answers when new users are created; however, the question and answer will not be used. You will be able to retrieve the question by using the class. + + For more information, see and . + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the , enables password reset, and requires a password answer when performing a reset. + +``` + + + + + +``` + + The following code sample checks the value of and adds the necessary controls for a password question and answer to be supplied when creating a user. + > [!IMPORTANT] -> This example includes a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example includes a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#2](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/CreateUsercs.aspx#2)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx#2)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx#2)] + ]]> Introduction to ASP.NET Membership @@ -1922,22 +1922,22 @@ A object that represents the user to be updated and the updated information for the user. Updates the database with the information for the specified user. - takes, as input, a object populated with current information for the membership user and updates the data source with the property values of the object. You can construct a new , or retrieve a object populated with current values at the data source using the , , , or methods. - - - -## Examples - The following code example updates the email address for the current logged-on user. - + takes, as input, a object populated with current information for the membership user and updates the data source with the property values of the object. You can construct a new , or retrieve a object populated with current values at the data source using the , , , or methods. + + + +## Examples + The following code example updates the email address for the current logged-on user. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#11](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/UpdateEmailcs.aspx#11)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/UpdateEmailvb.aspx#11)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/UpdateEmailvb.aspx#11)] + ]]> @@ -1965,34 +1965,34 @@ Specifies the number of minutes after the last-activity date/time stamp for a user during which the user is considered online. The number of minutes after the last-activity date/time stamp for a user during which the user is considered online. - property value is checked during the call to . If the for a user is greater than the current date and time minus the value in minutes, then the user is considered online. You can determine whether a membership user is considered online with the property of the class. - - The for a user is updated when a user's credentials are successfully validated by the method. You can also update the for a membership user when you call one of the overloads. If you call a overload that takes a `userIsOnline` parameter, specify a value of `true` to update the for the user. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `userIsOnlineTimeWindow` attribute to 20 minutes. - -``` - - - - - -``` - + property value is checked during the call to . If the for a user is greater than the current date and time minus the value in minutes, then the user is considered online. You can determine whether a membership user is considered online with the property of the class. + + The for a user is updated when a user's credentials are successfully validated by the method. You can also update the for a membership user when you call one of the overloads. If you call a overload that takes a `userIsOnline` parameter, specify a value of `true` to update the for the user. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `userIsOnlineTimeWindow` attribute to 20 minutes. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -2025,22 +2025,22 @@ if the supplied user name and password are valid; otherwise, . - provides an easy way to verify a user name and password from the data source. Note that, if the `username` parameter is empty or `null`, an is thrown. - - - -## Examples - The following code example shows the login page for an ASP.NET application configured to use forms authentication and the class. If the supplied user credentials are invalid, a message is displayed to the user. Otherwise, the user is redirected to the originally requested URL by the method. - + provides an easy way to verify a user name and password from the data source. Note that, if the `username` parameter is empty or `null`, an is thrown. + + + +## Examples + The following code example shows the login page for an ASP.NET application configured to use forms authentication and the class. If the supplied user credentials are invalid, a message is displayed to the user. Otherwise, the user is redirected to the originally requested URL by the method. + > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). - +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/logincs.aspx#1)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx#1)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx#1)] + ]]> Introduction to ASP.NET Membership @@ -2065,25 +2065,25 @@ Occurs when a user is created, a password is changed, or a password is reset. - event is raised when the method, the method, or the method of a membership provider is called. - - You can use the event to validate password formats and values for membership users. - - You can cancel the current , , or action by setting the property of the supplied to `true` during the event. - - If you cancel the current action by setting the property to `true`, you can set the property of the supplied to an exception that describes the reason for the password-validation failure. The calling method will throw the exception that the property is set to. If the property is `null`, the caller will throw a generic password-validation-failure exception. - - - -## Examples - The following code example shows a event that validates the format of the password for a user and cancels the action if the password does not match the required format. - + event is raised when the method, the method, or the method of a membership provider is called. + + You can use the event to validate password formats and values for membership users. + + You can cancel the current , , or action by setting the property of the supplied to `true` during the event. + + If you cancel the current action by setting the property to `true`, you can set the property of the supplied to an exception that describes the reason for the password-validation failure. The calling method will throw the exception that the property is set to. If the property is `null`, the caller will throw a generic password-validation-failure exception. + + + +## Examples + The following code example shows a event that validates the format of the password for a user and cancels the action if the password does not match the required format. + [!code-csharp[System.Web.Security.Membership#11](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/CreateUser3cs.aspx#11)] - [!code-vb[System.Web.Security.Membership#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/CreateUser3vb.aspx#11)] - + [!code-vb[System.Web.Security.Membership#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/CreateUser3vb.aspx#11)] + ]]> Introduction to ASP.NET Membership diff --git a/xml/System.Web.Security/MembershipCreateStatus.xml b/xml/System.Web.Security/MembershipCreateStatus.xml index a35443efcb6..ccfad995d6f 100644 --- a/xml/System.Web.Security/MembershipCreateStatus.xml +++ b/xml/System.Web.Security/MembershipCreateStatus.xml @@ -28,24 +28,24 @@ Describes the result of a operation. - enumeration indicates the success or failure of an attempt to create a new user. If the operation fails, the enumeration describes the cause of the failure. - + enumeration indicates the success or failure of an attempt to create a new user. If the operation fails, the enumeration describes the cause of the failure. + > [!NOTE] -> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). - - If you use a method overload that does not specify an output parameter of type , an unsuccessful attempt to create a new user throws a with the property set to one of the enumeration values. - - - -## Examples - The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. If the user is created successfully, the user is redirected to the login page for the application. This code example uses the enumeration to determine the message displayed to the user in the event of a failure. - +> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). + + If you use a method overload that does not specify an output parameter of type , an unsuccessful attempt to create a new user throws a with the property set to one of the enumeration values. + + + +## Examples + The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, a message is displayed to the user. If the user is created successfully, the user is redirected to the login page for the application. This code example uses the enumeration to determine the message displayed to the user in the event of a failure. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/CreateUsercs.aspx" id="Snippet2"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx" id="Snippet2"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx" id="Snippet2"::: + ]]> Introduction to Membership diff --git a/xml/System.Web.Security/MembershipCreateUserException.xml b/xml/System.Web.Security/MembershipCreateUserException.xml index 30180c35f52..c66b0c46f36 100644 --- a/xml/System.Web.Security/MembershipCreateUserException.xml +++ b/xml/System.Web.Security/MembershipCreateUserException.xml @@ -39,7 +39,7 @@ An instance of the class is thrown when a operation fails. > [!NOTE] -> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). +> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). The property indicates the reason for the exception so you can handle it appropriately. @@ -49,7 +49,7 @@ The following code example creates a new user for an ASP.NET application configured to use forms authentication and ASP.NET membership. If the user is not created successfully, the code catches the and displays the message specified in the property. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-aspx-csharp[System.Web.Security.Membership#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/createuser1cs.aspx#1)] [!code-aspx-vb[System.Web.Security.Membership#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/createuser1vb.aspx#1)] diff --git a/xml/System.Web.Security/MembershipPasswordFormat.xml b/xml/System.Web.Security/MembershipPasswordFormat.xml index 6b74164fe72..cf65f889c29 100644 --- a/xml/System.Web.Security/MembershipPasswordFormat.xml +++ b/xml/System.Web.Security/MembershipPasswordFormat.xml @@ -28,38 +28,38 @@ Describes the encryption format for storing passwords for membership users. - class supports different password storage formats, but you should only use `Hashed`; `Clear` and `Encrypted` are not secure. Clear passwords are not secure and shouldn't be used. They are stored in plain text. Encrypted passwords are not considered safe, as a breach that reveals your database contents can also expose the encryption key. This means your encrypted passwords could be decrypted and exposed. Passwords are encrypted when stored and can be decrypted for password comparison or password retrieval. Hashed passwords are encrypted using a one-way salted hash when stored in the database. When a password is validated, it is combined with a salt value and then hashed. The result is compared with the value in the database for verification. Hashed passwords cannot be retrieved. -The class supports different password storage formats, but you should only use `Hashed`; `Clear` and `Encrypted` are not secure. Clear passwords are not secure and shouldn't be used. They are stored in plain text. Encrypted passwords are not considered safe, as a breach that reveals your database contents can also expose the encryption key. This means your encrypted passwords could be decrypted and exposed. Passwords are encrypted when stored and can be decrypted for password comparison or password retrieval. Hashed passwords are encrypted using a one-way salted hash when stored in the database. When a password is validated, it is combined with a salt value and then hashed. The result is compared with the value in the database for verification. Hashed passwords cannot be retrieved. - > [!NOTE] -> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). - - - -## Examples - The following example shows the [machineKey Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and sets its password format to `Hashed`. +> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). + + + +## Examples + The following example shows the [machineKey Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and sets its password format to `Hashed`. + + This example uses SHA1. Due to collision problems with SHA1, Microsoft recommends SHA256. + +``` + + + + + +``` - This example uses SHA1. Due to collision problems with SHA1, Microsoft recommends SHA256. - -``` - - - - - -``` - ]]> Introduction to Membership diff --git a/xml/System.Web.Security/MembershipProvider.xml b/xml/System.Web.Security/MembershipProvider.xml index f39bdc64fa7..606aa6540b4 100644 --- a/xml/System.Web.Security/MembershipProvider.xml +++ b/xml/System.Web.Security/MembershipProvider.xml @@ -29,28 +29,28 @@ Defines the contract that ASP.NET implements to provide membership services using custom membership providers. - [!NOTE] > ASP.NET membership providers have been superseded by [ASP.NET Identity](/aspnet/identity/overview/getting-started/introduction-to-aspnet-identity). We strongly recommend updating apps to use the ASP.NET Identity platform instead of the membership providers. -ASP.NET membership is designed to enable you to easily use a number of different membership providers for your ASP.NET applications. You can use the supplied membership providers that are included with .NET Framework, or you can implement your own provider. - +ASP.NET membership is designed to enable you to easily use a number of different membership providers for your ASP.NET applications. You can use the supplied membership providers that are included with .NET Framework, or you can implement your own provider. + > [!NOTE] -> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). - - When implementing a custom membership provider, you are required to inherit the abstract class. - - There are two primary reasons for creating a custom membership provider. - -- You need to store membership information in a data source that is not supported by the membership providers included with the .NET Framework, such as a FoxPro database, an Oracle database, or other data source. - -- You need to manage membership information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. A common example of this would be membership data that already exists in a SQL Server database for a company or Web site. - - The abstract class inherits from the abstract class. implementations must also implement the required members of . - +> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). + + When implementing a custom membership provider, you are required to inherit the abstract class. + + There are two primary reasons for creating a custom membership provider. + +- You need to store membership information in a data source that is not supported by the membership providers included with the .NET Framework, such as a FoxPro database, an Oracle database, or other data source. + +- You need to manage membership information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. A common example of this would be membership data that already exists in a SQL Server database for a company or Web site. + + The abstract class inherits from the abstract class. implementations must also implement the required members of . + ]]> Implementing a Membership Provider @@ -82,11 +82,11 @@ ASP.NET membership is designed to enable you to easily use a number of different Initializes a new instance of the class. - abstract class. Initialization values for a implementation are passed to the method implementation. - + abstract class. Initialization values for a implementation are passed to the method implementation. + ]]> Implementing a Membership Provider @@ -116,20 +116,20 @@ ASP.NET membership is designed to enable you to easily use a number of different The name of the application using the custom membership provider. The name of the application using the custom membership provider. - property value is stored in the data source with related user information to associate a user with a particular application. This property is read/write and defaults to the property value if not specified explicitly. - - Because membership providers store user information uniquely for each application, multiple ASP.NET applications can use the same data source without running into a conflict if duplicate user names are created. Alternatively, multiple ASP.NET applications can use the same user data source by specifying the same . - - In your membership provider implementation, you will need to ensure that your data schema includes the and that data source queries and updates also include the . - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property value is stored in the data source with related user information to associate a user with a particular application. This property is read/write and defaults to the property value if not specified explicitly. + + Because membership providers store user information uniquely for each application, multiple ASP.NET applications can use the same data source without running into a conflict if duplicate user names are created. Alternatively, multiple ASP.NET applications can use the same user data source by specifying the same . + + In your membership provider implementation, you will need to ensure that your data schema includes the and that data source queries and updates also include the . + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -168,16 +168,16 @@ ASP.NET membership is designed to enable you to easily use a number of different if the password was updated successfully; otherwise, . - implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -218,18 +218,18 @@ ASP.NET membership is designed to enable you to easily use a number of different if the password question and answer are updated successfully; otherwise, . - implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -277,18 +277,18 @@ ASP.NET membership is designed to enable you to easily use a number of different Adds a new membership user to the data source. A object populated with the information for the newly created user. - method returns a object populated with the information for the newly created user. The method also defines an `out` parameter (in Visual Basic, you can use `ByRef`) that returns a value that indicates that the user was successfully created, or a reason that user creation failed. - - The method raises the event, if a event handler has been specified, and continues or cancels the create-user action based on the results of the event. You can use the virtual method to execute the specified event handler. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + method returns a object populated with the information for the newly created user. The method also defines an `out` parameter (in Visual Basic, you can use `ByRef`) that returns a value that indicates that the user was successfully created, or a reason that user creation failed. + + The method raises the event, if a event handler has been specified, and continues or cancels the create-user action based on the results of the event. You can use the virtual method to execute the specified event handler. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -322,16 +322,16 @@ ASP.NET membership is designed to enable you to easily use a number of different Decrypts an encrypted password. A byte array that contains the decrypted password. - method is a virtual method that is provided for membership provider implementations to use when supporting encrypted password formats. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + method is a virtual method that is provided for membership provider implementations to use when supporting encrypted password formats. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> The property or property is set to . @@ -371,16 +371,16 @@ ASP.NET membership is designed to enable you to easily use a number of different if the user was successfully deleted; otherwise, . - , , and personalization is also deleted. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + , , and personalization is also deleted. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -411,16 +411,16 @@ ASP.NET membership is designed to enable you to easily use a number of different if the membership provider supports password reset; otherwise, . The default is . - contains a Boolean value specified in the configuration file (Web.config) using the `enablePasswordReset` attribute. The value indicates whether users can use the method to overwrite their current password with a new, randomly generated password. This property is read-only. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + contains a Boolean value specified in the configuration file (Web.config) using the `enablePasswordReset` attribute. The value indicates whether users can use the method to overwrite their current password with a new, randomly generated password. This property is read-only. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -451,18 +451,18 @@ ASP.NET membership is designed to enable you to easily use a number of different if the membership provider is configured to support password retrieval; otherwise, . The default is . - property contains a Boolean value specified in the configuration file (Web.config) using the `enablePasswordRetrieval` attribute. The value indicates whether users can use the method to retrieve their current password from the data source. This property is read-only. - - If your custom membership provider supports hashed passwords, your method implementation should throw an exception if is set to `true` and the password format is set to `Hashed`. Hashed passwords cannot be retrieved. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property contains a Boolean value specified in the configuration file (Web.config) using the `enablePasswordRetrieval` attribute. The value indicates whether users can use the method to retrieve their current password from the data source. This property is read-only. + + If your custom membership provider supports hashed passwords, your method implementation should throw an exception if is set to `true` and the password format is set to `Hashed`. Hashed passwords cannot be retrieved. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -477,11 +477,11 @@ ASP.NET membership is designed to enable you to easily use a number of different Encrypts a password. - @@ -519,16 +519,16 @@ ASP.NET membership is designed to enable you to easily use a number of different Encrypts a password. A byte array that contains the encrypted password. - method is a virtual method that is provided for membership provider implementations to use when supporting encrypted password formats. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + method is a virtual method that is provided for membership provider implementations to use when supporting encrypted password formats. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> The property or property is set to . @@ -602,18 +602,18 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets a collection of membership users where the email address contains the specified email address to match. A collection that contains a page of objects beginning at the page specified by . - returns a list of membership users where the user's email address matches the supplied `emailToMatch` for the configured property. If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for email addresses. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the number of objects to return in the collection. The `pageIndex` parameter identifies which page of results to return where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `emailToMatch` value. For example, if 13 users were found where `emailToMatch` matched part of or the entire email address, and the `pageIndex` value was 1 with a `pageSize` of 5, then the would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + returns a list of membership users where the user's email address matches the supplied `emailToMatch` for the configured property. If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for email addresses. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the number of objects to return in the collection. The `pageIndex` parameter identifies which page of results to return where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `emailToMatch` value. For example, if 13 users were found where `emailToMatch` matched part of or the entire email address, and the `pageIndex` value was 1 with a `pageSize` of 5, then the would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -653,18 +653,18 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets a collection of membership users where the user name contains the specified user name to match. A collection that contains a page of objects beginning at the page specified by . - returns a list of membership users where the user name matches the supplied `usernameToMatch` for the configured property. If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for user names. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the number of objects to return in the collection. The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `usernameToMatch` value. For example, if 13 users were found where `usernameToMatch` matched part of or the entire user name, and the `pageIndex` value was 1 with a `pageSize` of 5, then the would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + returns a list of membership users where the user name matches the supplied `usernameToMatch` for the configured property. If your data source supports additional search capabilities, such as wildcard characters, you can provide more extensive search capabilities for user names. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the number of objects to return in the collection. The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users that matched the `usernameToMatch` value. For example, if 13 users were found where `usernameToMatch` matched part of or the entire user name, and the `pageIndex` value was 1 with a `pageSize` of 5, then the would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -702,18 +702,18 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets a collection of all the users in the data source in pages of data. A collection that contains a page of objects beginning at the page specified by . - returns a list of all of the users from the data source for the configured property. Users are returned in alphabetical order by user name. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the number of objects to return in the collection. The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users in the database. For example, if there are 13 users in the database, and the `pageIndex` value was 1 with a `pageSize` of 5, then the would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + returns a list of all of the users from the data source for the configured property. Users are returned in alphabetical order by user name. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the number of objects to return in the collection. The `pageIndex` parameter identifies which page of results to return, where 0 identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users in the database. For example, if there are 13 users in the database, and the `pageIndex` value was 1 with a `pageSize` of 5, then the would contain the sixth through the tenth users returned. `totalRecords` would be set to 13. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -744,16 +744,16 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the number of users currently accessing the application. The number of users currently accessing the application. - is greater than the current date and time minus the . The is a positive integer value specifying the number of minutes to use when determining whether a user is online. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + is greater than the current date and time minus the . The is a positive integer value specifying the number of minutes to use when determining whether a user is online. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -789,22 +789,22 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the password for the specified user name from the data source. The password for the specified user name. - method ensures that the flag is set to `true` before performing any action. If is `false`, a exception is thrown. - - also checks the value of the property. If is `true`, checks the value of the supplied answer parameter against the stored password answer in the data source. If they do not match, a exception is thrown. - - If your custom membership provider supports hashed passwords, the method should throw an exception if the property is set to `true` and the password format is set to `Hashed`. Hashed passwords cannot be retrieved. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + method ensures that the flag is set to `true` before performing any action. If is `false`, a exception is thrown. + + also checks the value of the property. If is `true`, checks the value of the supplied answer parameter against the stored password answer in the data source. If they do not match, a exception is thrown. + + If your custom membership provider supports hashed passwords, the method should throw an exception if the property is set to `true` and the password format is set to `Hashed`. Hashed passwords cannot be retrieved. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -852,16 +852,16 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets user information from the data source based on the unique identifier for the membership user. Provides an option to update the last-activity date/time stamp for the user. A object populated with the specified user's information from the data source. - value for the user to show that the user is currently online. The method returns a object populated with current values from the data source for the specified user. If the user name is not found in the data source, returns `null`. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + value for the user to show that the user is currently online. The method returns a object populated with current values from the data source for the specified user. If the user name is not found in the data source, returns `null`. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -898,16 +898,16 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets information from the data source for a user. Provides an option to update the last-activity date/time stamp for the user. A object populated with the specified user's information from the data source. - property value for the user to show that the user is currently online. returns a object populated with current values from the data source for the specified user. If the user name is not found in the data source, returns `null`. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property value for the user to show that the user is currently online. returns a object populated with current values from the data source for the specified user. If the user name is not found in the data source, returns `null`. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -941,20 +941,20 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the user name associated with the specified email address. The user name associated with the specified email address. If no match is found, return . - property supported by the provider. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property supported by the provider. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -984,22 +984,22 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the number of invalid password or password-answer attempts allowed before the membership user is locked out. The number of invalid password or password-answer attempts allowed before the membership user is locked out. - property works in conjunction with the property to guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. If the number of invalid passwords or password questions supplied for a membership user is greater than or equal to the property value within the number of minutes identified by the , then the membership user is locked out by setting the property to `true` until the user is unlocked by a call to the method. If a valid password or password answer is supplied before the value is reached, the counter that tracks the number of invalid attempts is reset to zero. - - Invalid password and password-answer attempts accumulate independently of one another. For example, if the property is set to 5, and three invalid password attempts are made followed by two invalid password-answer attempts, two more invalid password attempts (or three more invalid password-answer attempts) must be made within the for the membership user to be locked out. - - If the property is set to `false`, invalid password-answer attempts are not tracked. - - Invalid password and password-answer attempts are tracked in the , , , , and methods. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property works in conjunction with the property to guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. If the number of invalid passwords or password questions supplied for a membership user is greater than or equal to the property value within the number of minutes identified by the , then the membership user is locked out by setting the property to `true` until the user is unlocked by a call to the method. If a valid password or password answer is supplied before the value is reached, the counter that tracks the number of invalid attempts is reset to zero. + + Invalid password and password-answer attempts accumulate independently of one another. For example, if the property is set to 5, and three invalid password attempts are made followed by two invalid password-answer attempts, two more invalid password attempts (or three more invalid password-answer attempts) must be made within the for the membership user to be locked out. + + If the property is set to `false`, invalid password-answer attempts are not tracked. + + Invalid password and password-answer attempts are tracked in the , , , , and methods. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1029,40 +1029,40 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the minimum number of special characters that must be present in a valid password. The minimum number of special characters that must be present in a valid password. - property returns the minimum number of special, non-alphabetic characters that must be entered to create a valid password for the object. - - The property value is set in the application configuration using the `minRequiredNonalphanumericCharacters` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. - - A non-alphanumeric character is a character for which the method returns `false`. - - - -## Examples - The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredNonalphanumericCharacters` attribute to 1 character. - -``` - - - - - - -``` - + property returns the minimum number of special, non-alphabetic characters that must be entered to create a valid password for the object. + + The property value is set in the application configuration using the `minRequiredNonalphanumericCharacters` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. + + A non-alphanumeric character is a character for which the method returns `false`. + + + +## Examples + The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredNonalphanumericCharacters` attribute to 1 character. + +``` + + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1091,33 +1091,33 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the minimum length required for a password. The minimum length required for a password. - property gets the minimum number of characters that must be entered to create a valid password for the object. - - The property value is set in the application configuration using the `minRequiredPasswordLength` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. - - - -## Examples - The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredPasswordLength` attribute to seven characters. - -``` - - - -``` - + property gets the minimum number of characters that must be entered to create a valid password for the object. + + The property value is set in the application configuration using the `minRequiredPasswordLength` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. + + + +## Examples + The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredPasswordLength` attribute to seven characters. + +``` + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1149,16 +1149,16 @@ ASP.NET membership is designed to enable you to easily use a number of different The to pass to the event handler. Raises the event if an event handler has been defined. - virtual method is used during the , , and methods to raise the event if a has been specified. The `e` parameter is used to pass a object to the event handler. When the event has completed, the properties of the object supplied as the `e` parameter can be examined to determine whether the current action should be canceled and if a particular , stored in the property, should be thrown. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + virtual method is used during the , , and methods to raise the event if a has been specified. The `e` parameter is used to pass a object to the event handler. When the event has completed, the properties of the object supplied as the `e` parameter can be examined to determine whether the current action should be canceled and if a particular , stored in the property, should be thrown. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1188,22 +1188,22 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the number of minutes in which a maximum number of invalid password or password-answer attempts are allowed before the membership user is locked out. The number of minutes in which a maximum number of invalid password or password-answer attempts are allowed before the membership user is locked out. - property works in conjunction with the property to guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. If the number of invalid passwords or password questions supplied for a membership user exceeds the within the number of minutes identified by the , then the membership user is locked out by setting the property to `true` until the user is unlocked by a call to the method. If a valid password or password answer is supplied before the is reached, the counter that tracks the number of invalid attempts is reset to zero. - - Invalid password and password-answer attempts accumulate independently of one another. For example, if the property is set to 5, and three invalid password attempts are made followed by two invalid password-answer attempts, two more invalid password attempts (or three more invalid password-answer attempts) must be made within the value for the membership user to be locked out. - - If the property is set to `false`, invalid password-answer attempts are not tracked. - - Invalid password and password-answer attempts are tracked in the , , , , and methods. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property works in conjunction with the property to guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. If the number of invalid passwords or password questions supplied for a membership user exceeds the within the number of minutes identified by the , then the membership user is locked out by setting the property to `true` until the user is unlocked by a call to the method. If a valid password or password answer is supplied before the is reached, the counter that tracks the number of invalid attempts is reset to zero. + + Invalid password and password-answer attempts accumulate independently of one another. For example, if the property is set to 5, and three invalid password attempts are made followed by two invalid password-answer attempts, two more invalid password attempts (or three more invalid password-answer attempts) must be made within the value for the membership user to be locked out. + + If the property is set to `false`, invalid password-answer attempts are not tracked. + + Invalid password and password-answer attempts are tracked in the , , , , and methods. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1233,18 +1233,18 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets a value indicating the format for storing passwords in the membership data store. One of the values indicating the format for storing passwords in the data store. - property indicates the format that passwords are stored in. Use `Hashed` only, `Clear` and `Encrypted` are not secure. `Hashed` passwords are hashed using a one-way hash algorithm and a randomly generated salt value when stored in the database. When a password is validated, it is hashed with the salt value in the database for verification. Hashed passwords cannot be retrieved. `Encrypted` passwords are not considered safe, as a breach that reveals your database contents can also expose the encryption key. This means your encrypted passwords could be decrypted and exposed. - - You can use the and virtual methods of the class to encrypt and decrypt password values, or you can supply your own encryption code. If you use the and virtual methods of the class, `Encrypted` passwords are encrypted using the key information supplied in the [machineKey Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element in your configuration. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property indicates the format that passwords are stored in. Use `Hashed` only, `Clear` and `Encrypted` are not secure. `Hashed` passwords are hashed using a one-way hash algorithm and a randomly generated salt value when stored in the database. When a password is validated, it is hashed with the salt value in the database for verification. Hashed passwords cannot be retrieved. `Encrypted` passwords are not considered safe, as a breach that reveals your database contents can also expose the encryption key. This means your encrypted passwords could be decrypted and exposed. + + You can use the and virtual methods of the class to encrypt and decrypt password values, or you can supply your own encryption code. If you use the and virtual methods of the class, `Encrypted` passwords are encrypted using the key information supplied in the [machineKey Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v=vs.100)) element in your configuration. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1274,41 +1274,41 @@ ASP.NET membership is designed to enable you to easily use a number of different Gets the regular expression used to evaluate a password. A regular expression used to evaluate a password. - property gets the regular expression used to evaluate password complexity for the object. - - The property is set in the application configuration using the `passwordStrengthRegularExpression` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. - - - -## Examples - The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `passwordStrengthRegularExpression` attribute to a regular expression that validates that the password meets the following criteria: - -- Is greater than seven characters. - -- Contains at least one digit. - -- Contains at least one special (non-alphanumeric) character. - - If the password does not meet these criteria, the password is not accepted by the membership provider. - -``` - - - -``` - + property gets the regular expression used to evaluate password complexity for the object. + + The property is set in the application configuration using the `passwordStrengthRegularExpression` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. + + + +## Examples + The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `passwordStrengthRegularExpression` attribute to a regular expression that validates that the password meets the following criteria: + +- Is greater than seven characters. + +- Contains at least one digit. + +- Contains at least one special (non-alphanumeric) character. + + If the password does not meet these criteria, the password is not accepted by the membership provider. + +``` + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1338,18 +1338,18 @@ ASP.NET membership is designed to enable you to easily use a number of different if a password answer is required for password reset and retrieval; otherwise, . The default is . - property indicates whether users must supply a password answer in order to retrieve their password using the method, or reset their password using the method. - - This property is read-only. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property indicates whether users must supply a password answer in order to retrieve their password using the method, or reset their password using the method. + + This property is read-only. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1380,16 +1380,16 @@ ASP.NET membership is designed to enable you to easily use a number of different if the membership provider requires a unique email address; otherwise, . The default is . - property indicates whether users must supply a unique email address value when creating a user. If a user already exists in the data source for the current , then the method returns `null` and a status value of . - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property indicates whether users must supply a unique email address value when creating a user. If a user already exists in the data source for the current , then the method returns `null` and a status value of . + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1425,25 +1425,25 @@ ASP.NET membership is designed to enable you to easily use a number of different Resets a user's password to a new, automatically generated password. The new password for the specified user. - [!NOTE] -> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the and properties - - The method updates the user information in the data source with the new password value and returns the new password as a string. A convenient mechanism for generating a random password is the method. - - ensures that the flag is set to `true` before performing any action. If is `false`, a exception is thrown. - - also checks the value of the property. If is `true`, checks the value of the supplied answer parameter against the stored password answer in the data source. If they do not match, a exception is thrown. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - +> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the and properties + + The method updates the user information in the data source with the new password value and returns the new password as a string. A convenient mechanism for generating a random password is the method. + + ensures that the flag is set to `true` before performing any action. If is `false`, a exception is thrown. + + also checks the value of the property. If is `true`, checks the value of the supplied answer parameter against the stored password answer in the data source. If they do not match, a exception is thrown. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1478,16 +1478,16 @@ ASP.NET membership is designed to enable you to easily use a number of different if the membership user was successfully unlocked; otherwise, . - property to `false`. The method returns `true` if the record for the membership user is updated successfully; otherwise, `false`. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + property to `false`. The method returns `true` if the record for the membership user is updated successfully; otherwise, `false`. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1520,16 +1520,16 @@ ASP.NET membership is designed to enable you to easily use a number of different A object that represents the user to update and the updated information for the user. Updates information about a user in the data source. - object populated with user information and updates the data source with the supplied values. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + object populated with user information and updates the data source with the supplied values. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1566,18 +1566,18 @@ ASP.NET membership is designed to enable you to easily use a number of different if the specified username and password are valid; otherwise, . - returns `true` for a successful user name and password match; otherwise, `false`. - - For successful validations, updates the for the specified user. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + returns `true` for a successful user name and password match; otherwise, `false`. + + For successful validations, updates the for the specified user. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider @@ -1606,20 +1606,20 @@ ASP.NET membership is designed to enable you to easily use a number of different Occurs when a user is created, a password is changed, or a password is reset. - event is raised during the , , and methods. - - The event occurs before the action requested and enables the user to continue or cancel the requested action. If the action is canceled, the user can specify an exception to be thrown. - - Users use a event handler to specify a handler for the event. Provider implementers can use the virtual method to raise the event. - - - -## Examples - For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). - + event is raised during the , , and methods. + + The event occurs before the action requested and enables the user to continue or cancel the requested action. If the action is canceled, the user can specify an exception to be thrown. + + Users use a event handler to specify a handler for the event. Provider implementers can use the virtual method to raise the event. + + + +## Examples + For an example of a implementation, see [Implementing a Profile Provider](https://learn.microsoft.com/previous-versions/aspnet/0580x1f5(v=vs.100)). + ]]> Implementing a Membership Provider diff --git a/xml/System.Web.Security/MembershipProviderCollection.xml b/xml/System.Web.Security/MembershipProviderCollection.xml index 709e59bff96..faf9bc0972c 100644 --- a/xml/System.Web.Security/MembershipProviderCollection.xml +++ b/xml/System.Web.Security/MembershipProviderCollection.xml @@ -29,22 +29,22 @@ A collection of objects that inherit the abstract class. - by the property of the class. You can access a specific membership provider in the collection by name and cast it as the specific provider type, such as . This enables you to manage membership information from multiple data stores in a single application as well as access custom members of a membership provider that are not part of the abstract class. - + by the property of the class. You can access a specific membership provider in the collection by name and cast it as the specific provider type, such as . This enables you to manage membership information from multiple data stores in a single application as well as access custom members of a membership provider that are not part of the abstract class. + > [!NOTE] -> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). - - - -## Examples - The following code example lists the providers enabled for an application and their respective types. - +> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). + + + +## Examples + The following code example lists the providers enabled for an application and their respective types. + [!code-aspx-csharp[System.Web.Security.Membership#7](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.Membership/CS/Providerscs.aspx#7)] - [!code-aspx-vb[System.Web.Security.Membership#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/Providersvb.aspx#7)] - + [!code-aspx-vb[System.Web.Security.Membership#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.Membership/VB/Providersvb.aspx#7)] + ]]> Introduction to Membership @@ -75,11 +75,11 @@ Creates a new, empty membership provider collection. - Introduction to ASP.NET Membership @@ -111,11 +111,11 @@ The membership provider to add to the collection. Adds a membership provider to the collection. - @@ -153,19 +153,19 @@ The zero-based index in at which copying begins. Copies the membership provider collection to a one-dimensional array. - to copy role provider objects to the specified array. - - - -## Examples - The following code example uses the method to copy the contents of a to an array of objects. - + to copy role provider objects to the specified array. + + + +## Examples + The following code example uses the method to copy the contents of a to an array of objects. + [!code-csharp[System.Web.Security.MembershipProviderCollection#3](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipProviderCollection/CS/snippetscs.aspx#3)] - [!code-vb[System.Web.Security.MembershipProviderCollection#3](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipProviderCollection/VB/snippetsvb.aspx#3)] - + [!code-vb[System.Web.Security.MembershipProviderCollection#3](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipProviderCollection/VB/snippetsvb.aspx#3)] + ]]> @@ -173,10 +173,10 @@ is less than zero. - is multidimensional. - - -or- - + is multidimensional. + + -or- + The number of elements in the source array is greater than the available space from to the end of the destination . The type of the source array cannot be cast automatically to the type of the destination . Introduction to ASP.NET Membership @@ -209,19 +209,19 @@ Gets the membership provider in the collection referenced by the specified provider name. An object that inherits the abstract class. - by the property of the class. You can access a specific membership provider in the collection by name and cast it as the specific provider type, such as . This enables you to manage membership information from multiple data stores in a single application as well as access custom members of a membership provider that are not part of the abstract class. - - - -## Examples - The following code example accesses a configured for an application from the property of the class by name. - + by the property of the class. You can access a specific membership provider in the collection by name and cast it as the specific provider type, such as . This enables you to manage membership information from multiple data stores in a single application as well as access custom members of a membership provider that are not part of the abstract class. + + + +## Examples + The following code example accesses a configured for an application from the property of the class by name. + [!code-csharp[System.Web.Security.MembershipProviderCollection#2](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipProviderCollection/CS/snippetscs.aspx#2)] - [!code-vb[System.Web.Security.MembershipProviderCollection#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipProviderCollection/VB/snippetsvb.aspx#2)] - + [!code-vb[System.Web.Security.MembershipProviderCollection#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipProviderCollection/VB/snippetsvb.aspx#2)] + ]]> Introduction to ASP.NET Membership diff --git a/xml/System.Web.Security/MembershipUser.xml b/xml/System.Web.Security/MembershipUser.xml index 6e228ff75a5..d0b9efeb57b 100644 --- a/xml/System.Web.Security/MembershipUser.xml +++ b/xml/System.Web.Security/MembershipUser.xml @@ -39,7 +39,7 @@ The object is used to represent a single membership user in the membership data store. It exposes information about the membership user such as the email address, and provides functionality for the membership user such as the ability to change or reset their password. > [!NOTE] -> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). +> If you are not familiar with the membership features of ASP.NET, see [Introduction to Membership](https://learn.microsoft.com/previous-versions/aspnet/yh26yfzy(v=vs.100)) before continuing. For a list of other topics related to membership, see [Managing Users by Using Membership](https://learn.microsoft.com/previous-versions/aspnet/tw292whz(v=vs.100)). A object is returned by the and methods or as part of a returned by the , , and methods. @@ -51,7 +51,7 @@ The following code example updates the email address for a user. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/UpdateEmailcs.aspx" id="Snippet11"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/UpdateEmailvb.aspx" id="Snippet11"::: @@ -220,7 +220,7 @@ The following code example modifies the password for the current logged-on user. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/ChangePasswordcs.aspx" id="Snippet8"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/ChangePasswordvb.aspx" id="Snippet8"::: @@ -289,7 +289,7 @@ The following code example updates the password question and answer for the current logged-on user. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/ChangePasswordQuestioncs.aspx" id="Snippet9"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/ChangePasswordQuestionvb.aspx" id="Snippet9"::: @@ -486,7 +486,7 @@ If is `false`, the membership provider will return an exception. If the provider supports passwords with a of , you will be unable to retrieve the password for the membership user and should consider making use of the method when a user has forgotten their password. > [!NOTE] -> A will be thrown if `enablePasswordRetrieval` is set to `true` and `passwordFormat` is set to `Hashed` in the Web.config file for the ASP.NET application. +> A will be thrown if `enablePasswordRetrieval` is set to `true` and `passwordFormat` is set to `Hashed` in the Web.config file for the ASP.NET application. If is `true`, you must use the overload that takes a password answer as a parameter and supply the password answer for the membership user. If a password answer is required and an incorrect password answer is supplied, a is thrown by the membership provider. @@ -496,10 +496,10 @@ The following code example calls the method to retrieve the password for a specified user name. The password is sent to the user's email address. Note that is assumed to be `false`. > [!NOTE] -> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, it is recommended that you return passwords using encryption, such as SSL. +> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, it is recommended that you return passwords using encryption, such as SSL. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/retrievepassword2cs.aspx" id="Snippet3"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/retrievepassword2vb.aspx" id="Snippet3"::: @@ -545,7 +545,7 @@ If is `false`, the membership provider will return an exception. If the provider supports passwords with a of , you will be unable to retrieve the password for the membership user and should consider making use of the method when a user has forgotten their password. > [!NOTE] -> A will be thrown if `enablePasswordRetrieval` is set to `true` and `passwordFormat` is set to `Hashed` in the Web.config file for the ASP.NET application. +> A will be thrown if `enablePasswordRetrieval` is set to `true` and `passwordFormat` is set to `Hashed` in the Web.config file for the ASP.NET application. If is `false`, you can supply `null` for the `answer` parameter, or use the overload that does not take any parameters. @@ -555,10 +555,10 @@ The following code example calls the method to retrieve the password for a specified user name if the correct password answer is supplied. The password is sent to the user's email address. > [!NOTE] -> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, it is recommended that you return passwords using encryption, such as SSL. +> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, it is recommended that you return passwords using encryption, such as SSL. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/retrievepasswordcs.aspx" id="Snippet4"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/retrievepasswordvb.aspx" id="Snippet4"::: @@ -694,7 +694,7 @@ The for a user is updated to the current date and time by the , and methods, and can be updated by some of the overloads of the method. > [!NOTE] -> The property value for a user is updated by the classes in the and the namespaces whenever user data is retrieved from or set at the data source. If your application uses the same data source to store user information, and your and are configured with the same `applicationName` as your , then the and properties of the user will reflect this behavior. +> The property value for a user is updated by the classes in the and the namespaces whenever user data is retrieved from or set at the data source. If your application uses the same data source to store user information, and your and are configured with the same `applicationName` as your , then the and properties of the user will reflect this behavior. @@ -743,7 +743,7 @@ The sets the , , , and date to the same date and time when a membership user is created by the method. > [!NOTE] -> The for a user is updated by the classes in the and the namespaces whenever user data is retrieved from or set at the data source. If your application uses the same data source to store user information, and your and are configured with the same `applicationName` as your , then the and properties of the user will reflect this behavior. +> The for a user is updated by the classes in the and the namespaces whenever user data is retrieved from or set at the data source. If your application uses the same data source to store user information, and your and are configured with the same `applicationName` as your , then the and properties of the user will reflect this behavior. @@ -874,7 +874,7 @@ The following code example shows a login page that indicates a password has expired after a specified number of days. If the is earlier than the current date and time minus the number of days specified for the expiration of a password, then the user is directed to change their password. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/login2cs.aspx" id="Snippet7"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/login2vb.aspx" id="Snippet7"::: @@ -922,7 +922,7 @@ The following code example resets a user's password if they supply the appropriate password answer. The for the user is displayed as a reminder to the user of the password answer. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/ResetPasswordcs.aspx" id="Snippet5"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/ResetPasswordvb.aspx" id="Snippet5"::: @@ -1065,7 +1065,7 @@ The following code example resets a user's password and returns the new, automatically generated password. Note that is assumed to be `false`. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/ResetPassword2cs.aspx" id="Snippet6"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/ResetPassword2vb.aspx" id="Snippet6"::: @@ -1120,7 +1120,7 @@ The following code example resets a user's password and returns the new, automatically generated password. > [!IMPORTANT] -> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.MembershipUser/CS/ResetPasswordcs.aspx" id="Snippet5"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.MembershipUser/VB/ResetPasswordvb.aspx" id="Snippet5"::: diff --git a/xml/System.Web.Security/RoleProvider.xml b/xml/System.Web.Security/RoleProvider.xml index 66e6ed645ce..48da2709147 100644 --- a/xml/System.Web.Security/RoleProvider.xml +++ b/xml/System.Web.Security/RoleProvider.xml @@ -29,19 +29,19 @@ Defines the contract that ASP.NET implements to provide role-management services using custom role providers. - abstract class. - - There are two primary reasons for creating a custom role provider. - -- You need to store role information in a data source that is not supported by the role providers included with the .NET Framework, such as a FoxPro database, an Oracle database, or other data sources. - -- You need to manage role information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. A common example of this would be role data that already exists in a SQL Server database for a company or Web site. - + abstract class. + + There are two primary reasons for creating a custom role provider. + +- You need to store role information in a data source that is not supported by the role providers included with the .NET Framework, such as a FoxPro database, an Oracle database, or other data sources. + +- You need to manage role information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. A common example of this would be role data that already exists in a SQL Server database for a company or Web site. + ]]> Implementing a Role Provider @@ -72,11 +72,11 @@ Initializes a new instance of the class. - abstract class. Initialization values for a implementation are passed to the method implementation. - + abstract class. Initialization values for a implementation are passed to the method implementation. + ]]> Implementing a Role Provider @@ -110,29 +110,29 @@ A string array of the role names to add the specified user names to. Adds the specified user names to the specified roles for the configured . - is called by the class to associate the specified users with the specified roles at the data source. Roles are added to the configured . - - If any of the specified role names are not found for the configured `applicationName`, we recommend that your provider throw a . - - If any of the specified user names are not associated with any of the specified role names for the configured `applicationName`, we recommend that your provider throw a . - - If any of the specified user names is `null` or is an empty string, we recommend that your provider throw an exception. - - If any of the specified role names is `null` or is an empty string, we recommend that your provider throw an exception. - - If your data source supports transactions, we recommend that you include each add operation in a transaction and that you roll back the transaction and throw an exception if any add operation fails. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by the class to associate the specified users with the specified roles at the data source. Roles are added to the configured . + + If any of the specified role names are not found for the configured `applicationName`, we recommend that your provider throw a . + + If any of the specified user names are not associated with any of the specified role names for the configured `applicationName`, we recommend that your provider throw a . + + If any of the specified user names is `null` or is an empty string, we recommend that your provider throw an exception. + + If any of the specified role names is `null` or is an empty string, we recommend that your provider throw an exception. + + If your data source supports transactions, we recommend that you include each add operation in a transaction and that you roll back the transaction and throw an exception if any add operation fails. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet2"::: + ]]> Implementing a Role Provider @@ -161,21 +161,21 @@ Gets or sets the name of the application to store and retrieve role information for. The name of the application to store and retrieve role information for. - is used by the class to associate users and roles with different applications. This enables multiple applications to use the same database to store user and role information without running into conflicts between duplicate user names or role names. Multiple ASP.NET applications can use the same database by specifying the same value in the property. The property can be set programmatically, or it can be set declaratively in the configuration file for the Web application using the `applicationName` attribute. - - If no property is specified, we recommend that the property value be used. - - - -## Examples - The following code example shows a sample implementation of the property. - + is used by the class to associate users and roles with different applications. This enables multiple applications to use the same database to store user and role information without running into conflicts between duplicate user names or role names. Multiple ASP.NET applications can use the same database by specifying the same value in the property. The property can be set programmatically, or it can be set declaratively in the configuration file for the Web application using the `applicationName` attribute. + + If no property is specified, we recommend that the property value be used. + + + +## Examples + The following code example shows a sample implementation of the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet1"::: + ]]> Implementing a Role Provider @@ -207,25 +207,25 @@ The name of the role to create. Adds a new role to the data source for the configured . - is called by the method of the class to add the specified role to the data source for the configured . - - If the specified role name already exists for the configured `applicationName`, is `null`, or is an empty string, we recommend that your provider throw an exception. - - If the specified role name contains a comma, we recommend that your provider throw an exception. - - If your data source restricts the length of the role name, for example, through a fixed-length column of a table in a database, we recommend that you throw an exception if the role name exceeds the maximum length allowed by the data source. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by the method of the class to add the specified role to the data source for the configured . + + If the specified role name already exists for the configured `applicationName`, is `null`, or is an empty string, we recommend that your provider throw an exception. + + If the specified role name contains a comma, we recommend that your provider throw an exception. + + If your data source restricts the length of the role name, for example, through a fixed-length column of a table in a database, we recommend that you throw an exception if the role name exceeds the maximum length allowed by the data source. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet3"::: + ]]> Implementing a Role Provider @@ -261,25 +261,25 @@ if the role was successfully deleted; otherwise, . - is called by the and the methods of the class to delete the specified role from the data source for the configured . - - When you delete a role from the data source, ensure that you also delete any associations between a user name and the deleted role for the configured `applicationName`. - - If `throwOnPopulatedRole` is `true`, and the role identified by the `roleName` parameter has one or more members, throw a and do not delete the role. If `throwOnPopulatedRole` is `false`, then delete the role whether it is empty or not. - - If the specified role name does not exist, is `null`, or is an empty string, we recommend that your provider throw an exception. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by the and the methods of the class to delete the specified role from the data source for the configured . + + When you delete a role from the data source, ensure that you also delete any associations between a user name and the deleted role for the configured `applicationName`. + + If `throwOnPopulatedRole` is `true`, and the role identified by the `roleName` parameter has one or more members, throw a and do not delete the role. If `throwOnPopulatedRole` is `false`, then delete the role whether it is empty or not. + + If the specified role name does not exist, is `null`, or is an empty string, we recommend that your provider throw an exception. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet4"::: + ]]> Implementing a Role Provider @@ -314,21 +314,21 @@ Gets an array of user names in a role where the user name contains the specified user name to match. A string array containing the names of all the users where the user name matches and the user is a member of the specified role. - method is called by the class and returns a list of users in a role where the user name contains a match of the supplied `usernameToMatch` for the configured `applicationName`. Wildcard support is included based on the data source. Users are returned in alphabetical order by user name. - - We recommend that you throw a if `roleName` does not exist in the data source. - - - -## Examples - The following code example shows a sample implementation. - + method is called by the class and returns a list of users in a role where the user name contains a match of the supplied `usernameToMatch` for the configured `applicationName`. Wildcard support is included based on the data source. Users are returned in alphabetical order by user name. + + We recommend that you throw a if `roleName` does not exist in the data source. + + + +## Examples + The following code example shows a sample implementation. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet11"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet11"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet11"::: + ]]> Implementing a Role Provider @@ -358,21 +358,21 @@ Gets a list of all the roles for the configured . A string array containing the names of all the roles stored in the data source for the configured . - is called by the method of the class to retrieve a list of role names from the data source. Only the roles for the specified are retrieved. - - If no roles exist for the configured `applicationName`, we recommend that your provider return a string array with no elements. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by the method of the class to retrieve a list of role names from the data source. Only the roles for the specified are retrieved. + + If no roles exist for the configured `applicationName`, we recommend that your provider return a string array with no elements. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet5"::: + ]]> Implementing a Role Provider @@ -405,23 +405,23 @@ Gets a list of the roles that a specified user is in for the configured . A string array containing the names of all the roles that the specified user is in for the configured . - is called by the method of the class to retrieve the role names that the specified user is associated with from the data source. Only the roles for the configured are retrieved. - - If no roles exist for the specified user for the configured `applicationName`, we recommend that your provider return a string array with no elements. - - If the specified user name is `null` or is an empty string, we recommend that your provider throw an exception. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by the method of the class to retrieve the role names that the specified user is associated with from the data source. Only the roles for the configured are retrieved. + + If no roles exist for the specified user for the configured `applicationName`, we recommend that your provider return a string array with no elements. + + If the specified user name is `null` or is an empty string, we recommend that your provider throw an exception. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet6"::: + ]]> Implementing a Role Provider @@ -454,23 +454,23 @@ Gets a list of users in the specified role for the configured . A string array containing the names of all the users who are members of the specified role for the configured . - is called by the method of the class to retrieve the user names associated with a role from the data source. Only the roles for the configured are retrieved. - - If the specified role name does not exist for the configured `applicationName` or if it is `null` or an empty string, we recommend that your provider throw an exception. - - If no users are associated with the specified role for the configured `applicationName`, we recommend that your provider return a string array with no elements. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by the method of the class to retrieve the user names associated with a role from the data source. Only the roles for the configured are retrieved. + + If the specified role name does not exist for the configured `applicationName` or if it is `null` or an empty string, we recommend that your provider throw an exception. + + If no users are associated with the specified role for the configured `applicationName`, we recommend that your provider return a string array with no elements. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet7"::: + ]]> Implementing a Role Provider @@ -506,23 +506,23 @@ if the specified user is in the specified role for the configured ; otherwise, . - method is called by the method of the class to determine whether the current logged-on user is associated with a role from the data source for the configured . - - If the specified user name is `null` or is an empty string, we recommend that your provider throw an exception. - - If the specified role name is `null` or is an empty string, we recommend that your provider throw an exception. - - - -## Examples - The following code example shows a sample implementation of the method. - + method is called by the method of the class to determine whether the current logged-on user is associated with a role from the data source for the configured . + + If the specified user name is `null` or is an empty string, we recommend that your provider throw an exception. + + If the specified role name is `null` or is an empty string, we recommend that your provider throw an exception. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet8"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet8"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet8"::: + ]]> Implementing a Role Provider @@ -556,29 +556,29 @@ A string array of role names to remove the specified user names from. Removes the specified user names from the specified roles for the configured . - is called by , , , and methods of the class to remove the specified users from the specified roles at the data source. Only roles for the configured are modified. - - If any of the specified role names are not found for the configured `applicationName`, we recommend that your provider throw a . - - If any of the specified user names are not associated with any of the specified role names for the configured `applicationName`, we recommend that your provider throw a . - - If any of the specified user names is `null` or is an empty string, we recommend that your provider throw an exception. - - If any of the specified role names is `null` or is an empty string, we recommend that your provider throw an exception. - - If your data source supports transactions, we recommend that you include each remove operation in a transaction and that you roll back the transaction and throw an exception if any remove operation fails. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by , , , and methods of the class to remove the specified users from the specified roles at the data source. Only roles for the configured are modified. + + If any of the specified role names are not found for the configured `applicationName`, we recommend that your provider throw a . + + If any of the specified user names are not associated with any of the specified role names for the configured `applicationName`, we recommend that your provider throw a . + + If any of the specified user names is `null` or is an empty string, we recommend that your provider throw an exception. + + If any of the specified role names is `null` or is an empty string, we recommend that your provider throw an exception. + + If your data source supports transactions, we recommend that you include each remove operation in a transaction and that you roll back the transaction and throw an exception if any remove operation fails. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet9"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet9"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet9"::: + ]]> Implementing a Role Provider @@ -612,21 +612,21 @@ if the role name already exists in the data source for the configured ; otherwise, . - is called by the method of the class to determine whether a role name exists in the data source for the configured . - - If the specified role name is `null` or is an empty string, we recommend that your provider throw an exception. - - - -## Examples - The following code example shows a sample implementation of the method. - + is called by the method of the class to determine whether a role name exists in the data source for the configured . + + If the specified role name is `null` or is an empty string, we recommend that your provider throw an exception. + + + +## Examples + The following code example shows a sample implementation of the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/CS/odbcroleprovidersnippets.cs" id="Snippet10"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet10"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.IRoleProvider/VB/odbcroleprovidersnippets.vb" id="Snippet10"::: + ]]> Implementing a Role Provider diff --git a/xml/System.Web.Security/Roles.xml b/xml/System.Web.Security/Roles.xml index 6eddc1f9adf..9ed431644b8 100644 --- a/xml/System.Web.Security/Roles.xml +++ b/xml/System.Web.Security/Roles.xml @@ -80,11 +80,11 @@ You can store role information in several data sources. -- You can use the class to retrieve role information based on membership in Windows groups. +- You can use the class to retrieve role information based on membership in Windows groups. -- You can store role information in a SQL Server database by using the class. +- You can store role information in a SQL Server database by using the class. -- If you have existing role information, or want to store role information in and retrieve role information from a data source other than Windows, an Authorization Store, or SQL Server, you can implement a custom role provider by creating a class that inherits the abstract class. For more information, see [Implementing a Role Provider](https://learn.microsoft.com/previous-versions/aspnet/8fw7xh74(v=vs.100)). +- If you have existing role information, or want to store role information in and retrieve role information from a data source other than Windows, an Authorization Store, or SQL Server, you can implement a custom role provider by creating a class that inherits the abstract class. For more information, see [Implementing a Role Provider](https://learn.microsoft.com/previous-versions/aspnet/8fw7xh74(v=vs.100)). If a user's browser accepts cookies, you can store role information for that user in a cookie on the user's computer. On each page request, ASP.NET reads the role information for that user from the cookie. This can improve application performance by reducing the amount of communication required with the data source to retrieve role information. If the role information for a user is too long to store in a cookie, ASP.NET stores just the most recently used role information in the cookie and then looks up additional role information in the data source as required. If the user's browser does not support cookies or cookies are disabled, role information is not cached in a cookie. diff --git a/xml/System.Web.Security/SqlMembershipProvider.xml b/xml/System.Web.Security/SqlMembershipProvider.xml index bf51261e17c..2a88b0dfd4e 100644 --- a/xml/System.Web.Security/SqlMembershipProvider.xml +++ b/xml/System.Web.Security/SqlMembershipProvider.xml @@ -17,60 +17,60 @@ Manages storage of membership information for an ASP.NET application in a SQL Server database. - [!NOTE] > ASP.NET membership providers have been superseded by [ASP.NET Identity](/aspnet/identity/overview/getting-started/introduction-to-aspnet-identity). We strongly recommend updating apps to use the ASP.NET Identity platform instead of the membership providers. -This class is used by the and classes to provide membership services for an ASP.NET application using a SQL Server database. You cannot use a without SQL Server. When your computer has SQL Server Express installed with the default instance name and user-instancing enabled, the object will create a database called `aspnetdb` in the application's `App_Data` directory the first time the application is run. - - To manually create the database, run the `Aspnet_regsql.exe` executable found in the `%systemroot%\Microsoft.NET\Framework\ versionNumber` folder and specify the `-A m` option (for example `aspnet_regsql.exe -A m`). The database created is called Aspnetdb. Alternatively, run `Aspnet_regsql.exe` to pull up the GUI configuration mode and choose to configure all ASP.NET Features. - - If the membership provider is configured with a connection string that uses integrated security, the process account of the ASP.NET application must have rights to connect to the SQL Server database. - - The Machine.config file defines a default instance named `AspNetSqlMembershipProvider` that connects to the default SQL Server Express instance on the local machine. You can use this instance of the provider if you installed SQL Server Express with the default instance name, or you can define your own instance in the Web.config file for your ASP.NET application. - +This class is used by the and classes to provide membership services for an ASP.NET application using a SQL Server database. You cannot use a without SQL Server. When your computer has SQL Server Express installed with the default instance name and user-instancing enabled, the object will create a database called `aspnetdb` in the application's `App_Data` directory the first time the application is run. + + To manually create the database, run the `Aspnet_regsql.exe` executable found in the `%systemroot%\Microsoft.NET\Framework\ versionNumber` folder and specify the `-A m` option (for example `aspnet_regsql.exe -A m`). The database created is called Aspnetdb. Alternatively, run `Aspnet_regsql.exe` to pull up the GUI configuration mode and choose to configure all ASP.NET Features. + + If the membership provider is configured with a connection string that uses integrated security, the process account of the ASP.NET application must have rights to connect to the SQL Server database. + + The Machine.config file defines a default instance named `AspNetSqlMembershipProvider` that connects to the default SQL Server Express instance on the local machine. You can use this instance of the provider if you installed SQL Server Express with the default instance name, or you can define your own instance in the Web.config file for your ASP.NET application. + If you set the `passwordCompatMode` attribute to , the application can use the hashing and encryption membership options that were added in ASP.NET 4. However, if the `passwordCompatMode` attribute is set to , only the hashing and encryption membership options from the ASP.NET 2.0, ASP.NET 3.5, and ASP.NET 3.5 SP1 can be used. The default value is . For more information, see . - -## Examples - The following code example shows the Web.config file for an ASP.NET application configured to use a . - -``` - - - - - - - - - - - - - - - - - - -``` - + +## Examples + The following code example shows the Web.config file for an ASP.NET application configured to use a . + +``` + + + + + + + + + + + + + + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -98,11 +98,11 @@ This class is used by the and Initializes a new instance of the class. - constructor is called by ASP.NET to create an instance of the class as specified in the configuration for the application. This constructor is not intended to be used from your code. - + constructor is called by ASP.NET to create an instance of the class as specified in the configuration for the application. This constructor is not intended to be used from your code. + ]]> Introduction to ASP.NET Membership @@ -134,36 +134,36 @@ This class is used by the and Gets or sets the name of the application to store and retrieve membership information for. The name of the application to store and retrieve membership information for. The default is the property value for the current . - is used by the to group user information. By qualifying user information with an application name, you can store information for multiple applications in a single database without running into conflicts between duplicate user names. Also, multiple ASP.NET applications can use the same user database by specifying the same value in the property. The property can be set programmatically, or it can be set declaratively in the configuration file for the Web application with the `applicationName` attribute. - - If a value is not specified for the `applicationName` attribute in the configuration file for the Web application, then the property value for the first request made to the application is used. - + is used by the to group user information. By qualifying user information with an application name, you can store information for multiple applications in a single database without running into conflicts between duplicate user names. Also, multiple ASP.NET applications can use the same user database by specifying the same value in the property. The property can be set programmatically, or it can be set declaratively in the configuration file for the Web application with the `applicationName` attribute. + + If a value is not specified for the `applicationName` attribute in the configuration file for the Web application, then the property value for the first request made to the application is used. + > [!CAUTION] -> Because a single default membership provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior for multiple users of an application. We recommend that you avoid writing code to allow users to set the property unless you must. An example of an application where setting the property may be required is an administrative application that manages membership data for multiple applications. Such an application should be a single-user application and not a Web application. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and sets the to `MyApplication`. - -``` - - - - - -``` - +> Because a single default membership provider instance is used for all of the requests served by an object, you can have multiple requests executing concurrently and attempting to set the property value. The property is not thread safe for multiple writes, and changing the property value can result in unexpected behavior for multiple users of an application. We recommend that you avoid writing code to allow users to set the property unless you must. An example of an application where setting the property may be required is an administrative application that manages membership data for multiple applications. Such an application should be a single-user application and not a Web application. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and sets the to `MyApplication`. + +``` + + + + + +``` + ]]> An attempt was made to set the property to an empty string or . @@ -200,73 +200,73 @@ This class is used by the and if the password was updated successfully. if the supplied old password is invalid, the user is locked out, or the user does not exist in the database. - class to update the password for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config). - - The maximum password length is 128 characters. - - If an incorrect password is supplied to the method, the internal counter that tracks invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password is supplied and the user is not currently locked out, then the internal counters that track invalid password and password-answer attempts are reset to zero. For more information, see the and properties. - - You can call the method directly by first obtaining a reference to the instance through the property of the class. The property exposes the `defaultProvider` specified in the Web.config file for the application. Configured providers that are not the default provider referenced using the property. - - You can also change user passwords by using the method. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example modifies the password for the specified user. - + class to update the password for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config). + + The maximum password length is 128 characters. + + If an incorrect password is supplied to the method, the internal counter that tracks invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password is supplied and the user is not currently locked out, then the internal counters that track invalid password and password-answer attempts are reset to zero. For more information, see the and properties. + + You can call the method directly by first obtaining a reference to the instance through the property of the class. The property exposes the `defaultProvider` specified in the Web.config file for the application. Configured providers that are not the default provider referenced using the property. + + You can also change user passwords by using the method. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example modifies the password for the specified user. + > [!NOTE] -> This example uses the property of the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the property of the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#3](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ChangePasswordcs.aspx#3)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#3](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ChangePasswordvb.aspx#3)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#3](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ChangePasswordvb.aspx#3)] + ]]> - is an empty string (""), contains a comma, or is longer than 256 characters. - + is an empty string (""), contains a comma, or is longer than 256 characters. + -or- - - is an empty string or longer than 128 characters. - + + is an empty string or longer than 128 characters. + -or- - - is an empty string or longer than 128 characters. - + + is an empty string or longer than 128 characters. + -or- - - The encoded version of is greater than 128 characters. - + + The encoded version of is greater than 128 characters. + -or- - - The change-password action was canceled by a subscriber to the event, and the property was . - + + The change-password action was canceled by a subscriber to the event, and the property was . + -or- - - The length of is less than the minimum length specified in the property. - + + The length of is less than the minimum length specified in the property. + -or- - - The number of non-alphabetic characters in is less than the required number of non-alphabetic characters specified in the property. - + + The number of non-alphabetic characters in is less than the required number of non-alphabetic characters specified in the property. + -or- - + does not pass the regular expression defined in the property. - is . - + is . + -or- - - is . - + + is . + -or- - + is . was not found in the database. @@ -306,65 +306,65 @@ This class is used by the and if the update was successful; otherwise, . A value of is also returned if the is incorrect, the user is locked out, or the user does not exist in the database. - class to update the password question and answer for a user in the SQL Server database that is specified in the ASP.NET application's configuration file (Web.config). The password answer is encrypted using the format that is specified in the property. - - Requiring a password question and answer provides an additional layer of security when retrieving or resetting a user's password. When creating a user name, a user can supply a question and answer that can later be used to retrieve or reset a forgotten password. The method updates the password question and answer for a membership user. - - If an incorrect password is supplied to the method, the internal counters that track invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by calling the method. If the correct password is supplied and the user is not currently locked out, then the internal counters that track invalid password and password-answer attempts are reset to zero. For more information, see the and properties. - - The maximum length for the password question is 256 characters. The maximum length for the password answer is 128 characters. - - For more information, see , , and . - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example updates the password question and answer for a user. - + class to update the password question and answer for a user in the SQL Server database that is specified in the ASP.NET application's configuration file (Web.config). The password answer is encrypted using the format that is specified in the property. + + Requiring a password question and answer provides an additional layer of security when retrieving or resetting a user's password. When creating a user name, a user can supply a question and answer that can later be used to retrieve or reset a forgotten password. The method updates the password question and answer for a membership user. + + If an incorrect password is supplied to the method, the internal counters that track invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by calling the method. If the correct password is supplied and the user is not currently locked out, then the internal counters that track invalid password and password-answer attempts are reset to zero. For more information, see the and properties. + + The maximum length for the password question is 256 characters. The maximum length for the password answer is 128 characters. + + For more information, see , , and . + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example updates the password question and answer for a user. + > [!NOTE] -> This example uses the property of the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the property of the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#10](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ChangePasswordQuestioncs.aspx#10)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#10](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ChangePasswordQuestionvb.aspx#10)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#10](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ChangePasswordQuestionvb.aspx#10)] + ]]> - is an empty string (""), contains a comma, or is longer than 256 characters. - + is an empty string (""), contains a comma, or is longer than 256 characters. + -or- - - is an empty string or is longer than 128 characters. - + + is an empty string or is longer than 128 characters. + -or- - - is an empty string or is longer than 256 characters. - + + is an empty string or is longer than 256 characters. + -or- - - is an empty string or is longer than 128 characters. - + + is an empty string or is longer than 128 characters. + -or- - + The encoded version of is longer than 128 characters. - is . - + is . + -or- - - is . - + + is . + -or- - - is and is . - + + is and is . + -or- - + is and is . An error occurred when changing the password question and answer in the database. Introduction to ASP.NET Membership @@ -408,60 +408,60 @@ This class is used by the and Adds a new user to the SQL Server membership database. A object for the newly created user. If no user was created, this method returns . - class to create a new user in the SQL Server database specified in the ASP.NET application's configuration file. - - New users are identified with the configured . - - If the property is set to `true`, and `null` or an empty string ("") is specified for the `email` parameter, the user creation will fail. The user creation will also fail if the property is set to `true` and the value specified for the `email` parameter is a duplicate of the email address for an existing user in the database for the configured . - - The maximum length for the user name is 256 characters. The maximum length for the email address is 256 characters. The maximum length for the password in clear text or after it has been hashed or encrypted is 128 characters. - - Other conditions that will cause user creation to fail: - -- The `password` parameter is `null`, or an empty string after trimming. - -- The length of the `password` parameter is less than the value specified in the property. - -- The number of non-alphabetic characters in the `password` parameter is less than the value specified in the property. - -- The `password` parameter does not pass the regular expression in the property. - -- Custom password-validation code canceled user creation during the event. - -- The property is `true` and the `passwordAnswer` parameter is either `null` or an empty string after trimming. - -- The `passwordAnswer` parameter is an empty string. - -- The `passwordAnswer` parameter is longer than 128 characters. - -- The property is `true` and the password question is either `null` or an empty string after trimming. - -- The `passwordQuestion` parameter is an empty string. - -- The `passwordQuestion` parameter is longer than 256 characters. - -- The `providerUserKey` parameter set to an object of a type other than . - -- The `providerUserKey` parameter is a duplicate of an existing user key. - -- The `username` parameter is a duplicate of an existing user name. - - Leading and trailing spaces are trimmed from all string parameter values. - - - -## Examples - The following code example creates a new user for an ASP.NET application configured to use forms authentication and the . If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the sign-in page for the application. - + class to create a new user in the SQL Server database specified in the ASP.NET application's configuration file. + + New users are identified with the configured . + + If the property is set to `true`, and `null` or an empty string ("") is specified for the `email` parameter, the user creation will fail. The user creation will also fail if the property is set to `true` and the value specified for the `email` parameter is a duplicate of the email address for an existing user in the database for the configured . + + The maximum length for the user name is 256 characters. The maximum length for the email address is 256 characters. The maximum length for the password in clear text or after it has been hashed or encrypted is 128 characters. + + Other conditions that will cause user creation to fail: + +- The `password` parameter is `null`, or an empty string after trimming. + +- The length of the `password` parameter is less than the value specified in the property. + +- The number of non-alphabetic characters in the `password` parameter is less than the value specified in the property. + +- The `password` parameter does not pass the regular expression in the property. + +- Custom password-validation code canceled user creation during the event. + +- The property is `true` and the `passwordAnswer` parameter is either `null` or an empty string after trimming. + +- The `passwordAnswer` parameter is an empty string. + +- The `passwordAnswer` parameter is longer than 128 characters. + +- The property is `true` and the password question is either `null` or an empty string after trimming. + +- The `passwordQuestion` parameter is an empty string. + +- The `passwordQuestion` parameter is longer than 256 characters. + +- The `providerUserKey` parameter set to an object of a type other than . + +- The `providerUserKey` parameter is a duplicate of an existing user key. + +- The `username` parameter is a duplicate of an existing user name. + + Leading and trailing spaces are trimmed from all string parameter values. + + + +## Examples + The following code example creates a new user for an ASP.NET application configured to use forms authentication and the . If the user is not created successfully, a message is displayed to the user. Otherwise, the user is redirected to the sign-in page for the application. + > [!NOTE] -> This sample calls the specified as the `defaultProvider` in the Web.config file using the class. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This sample calls the specified as the `defaultProvider` in the Web.config file using the class. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#2](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/CreateUsercs.aspx#2)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx#2)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#2](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/CreateUservb.aspx#2)] + ]]> Introduction to ASP.NET Membership @@ -495,30 +495,30 @@ This class is used by the and if the user was deleted; otherwise, . A value of is also returned if the user does not exist in the database. - class to remove a user from the SQL Server database specified in the ASP.NET application's configuration file. - - Deleted users are only deleted from the configured . - - If `deleteAllRelatedData` is set to `true`, then all user data stored in the database for the , , or personalization features is also deleted for the configured . - - If the membership user does not exist in the database, and `deleteAllRelatedData` is `true`, then the related data and the user information stored for the , , or personalization features will still be deleted for the application specified in the property. As a result, the method can be used for quickly deleting information related to a user, even when the object is not used for storing authenticated user information. - - Leading and trailing spaces are trimmed from the `username` parameter value. - - - -## Examples - The following code example deletes the currently logged-on user. - + class to remove a user from the SQL Server database specified in the ASP.NET application's configuration file. + + Deleted users are only deleted from the configured . + + If `deleteAllRelatedData` is set to `true`, then all user data stored in the database for the , , or personalization features is also deleted for the configured . + + If the membership user does not exist in the database, and `deleteAllRelatedData` is `true`, then the related data and the user information stored for the , , or personalization features will still be deleted for the application specified in the property. As a result, the method can be used for quickly deleting information related to a user, even when the object is not used for storing authenticated user information. + + Leading and trailing spaces are trimmed from the `username` parameter value. + + + +## Examples + The following code example deletes the currently logged-on user. + > [!NOTE] -> This example uses to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#6](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/DeleteUsercs.aspx#6)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#6](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/DeleteUservb.aspx#6)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#6](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/DeleteUservb.aspx#6)] + ]]> @@ -555,31 +555,31 @@ This class is used by the and if the membership provider supports password reset; otherwise, . The default is . - property is set to , as users cannot retrieve hashed password values. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and enables password reset. - -``` - - - - - -``` - + property is set to , as users cannot retrieve hashed password values. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and enables password reset. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -612,33 +612,33 @@ This class is used by the and if the membership provider supports password retrieval; otherwise, . The default is . - property is set to , a user will not be able to retrieve their existing password from the database. The password format provides one-way encoding of password values. Passwords are hashed with a randomly generated salt value and compared to values stored in the database for authentication. Hashed values cannot be unencoded to retrieve the original password value. - - If the property is set to , and is set to `true`, a is thrown when the provider is initialized. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and enables password retrieval. - -``` - - - - - -``` - + property is set to , a user will not be able to retrieve their existing password from the database. The password format provides one-way encoding of password values. Passwords are hashed with a randomly generated salt value and compared to values stored in the database for authentication. Hashed values cannot be unencoded to retrieve the original password value. + + If the property is set to , and is set to `true`, a is thrown when the provider is initialized. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and enables password retrieval. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -674,43 +674,43 @@ This class is used by the and Returns a collection of membership users for which the email address field contains the specified email address. A that contains a page of objects beginning at the page specified by . - returns a list of membership users in which the email address contains a match with the supplied `emailToMatch` for the configured . - - The searches for a user name that matches the `emailToMatch` parameter value, using the LIKE clause. SQL Server wildcard characters can be included in the parameter value. For example, if the `emailToMatch` parameter is set to "address@example.com", then information for users with the email address "address@example.com" is returned, if it exists. If the `emailToMatch` parameter is set to "%@example.com", then information for users with the email address "address@example.com", "address2@example.com", "admin@example.com", and so on is returned. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through tenth users returned. The `totalRecords` parameter would be set to 13. - - Leading and trailing spaces are trimmed from the `emailToMatch` parameter value. - - - -## Examples - The following code example uses the method to retrieve membership user information and displays the results in pages of data. - + returns a list of membership users in which the email address contains a match with the supplied `emailToMatch` for the configured . + + The searches for a user name that matches the `emailToMatch` parameter value, using the LIKE clause. SQL Server wildcard characters can be included in the parameter value. For example, if the `emailToMatch` parameter is set to "address@example.com", then information for users with the email address "address@example.com" is returned, if it exists. If the `emailToMatch` parameter is set to "%@example.com", then information for users with the email address "address@example.com", "address2@example.com", "admin@example.com", and so on is returned. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through tenth users returned. The `totalRecords` parameter would be set to 13. + + Leading and trailing spaces are trimmed from the `emailToMatch` parameter value. + + + +## Examples + The following code example uses the method to retrieve membership user information and displays the results in pages of data. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#13](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/FindUsersByEmailcs.aspx#13)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#13](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByEmailvb.aspx#13)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#13](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByEmailvb.aspx#13)] + ]]> - is longer than 256 characters. - + is longer than 256 characters. + -or- - - is less than zero. - + + is less than zero. + -or- - - is less than one. - + + is less than one. + -or- - + multiplied by plus minus one exceeds Int32.MaxValue. Introduction to ASP.NET Membership @@ -745,43 +745,43 @@ This class is used by the and Gets a collection of membership users where the user name contains the specified user name to match. A that contains a page of objects beginning at the page specified by . - returns a list of membership users for which the user name contains a match with the supplied `usernameToMatch` for the configured . - - The searches for a user name that matches the `usernameToMatch` parameter value, using the LIKE clause. SQL Server wildcard characters can be included with the parameter value. For example, if the `usernameToMatch` parameter is set to "user1", then user information for the user with the user name of "user1" is returned, if it exists. If the `usernameToMatch` parameter is set to "user%", then user information for users with the user name of "user1", "user2", "user_admin", and so on are returned. - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. The `totalRecords` parameter would be set to 13. - - Leading and trailing spaces are trimmed from the `usernameToMatch` parameter value. - - - -## Examples - The following code example uses the method to retrieve membership user information and displays the results in pages of data. - + returns a list of membership users for which the user name contains a match with the supplied `usernameToMatch` for the configured . + + The searches for a user name that matches the `usernameToMatch` parameter value, using the LIKE clause. SQL Server wildcard characters can be included with the parameter value. For example, if the `usernameToMatch` parameter is set to "user1", then user information for the user with the user name of "user1" is returned, if it exists. If the `usernameToMatch` parameter is set to "user%", then user information for users with the user name of "user1", "user2", "user_admin", and so on are returned. + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. The `totalRecords` parameter would be set to 13. + + Leading and trailing spaces are trimmed from the `usernameToMatch` parameter value. + + + +## Examples + The following code example uses the method to retrieve membership user information and displays the results in pages of data. + > [!NOTE] -> This example uses System.Web.Security.SqlMembershipProvider to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses System.Web.Security.SqlMembershipProvider to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#12](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/FindUsersByNamecs.aspx#12)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#12](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByNamevb.aspx#12)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#12](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/FindUsersByNamevb.aspx#12)] + ]]> - is an empty string ("") or is longer than 256 characters. - + is an empty string ("") or is longer than 256 characters. + -or- - - is less than zero. - + + is less than zero. + -or- - - is less than 1. - + + is less than 1. + -or- - + multiplied by plus minus one exceeds Int32.MaxValue. is . @@ -809,26 +809,26 @@ This class is used by the and Generates a random password that is at least 14 characters long. A random password that is at least 14 characters long. - class provides a method, which generates a password of a specified size with at least the specified number of non-alphabetic characters. The method of the calls the method of the class to retrieve a random password that is at least 14 characters long. If the property is greater than 14, the password returned will be the length specified in the property. - - You can specifically call the method by referencing the class directly from the property of the class. - - The generated password only contains alphanumeric characters and the following punctuation marks: `!@#$%^&*()_-+=[{]};:<>|./?`. No hidden or non-printable control characters are included in the generated password. - + class provides a method, which generates a password of a specified size with at least the specified number of non-alphabetic characters. The method of the calls the method of the class to retrieve a random password that is at least 14 characters long. If the property is greater than 14, the password returned will be the length specified in the property. + + You can specifically call the method by referencing the class directly from the property of the class. + + The generated password only contains alphanumeric characters and the following punctuation marks: `!@#$%^&*()_-+=[{]};:<>|./?`. No hidden or non-printable control characters are included in the generated password. + > [!NOTE] -> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the and properties. - - - -## Examples - The following code example generates a random 10-character password. - +> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the and properties. + + + +## Examples + The following code example generates a random 10-character password. + [!code-csharp[System.Web.Security.SqlMembershipProvider#9](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/GeneratePasswordcs.aspx#9)] - [!code-vb[System.Web.Security.SqlMembershipProvider#9](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/GeneratePasswordvb.aspx#9)] - + [!code-vb[System.Web.Security.SqlMembershipProvider#9](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/GeneratePasswordvb.aspx#9)] + ]]> Introduction to ASP.NET Membership @@ -862,35 +862,35 @@ This class is used by the and Gets a collection of all the users in the SQL Server membership database. A of objects representing all the users in the database for the configured . - class to retrieve user information from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). - - The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. The `totalRecords` parameter would be set to 13. - - - -## Examples - The following code example returns a list of users in pages of data with a count of the number of users currently online. - + class to retrieve user information from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). + + The results returned by are constrained by the `pageIndex` and `pageSize` parameters. The `pageSize` parameter identifies the maximum number of objects to return in the . The `pageIndex` parameter identifies which page of results to return, where zero identifies the first page. The `totalRecords` parameter is an `out` parameter that is set to the total number of membership users for the configured `applicationName`. For example, if there are 13 users for the configured `applicationName`, and the `pageIndex` value was 1 with a `pageSize` of 5, the returned would contain the sixth through the tenth users returned. The `totalRecords` parameter would be set to 13. + + + +## Examples + The following code example returns a list of users in pages of data with a count of the number of users currently online. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#5](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ShowUserscs.aspx#5)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] + ]]> - is less than zero. - + is less than zero. + -or- - - is less than one. - + + is less than one. + -or- - + multiplied by plus minus one exceeds Int32.MaxValue. Introduction to ASP.NET Membership @@ -916,26 +916,26 @@ This class is used by the and Returns the number of users currently accessing the application. The number of users currently accessing the application. - class to retrieve the number of users considered online from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). - - returns the number of users of the current application whose last activity date and time is greater than the current date and time less the value of the property in minutes. - - Only users associated with the configured are included in the count. - - - -## Examples - The following code example returns a list of users with a count of the users currently online. - + class to retrieve the number of users considered online from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). + + returns the number of users of the current application whose last activity date and time is greater than the current date and time less the value of the property in minutes. + + Only users associated with the configured are included in the count. + + + +## Examples + The following code example returns a list of users with a count of the users currently online. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#5](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ShowUserscs.aspx#5)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#5](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ShowUsersvb.aspx#5)] + ]]> Introduction to ASP.NET Membership @@ -967,71 +967,71 @@ This class is used by the and Returns the password for the specified user name from the SQL Server membership database. The password for the specified user name. - class to retrieve the password for a user from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). - - If an incorrect password answer is supplied to the method, the internal counter that tracks invalid password-answer attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password answer is supplied and the user is not currently locked out, then the internal counter that tracks invalid password-answer attempts is reset to zero. For more information, see the and properties. - - You can call the method directly by first obtaining a reference to the instance through the property of the class. - - If the property is set to , the method cannot retrieve the password. Hashed passwords are encrypted one-way and cannot be decrypted. If the property is set to , and is set to `true`, a is thrown when the provider is initialized. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example retrieves the password for a specified user name and sends it to the user in an email message. - + class to retrieve the password for a user from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). + + If an incorrect password answer is supplied to the method, the internal counter that tracks invalid password-answer attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password answer is supplied and the user is not currently locked out, then the internal counter that tracks invalid password-answer attempts is reset to zero. For more information, see the and properties. + + You can call the method directly by first obtaining a reference to the instance through the property of the class. + + If the property is set to , the method cannot retrieve the password. Hashed passwords are encrypted one-way and cannot be decrypted. If the property is set to , and is set to `true`, a is thrown when the provider is initialized. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example retrieves the password for a specified user name and sends it to the user in an email message. + > [!NOTE] -> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, we recommend that you return passwords using encryption, such as SSL. - +> Returning a password in clear text using email is not recommended for sites that require a high level of security. For high-security sites, we recommend that you return passwords using encryption, such as SSL. + > [!NOTE] -> This sample calls the specified as the `defaultProvider` in the Web.config file by using the class. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This sample calls the specified as the `defaultProvider` in the Web.config file by using the class. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#4](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/RetrievePasswordcs.aspx#4)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] + ]]> - is invalid. - + is invalid. + -or- - + The membership user identified by is locked out. is set to . - is not found in the membership database. - + is not found in the membership database. + -or- - + An error occurred while retrieving the password from the database. - One of the parameter values exceeds the maximum allowed length. - + One of the parameter values exceeds the maximum allowed length. + -or- - - is an empty string (""), contains a comma, or is longer than 256 characters. - + + is an empty string (""), contains a comma, or is longer than 256 characters. + -or- - - is an empty string and is . - + + is an empty string and is . + -or- - - is greater than 128 characters. - + + is greater than 128 characters. + -or- - + The encoded version of is greater than 128 characters. - is . - + is . + -or- - + is and is . Introduction to ASP.NET Membership @@ -1073,11 +1073,11 @@ This class is used by the and Gets the information from the data source for the membership user associated with the specified unique identifier and updates the last activity date/time stamp for the user, if specified. A object representing the user associated with the specified unique identifier. If no user is found in the database for the specified value, is returned. - retrieves the user information from the data source and creates a object populated with the returned data. The user is identified using the unique identifier specified with the `providerUserKey` parameter. - + retrieves the user information from the data source and creates a object populated with the returned data. The user is identified using the unique identifier specified with the `providerUserKey` parameter. + ]]> @@ -1114,33 +1114,33 @@ This class is used by the and Returns information from the SQL Server membership database for a user and provides an option to update the last activity date/time stamp for the user. A object representing the specified user. If no user is found in the database for the specified value, is returned. - class to retrieve user information from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). - - If `userIsOnline` is `true`, the last activity date/time stamp for the user is updated to the current date and time. This is reflected in the and properties and in the value returned by . - - Leading and trailing spaces are trimmed from the `username` parameter value. - - - -## Examples - The following code example uses the method to determine whether a user exists before retrieving the password for the user. - + class to retrieve user information from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). + + If `userIsOnline` is `true`, the last activity date/time stamp for the user is updated to the current date and time. This is reflected in the and properties and in the value returned by . + + Leading and trailing spaces are trimmed from the `username` parameter value. + + + +## Examples + The following code example uses the method to determine whether a user exists before retrieving the password for the user. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#4](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/RetrievePasswordcs.aspx#4)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#4](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/RetrievePasswordvb.aspx#4)] + ]]> - exceeds 256 characters. - + exceeds 256 characters. + -or- - + contains a comma. is . @@ -1171,26 +1171,26 @@ This class is used by the and Gets the user name associated with the specified email address. The user name associated with the specified email address. If no match is found, this method returns . - class with an email address, which it uses to retrieve an associated user name from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). - - If more than one user in the membership database has the same email address, the first user name encountered is returned. You can set the `requiresUniqueEmail` attribute to `true` in the application-configuration file to ensure that each email address in the database is unique. - - Leading and trailing spaces are trimmed from the `email` parameter value. - - - -## Examples - The following code example retrieves the user name for a specified email address. - + class with an email address, which it uses to retrieve an associated user name from the SQL Server database specified in the ASP.NET application's configuration file (Web.config). + + If more than one user in the membership database has the same email address, the first user name encountered is returned. You can set the `requiresUniqueEmail` attribute to `true` in the application-configuration file to ensure that each email address in the database is unique. + + Leading and trailing spaces are trimmed from the `email` parameter value. + + + +## Examples + The following code example retrieves the user name for a specified email address. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#7](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/GetUserByEmailcs.aspx#7)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/GetUserByEmailvb.aspx#7)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#7](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/GetUserByEmailvb.aspx#7)] + ]]> @@ -1224,63 +1224,63 @@ This class is used by the and A that contains the names and values of configuration options for the membership provider. Initializes the SQL Server membership provider with the property values specified in the ASP.NET application's configuration file. This method is not intended to be used directly from your code. - with the property values specified in the ASP.NET application configuration file (Web.config) and is not intended to be used directly from your code. - + with the property values specified in the ASP.NET application configuration file (Web.config) and is not intended to be used directly from your code. + ]]> is . - The , , , or attribute is set to a value other than a . - + The , , , or attribute is set to a value other than a . + -or- - - The or the attribute is set to a value other than a positive integer. - + + The or the attribute is set to a value other than a positive integer. + -or- - - The attribute is set to a value other than a positive integer, or the value is greater than 128. - + + The attribute is set to a value other than a positive integer, or the value is greater than 128. + -or- - - The attribute is set to a value other than zero or a positive integer, or the value is greater than 128. - + + The attribute is set to a value other than zero or a positive integer, or the value is greater than 128. + -or- - - The value for the attribute is not a valid regular expression. - + + The value for the attribute is not a valid regular expression. + -or- - - The attribute is set to a value that is greater than 256 characters. - + + The attribute is set to a value that is greater than 256 characters. + -or- - - The attribute specified in the application configuration file is an invalid enumeration. - + + The attribute specified in the application configuration file is an invalid enumeration. + -or- - - The attribute is set to and the attribute is set to in the application configuration. - + + The attribute is set to and the attribute is set to in the application configuration. + -or- - - The attribute is set to and the <machineKey> configuration element specifies for the attribute. - + + The attribute is set to and the <machineKey> configuration element specifies for the attribute. + -or- - - The attribute is empty or does not exist in the application configuration. - + + The attribute is empty or does not exist in the application configuration. + -or- - - The value of the connection string for the attribute value is empty, or the specified does not exist in the application configuration file. - + + The value of the connection string for the attribute value is empty, or the specified does not exist in the application configuration file. + -or- - - The value for the attribute is set to a value other than zero or a positive integer. - + + The value for the attribute is set to a value other than zero or a positive integer. + -or- - + The application configuration file for this instance contains an unrecognized attribute. The current trust level is less than . The provider has already been initialized prior to the current call to the method. @@ -1313,37 +1313,37 @@ This class is used by the and Gets the number of invalid password or password-answer attempts allowed before the membership user is locked out. The number of invalid password or password-answer attempts allowed before the membership user is locked out. - works in conjunction with the to guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. If the number of invalid passwords or password questions supplied for a membership user is greater than or equal to the value of the property within the number of minutes identified by the value of the property, then the membership user is locked out by setting the property to `true` until the user is unlocked with the method. If a valid password is supplied before the value is reached, the counters that track the number of invalid password and password-answer attempts are reset to zero. If a valid password answer is supplied before the value is reached, only the counter that tracks the number of invalid password-answer attempts is reset to zero. - - The keeps counts of invalid password attempts and invalid password-answer attempts separately. Invalid password attempts result in only the password-attempt counter being incremented. Invalid password-answer attempts result in only the password-answer counter being incremented. - - The property value is set in the application configuration using the `maxInvalidPasswordAttempts` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration section. - - If the property is set to `false`, invalid password-answer attempts are not tracked. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. - -``` - - - - - -``` - + works in conjunction with the to guard against an unwanted source guessing the password or password answer of a membership user through repeated attempts. If the number of invalid passwords or password questions supplied for a membership user is greater than or equal to the value of the property within the number of minutes identified by the value of the property, then the membership user is locked out by setting the property to `true` until the user is unlocked with the method. If a valid password is supplied before the value is reached, the counters that track the number of invalid password and password-answer attempts are reset to zero. If a valid password answer is supplied before the value is reached, only the counter that tracks the number of invalid password-answer attempts is reset to zero. + + The keeps counts of invalid password attempts and invalid password-answer attempts separately. Invalid password attempts result in only the password-attempt counter being incremented. Invalid password-answer attempts result in only the password-answer counter being incremented. + + The property value is set in the application configuration using the `maxInvalidPasswordAttempts` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration section. + + If the property is set to `false`, invalid password-answer attempts are not tracked. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1375,35 +1375,35 @@ This class is used by the and Gets the minimum number of special characters that must be present in a valid password. The minimum number of special characters that must be present in a valid password. - property returns the minimum number of special, non-alphabetic characters that must be entered to create a valid password for the object. - - The property value is set in the application configuration using the `minRequiredNonalphanumericCharacters` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. - - A non-alphanumeric character is a character for which the method returns `false`. - - - -## Examples - The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredNonalphanumericCharacters` attribute to one character. - -``` - - - - - -``` - + property returns the minimum number of special, non-alphabetic characters that must be entered to create a valid password for the object. + + The property value is set in the application configuration using the `minRequiredNonalphanumericCharacters` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. + + A non-alphanumeric character is a character for which the method returns `false`. + + + +## Examples + The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredNonalphanumericCharacters` attribute to one character. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1435,33 +1435,33 @@ This class is used by the and Gets the minimum length required for a password. The minimum length required for a password. - property gets the minimum number of characters that must be entered to create a valid password for the object. - - The property value is set in the application configuration using the `minRequiredPasswordLength` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. - - - -## Examples - The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredPasswordLength` attribute to seven characters. - -``` - - - - - -``` - + property gets the minimum number of characters that must be entered to create a valid password for the object. + + The property value is set in the application configuration using the `minRequiredPasswordLength` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. + + + +## Examples + The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `minRequiredPasswordLength` attribute to seven characters. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1493,37 +1493,37 @@ This class is used by the and Gets the time window between which consecutive failed attempts to provide a valid password or password answers are tracked. The time window, in minutes, during which consecutive failed attempts to provide a valid password or password answers are tracked. The default is 10 minutes. If the interval between the current failed attempt and the last failed attempt is greater than the property setting, each failed attempt is treated as if it were the first failed attempt. - property works in conjunction with the property to help guard against an unwanted source guessing the password or the password answer of a membership user through repeated attempts. When users are attempting to log in, change their password, or reset their password, only a certain number of consecutive attempts are allowed within a specified time window. The length of the time window is specified by the property, which identifies the number of minutes allowed between invalid attempts. If the number of consecutive failed attempts that a user makes to reset their password equals the value stored in the property, and the time elapsed since the last invalid attempt is less than the number of minutes specified for the property, then the membership user is locked out by setting the property to `true`. The user can be unlocked by calling the method. If the interval between the current failed attempt and the last failed attempt is greater than the property setting, the current invalid attempt is counted as the first. If a valid password answer is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password-answer attempts is set to zero. If a valid password is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password attempts and the count of invalid password-answer attempts are set to zero. - - The keeps count of invalid password attempts and invalid password-answer attempts separately. Invalid password attempts result in only the password-attempt counter being incremented. Invalid password-answer attempts result in only the password-answer counter being incremented. - - The property value is set in the application configuration using the `passwordAttemptWindow` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration section. - - If the property is set to `false`, invalid password-answer attempts are not tracked. - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. - -``` - - - - - -``` - + property works in conjunction with the property to help guard against an unwanted source guessing the password or the password answer of a membership user through repeated attempts. When users are attempting to log in, change their password, or reset their password, only a certain number of consecutive attempts are allowed within a specified time window. The length of the time window is specified by the property, which identifies the number of minutes allowed between invalid attempts. If the number of consecutive failed attempts that a user makes to reset their password equals the value stored in the property, and the time elapsed since the last invalid attempt is less than the number of minutes specified for the property, then the membership user is locked out by setting the property to `true`. The user can be unlocked by calling the method. If the interval between the current failed attempt and the last failed attempt is greater than the property setting, the current invalid attempt is counted as the first. If a valid password answer is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password-answer attempts is set to zero. If a valid password is supplied before the maximum number of allowed invalid attempts is reached, the count of invalid password attempts and the count of invalid password-answer attempts are set to zero. + + The keeps count of invalid password attempts and invalid password-answer attempts separately. Invalid password attempts result in only the password-attempt counter being incremented. Invalid password-answer attempts result in only the password-answer counter being incremented. + + The property value is set in the application configuration using the `passwordAttemptWindow` attribute of the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) configuration section. + + If the property is set to `false`, invalid password-answer attempts are not tracked. + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies that the application use an instance of the and sets the `maxInvalidPasswordAttempts` attribute to five invalid attempts and the `passwordAttemptWindow` to 30 minutes. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1555,37 +1555,37 @@ This class is used by the and Gets a value indicating the format for storing passwords in the SQL Server membership database. One of the values, indicating the format for storing passwords in the SQL Server database. - value is specified in the [providers](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6d4936ht(v%3dvs.100)) section of the Web.config file for the ASP.NET application. - - `Encrypted` and `Hashed` passwords are encrypted or hashed by default based on information supplied in the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v%3dvs.100)) element in your configuration. Note that if you specify a value of `3DES` for the `validation` attribute, or if no value is specified, hashed passwords will be hashed using the algorithm. - - A custom hash algorithm can be defined using the `hashAlgorithmType` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. If you choose encryption, default password encryption uses AES. You can change the encryption algorithm by setting the `decryption` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v%3dvs.100)) configuration element. If you are encrypting passwords, you must provide an explicit value for the `decryptionKey` attribute in the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v%3dvs.100)) element. The default value of `AutoGenerate` for the `decryptionKey` attribute is not supported when using encrypted passwords with ASP.NET Membership. - - Due to collision problems with SHA1, Microsoft recommends a security model based on SHA256 or better. - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and sets its password format to `Hashed`. - -``` - - - - - -``` - + value is specified in the [providers](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/6d4936ht(v%3dvs.100)) section of the Web.config file for the ASP.NET application. + + `Encrypted` and `Hashed` passwords are encrypted or hashed by default based on information supplied in the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v%3dvs.100)) element in your configuration. Note that if you specify a value of `3DES` for the `validation` attribute, or if no value is specified, hashed passwords will be hashed using the algorithm. + + A custom hash algorithm can be defined using the `hashAlgorithmType` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. If you choose encryption, default password encryption uses AES. You can change the encryption algorithm by setting the `decryption` attribute of the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v%3dvs.100)) configuration element. If you are encrypting passwords, you must provide an explicit value for the `decryptionKey` attribute in the [machineKey](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/w8h3skw9(v%3dvs.100)) element. The default value of `AutoGenerate` for the `decryptionKey` attribute is not supported when using encrypted passwords with ASP.NET Membership. + + Due to collision problems with SHA1, Microsoft recommends a security model based on SHA256 or better. + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and sets its password format to `Hashed`. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1617,41 +1617,41 @@ This class is used by the and Gets the regular expression used to evaluate a password. A regular expression used to evaluate a password. - property gets the regular expression used to evaluate password complexity for the object. - - The property is set in the application configuration using the `passwordStrengthRegularExpression` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. - - - -## Examples - The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `passwordStrengthRegularExpression` attribute to a regular expression that validates that the password meets the following criteria: - -- Is at least seven characters. - -- Contains at least one digit. - -- Contains at least one special (non-alphanumeric) character. - - If the password does not meet these criteria, the password is not accepted by the membership provider. - -``` - - - - - -``` - + property gets the regular expression used to evaluate password complexity for the object. + + The property is set in the application configuration using the `passwordStrengthRegularExpression` attribute of the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element. + + + +## Examples + The following example shows the [membership Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v=vs.100)) configuration element in the `system.web` section of the application's Web.config file. It specifies that the application use an instance of the class to provide membership services, and sets the `passwordStrengthRegularExpression` attribute to a regular expression that validates that the password meets the following criteria: + +- Is at least seven characters. + +- Contains at least one digit. + +- Contains at least one special (non-alphanumeric) character. + + If the password does not meet these criteria, the password is not accepted by the membership provider. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1684,33 +1684,33 @@ This class is used by the and if a password answer is required for password reset and retrieval; otherwise, . The default is . - property and the property are both `false`, the value of the property is irrelevant. - - For more information, see and . - - - -## Examples - The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and configures it to require a password answer for password reset or retrieval. - -``` - - - - - -``` - + property and the property are both `false`, the value of the property is irrelevant. + + For more information, see and . + + + +## Examples + The following code example shows the [membership](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/1b9hw62f(v%3dvs.100)) element in the `system.web` section of the Web.config file for an ASP.NET application. It specifies the application's instance and configures it to require a password answer for password reset or retrieval. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1743,27 +1743,27 @@ This class is used by the and if the membership provider requires a unique email address; otherwise, . The default is . - instance and configures it to require a unique email address for each user name. - -``` - - - - - -``` - + instance and configures it to require a unique email address for each user name. + +``` + + + + + +``` + ]]> Introduction to ASP.NET Membership @@ -1795,68 +1795,68 @@ This class is used by the and Resets a user's password to a new, automatically generated password. The new password for the specified user. - class to reset the password for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config) to a new, randomly generated value. The new password is returned. - + class to reset the password for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config) to a new, randomly generated value. The new password is returned. + > [!NOTE] -> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the and properties. - - The method is most commonly used when the property is set to `Hashed`. If a user forgets a password that is hashed, the password cannot be retrieved. However, the provider can reset the password to a new, automatically generated password if the user supplies the correct password answer. - - If an incorrect password answer is supplied to the method, the internal counter that tracks invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password answer is supplied and the user is not currently locked out, then the internal counter that tracks invalid password-answer attempts is reset to zero. For more information, see the and properties. - - You can call the method directly by first obtaining a reference to the instance from the property of the class. The generated password will be at least 14 characters long, or the length specified in the property, and will contain the number of non-alphanumeric characters specified in the property. The password is not guaranteed to pass the regular expression contained in the property, if one is specified. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example resets a user's password and returns the new, automatically generated password. - +> The random password created by the method is not guaranteed to pass the regular expression in the property. However, the random password will meet the criteria established by the and properties. + + The method is most commonly used when the property is set to `Hashed`. If a user forgets a password that is hashed, the password cannot be retrieved. However, the provider can reset the password to a new, automatically generated password if the user supplies the correct password answer. + + If an incorrect password answer is supplied to the method, the internal counter that tracks invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password answer is supplied and the user is not currently locked out, then the internal counter that tracks invalid password-answer attempts is reset to zero. For more information, see the and properties. + + You can call the method directly by first obtaining a reference to the instance from the property of the class. The generated password will be at least 14 characters long, or the length specified in the property, and will contain the number of non-alphanumeric characters specified in the property. The password is not guaranteed to pass the regular expression contained in the property, if one is specified. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example resets a user's password and returns the new, automatically generated password. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#8](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/ResetPasswordcs.aspx#8)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#8](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ResetPasswordvb.aspx#8)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#8](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/ResetPasswordvb.aspx#8)] + ]]> - is invalid. - + is invalid. + -or- - + The user account is currently locked. is set to . - is not found in the membership database. - + is not found in the membership database. + -or- - - The change password action was canceled by a subscriber to the event and the property was . - + + The change password action was canceled by a subscriber to the event and the property was . + -or- - + An error occurred while retrieving the password from the database. - is an empty string (""), contains a comma, or is longer than 256 characters. - + is an empty string (""), contains a comma, or is longer than 256 characters. + -or- - - is an empty string, or is longer than 128 characters, and is . - + + is an empty string, or is longer than 128 characters, and is . + -or- - + is longer than 128 characters after encoding. - is . - + is . + -or- - + is and is . An unhandled exception occurred. Introduction to ASP.NET Membership @@ -1887,13 +1887,13 @@ This class is used by the and if the membership user was successfully unlocked; otherwise, . A value of is also returned if the user does not exist in the database. - method when the is exceeded within the . - - Leading and trailing spaces are trimmed from the `username` parameter value. - + method when the is exceeded within the . + + Leading and trailing spaces are trimmed from the `username` parameter value. + ]]> @@ -1926,55 +1926,55 @@ This class is used by the and A object that represents the user to update and the updated information for the user. Updates information about a user in the SQL Server membership database. - class to update user information for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config). The , , , , and property values are updated for the specified membership user. - - The maximum length for the property is 256 characters. The maximum length for the property is 256 characters. - - The password for a membership user cannot be updated using the method. To update the password for a membership user, use the method of the class. - - - -## Examples - The following code example updates the email address for a user. - + class to update user information for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config). The , , , , and property values are updated for the specified membership user. + + The maximum length for the property is 256 characters. The maximum length for the property is 256 characters. + + The password for a membership user cannot be updated using the method. To update the password for a membership user, use the method of the class. + + + +## Examples + The following code example updates the email address for a user. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#11](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/UpdateEmailcs.aspx#11)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/UpdateEmailvb.aspx#11)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#11](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/UpdateEmailvb.aspx#11)] + ]]> - is . - + is . + -or- - - The property of is . - + + The property of is . + -or- - + The property of is and is set to . - The property of is an empty string (""), contains a comma, or is longer than 256 characters. - + The property of is an empty string (""), contains a comma, or is longer than 256 characters. + -or- - - The property of is longer than 256 characters. - + + The property of is longer than 256 characters. + -or- - + The property of is an empty string and is set to . - The property of was not found in the database. - + The property of was not found in the database. + -or- - - The property of was equal to an existing email address in the database and is set to true. - + + The property of was equal to an existing email address in the database and is set to true. + -or- - + The user update failed. Introduction to ASP.NET Membership @@ -2006,28 +2006,28 @@ This class is used by the and if the specified username and password are valid; otherwise, . A value of is also returned if the user does not exist in the database. - class to validate user information for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config). - - When a user is successfully validated, the last activity date and last sign-in date values are updated to the current date and time in the database. - - If an incorrect password is supplied to the method, the internal counter that tracks invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password is supplied and the user is not currently locked out, then the internal counters that track invalid password and password-answer attempts are reset to zero. For more information, see the and properties. - - Leading and trailing spaces are trimmed from all parameter values. - - - -## Examples - The following code example shows the sign-in page for an ASP.NET application configured to use forms authentication and the . If the supplied user credentials are invalid, a message is displayed to the user. Otherwise, the user is redirected to the originally requested URL using the method. - + class to validate user information for a user in the SQL Server database specified in the ASP.NET application's configuration file (Web.config). + + When a user is successfully validated, the last activity date and last sign-in date values are updated to the current date and time in the database. + + If an incorrect password is supplied to the method, the internal counter that tracks invalid password attempts is incremented by one. This can result in the user being locked out and unable to log on until the lock status is cleared by a call to the method. If the correct password is supplied and the user is not currently locked out, then the internal counters that track invalid password and password-answer attempts are reset to zero. For more information, see the and properties. + + Leading and trailing spaces are trimmed from all parameter values. + + + +## Examples + The following code example shows the sign-in page for an ASP.NET application configured to use forms authentication and the . If the supplied user credentials are invalid, a message is displayed to the user. Otherwise, the user is redirected to the originally requested URL using the method. + > [!NOTE] -> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. - +> This example uses the class to call the specified as the `defaultProvider` in the Web.config file. If you need to access the default provider as the type , you can cast the property of the class. To access other configured providers as a specific provider type, you can access them by their configured name with the property of the class and cast them as the specific provider type. + [!code-aspx-csharp[System.Web.Security.SqlMembershipProvider#1](~/snippets/csharp/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/CS/logincs.aspx#1)] - [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx#1)] - + [!code-aspx-vb[System.Web.Security.SqlMembershipProvider#1](~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Security.SqlMembershipProvider/VB/loginvb.aspx#1)] + ]]> Introduction to ASP.NET Membership diff --git a/xml/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.xml b/xml/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.xml index db221f7b182..39b98abf2bc 100644 --- a/xml/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.xml +++ b/xml/System.Web.Services.Configuration/SoapEnvelopeProcessingElement.xml @@ -17,11 +17,11 @@ Configures a timeout that helps mitigate denial of service attacks by terminating any request that takes longer than the property value. - and . - + and . + ]]> @@ -126,14 +126,14 @@ if the Web services serializer tries to detect unexpected elements or attributes; otherwise, . The default is . - property to `true` in order to help debug interoperation scenarios. In general, when the class meets an element or attribute that it does not expect it raises an event and continues processing. (The same is true when the , , or properties are used but data is sent out of order.) Setting the property to `true` instructs the Web services run time to handle that event and throw a that contains a list of the expected elements and attributes. - + property to `true` in order to help debug interoperation scenarios. In general, when the class meets an element or attribute that it does not expect it raises an event and continues processing. (The same is true when the , , or properties are used but data is sent out of order.) Setting the property to `true` instructs the Web services run time to handle that event and throw a that contains a list of the expected elements and attributes. + > [!NOTE] -> Because exceptions are not thrown for all unexpected elements and attributes, the property should not be relied upon except as a debugging aid. For example, unexpected `xml:lang` and `xml:space` attributes may not cause an exception. - +> Because exceptions are not thrown for all unexpected elements and attributes, the property should not be relied upon except as a debugging aid. For example, unexpected `xml:lang` and `xml:space` attributes may not cause an exception. + ]]> diff --git a/xml/System.Web.Services.Configuration/WebServiceProtocols.xml b/xml/System.Web.Services.Configuration/WebServiceProtocols.xml index 351ed69f345..c0873f88454 100644 --- a/xml/System.Web.Services.Configuration/WebServiceProtocols.xml +++ b/xml/System.Web.Services.Configuration/WebServiceProtocols.xml @@ -22,13 +22,13 @@ Specifies the transmission protocols that are used to decrypt data sent from a client browser in the HTTP request. - [!CAUTION] -> Using the HttpPostLocalhost value of this enumeration does not prevent access to the test or web service from remote computers. This value checks only the host header of the request; no other validation, authentication, or authorization checks are performed. This check mitigates only browser-based redirection attacks. Authentication and authorization are still required to restrict access to a Web service. - +> Using the HttpPostLocalhost value of this enumeration does not prevent access to the test or web service from remote computers. This value checks only the host header of the request; no other validation, authentication, or authorization checks are performed. This check mitigates only browser-based redirection attacks. Authentication and authorization are still required to restrict access to a Web service. + ]]> diff --git a/xml/System.Web.Services.Description/Operation.xml b/xml/System.Web.Services.Description/Operation.xml index bac99549d55..a22c28c218d 100644 --- a/xml/System.Web.Services.Description/Operation.xml +++ b/xml/System.Web.Services.Description/Operation.xml @@ -43,20 +43,20 @@ Provides an abstract definition of an action supported by the XML Web service. This class cannot be inherited. - class corresponds to the Web Services Description Language (WSDL) `operation` element enclosed by the `portType` element. For more information about WSDL, see the [WSDL](https://www.w3.org/TR/wsdl/) specification. - - - -## Examples - The following example demonstrates a typical use of the class. The example takes a that does not have a that supports the HTTP POST protocol. It adds a instance that supports POST, and writes out a new WSDL contract. - + class corresponds to the Web Services Description Language (WSDL) `operation` element enclosed by the `portType` element. For more information about WSDL, see the [WSDL](https://www.w3.org/TR/wsdl/) specification. + + + +## Examples + The following example demonstrates a typical use of the class. The example takes a that does not have a that supports the HTTP POST protocol. It adds a instance that supports POST, and writes out a new WSDL contract. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Operation_5/CPP/operation_5.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/Operation/Overview/operation_5.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_5/VB/operation_5.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_5/VB/operation_5.vb" id="Snippet1"::: + ]]> @@ -163,13 +163,13 @@ Gets the collection of faults, or error messages, defined by the current . A collection of faults, or error messages, defined by the current operation. - @@ -209,15 +209,15 @@ if the instance matches the parameter; otherwise, . - method. - + method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Operation_IsBoundBy/CPP/operation_isboundby.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/Operation/IsBoundBy/operation_isboundby.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_IsBoundBy/VB/operation_isboundby.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_IsBoundBy/VB/operation_isboundby.vb" id="Snippet1"::: + ]]> @@ -262,18 +262,18 @@ Gets the collection of instances of the class defined by the current . The collection of instances of the class defined by the current . - is associated with exactly one and exactly one , only one instance of each can be a member of this collection, and thus the collection can have a maximum of two members. - - - -## Examples + is associated with exactly one and exactly one , only one instance of each can be a member of this collection, and thus the collection can have a maximum of two members. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Operation_5/CPP/operation_5.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/Operation/Overview/operation_5.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_5/VB/operation_5.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_5/VB/operation_5.vb" id="Snippet3"::: + ]]> @@ -344,18 +344,18 @@ Gets or sets an array of the elements contained in the . An array of names of instances. - property, but housed in an array rather than a space-delimited string. - - - -## Examples + property, but housed in an array rather than a space-delimited string. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Operation_2/CPP/operation_2.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/Operation/ParameterOrder/operation_2.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_2/VB/operation_2.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_2/VB/operation_2.vb" id="Snippet2"::: + ]]> @@ -400,30 +400,30 @@ Gets or sets an optional Remote Procedure Call (RPC) signature that orders specification for request-response or solicit-response operations. A list of names of the instances separated by a single space. - instances must adhere to the following rules: - -- The order of the named instances reflects the order of the parameters in the RPC (remote procedure call) signature, which is the name of the operation, its input and output parameters, the results it returns and the exceptions it might be asked to handle. - -- The return value is not present in the list. - -- If the name appears in both the input and output messages, it is an `in/out` parameter. - -- If the name appears only in the input message, it is an `in` parameter. - -- If the name appears only in the output message, it is an `out` parameter. - - Note that this parameter list is not required, even if the is to be used with an RPC-style . Do not call directly. This method is only used internally for XML serialization. To return the parameter list use . - - - -## Examples + instances must adhere to the following rules: + +- The order of the named instances reflects the order of the parameters in the RPC (remote procedure call) signature, which is the name of the operation, its input and output parameters, the results it returns and the exceptions it might be asked to handle. + +- The return value is not present in the list. + +- If the name appears in both the input and output messages, it is an `in/out` parameter. + +- If the name appears only in the input message, it is an `in` parameter. + +- If the name appears only in the output message, it is an `out` parameter. + + Note that this parameter list is not required, even if the is to be used with an RPC-style . Do not call directly. This method is only used internally for XML serialization. To return the parameter list use . + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Operation_2/CPP/operation_2.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/Operation/ParameterOrder/operation_2.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_2/VB/operation_2.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Operation_2/VB/operation_2.vb" id="Snippet1"::: + ]]> @@ -458,11 +458,11 @@ Gets the of which the is a member. A object. - diff --git a/xml/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection.xml b/xml/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection.xml index 45393f0e4f3..3cd2bcc7cb8 100644 --- a/xml/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection.xml +++ b/xml/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection.xml @@ -31,18 +31,18 @@ Represents the collection of extensibility elements used by the XML Web service. This class cannot be inherited. - , or instances of the class. In a derived class, class allows users to define extensibility elements in addition to those defined in the Web Services Description Language (WSDL) specification. Use these in your if you know in advance the type of extensibility element you want to make. Use an when you do not know the format of an element in advance. - - - -## Examples + , or instances of the class. In a derived class, class allows users to define extensibility elements in addition to those defined in the Web Services Description Language (WSDL) specification. Use these in your if you know in advance the type of extensibility element you want to make. Use an when you do not know the format of an element in advance. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/CPP/servicedescriptionformatextension_13.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection/Overview/servicedescriptionformatextension_13.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet1"::: + ]]> @@ -77,18 +77,18 @@ The object of which this collection is a member. Initializes a new instance of the class. - namespace expose an `Extensions` property representing a , the constructor assigns a parent object corresponding to the level within the Web Services Description Language (WSDL) hierarchy where the current `ServiceDescriptionFormatExtensionCollection` is nested. For more information about WSDL, see the [WSDL](https://www.w3.org/TR/wsdl/) specification. - - - -## Examples + namespace expose an `Extensions` property representing a , the constructor assigns a parent object corresponding to the level within the Web Services Description Language (WSDL) hierarchy where the current `ServiceDescriptionFormatExtensionCollection` is nested. For more information about WSDL, see the [WSDL](https://www.w3.org/TR/wsdl/) specification. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/CPP/servicedescriptionformatextension_13.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection/Overview/servicedescriptionformatextension_13.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet2"::: + ]]> @@ -127,13 +127,13 @@ Adds the specified to the end of the . The zero-based index where the has been added. - @@ -173,13 +173,13 @@ if the is a member of the collection; otherwise, . - @@ -219,13 +219,13 @@ The zero-based index at which to start placing the copied collection. Copies the entire into a one-dimensional array of type , starting at the specified zero-based index of the target array. - @@ -274,11 +274,11 @@ Searches the and returns the first element of the specified derived . If the search is successful, an object of the specified ; otherwise, . - @@ -319,18 +319,18 @@ Searches the for a member with the specified name and namespace URI. If the search is successful, an ; otherwise, . - that meets the criteria of the two parameters. - - - -## Examples + that meets the criteria of the two parameters. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/CPP/servicedescriptionformatextension_13.cpp" id="Snippet5"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection/Overview/servicedescriptionformatextension_13.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet5"::: + ]]> @@ -379,20 +379,20 @@ Searches the and returns an array of all elements of the specified . An array of instances representing all collection members of the specified type. - [!NOTE] -> The array returned is empty if the search is unsuccessful. - - - -## Examples +> The array returned is empty if the search is unsuccessful. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/CPP/servicedescriptionformatextension_13.cpp" id="Snippet6"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection/Overview/servicedescriptionformatextension_13.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet6"::: + ]]> @@ -433,13 +433,13 @@ Searches the and returns an array of all members with the specified name and namespace URI. An array of instances. - [!NOTE] -> The array returned is empty if the search is unsuccessful. - +> The array returned is empty if the search is unsuccessful. + ]]> @@ -478,13 +478,13 @@ Searches for the specified and returns the zero-based index of the first instance with the collection. The zero-based index of the specified , or -1 if the element was not found in the collection. - @@ -524,28 +524,28 @@ The to add to the collection. Adds the specified to the at the specified zero-based index. - , the `extension` parameter is added to the end of the . - - The elements after the insertion point move down to accommodate the new element. - - - -## Examples + , the `extension` parameter is added to the end of the . + + The elements after the insertion point move down to accommodate the new element. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/CPP/servicedescriptionformatextension_13.cpp" id="Snippet13"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection/Overview/servicedescriptionformatextension_13.cs" id="Snippet13"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet13"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet13"::: + ]]> - The parameter is less than zero. - + The parameter is less than zero. + -or- - + The parameter is greater than . @@ -584,18 +584,18 @@ if the parameter is used; otherwise, . - or a (or a derived class) before determining whether it is supported by the XML Web service. - - - -## Examples + or a (or a derived class) before determining whether it is supported by the XML Web service. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/CPP/servicedescriptionformatextension_13.cpp" id="Snippet7"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Description/ServiceDescriptionFormatExtensionCollection/Overview/servicedescriptionformatextension_13.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/ServiceDescriptionFormatExtension_13/VB/servicedescriptionformatextension_13.vb" id="Snippet7"::: + ]]> @@ -635,13 +635,13 @@ if the parameter is required; otherwise, . - @@ -680,13 +680,13 @@ Gets or sets the value of a member of the . The value of the . - @@ -759,13 +759,13 @@ The to remove from the . Removes the first occurrence of the specified from the . - diff --git a/xml/System.Web.Services.Description/SoapExtensionImporter.xml b/xml/System.Web.Services.Description/SoapExtensionImporter.xml index 2e9f7dd0568..403879255d7 100644 --- a/xml/System.Web.Services.Description/SoapExtensionImporter.xml +++ b/xml/System.Web.Services.Description/SoapExtensionImporter.xml @@ -18,19 +18,19 @@ Provides a common interface and functionality for classes to generate code attributes that specify SOAP extensions. - `abstract` class exposes an `abstract` method, , which allows a derived class to add metadata to any method that represents an operation in a binding. The method itself is not an input method. The code attributes, which are added to all Web methods in a binding class, represent extensions to the SOAP Web services protocol, for example, for adding extra headers to an outgoing SOAP message or doing extra processing on an incoming SOAP message. - - You can use a class derived from to extend the generation of client proxy code or `abstract` server code. You can use such a derived class in conjunction with a class derived from the `abstract` class, which extends run-time processing of SOAP messages on the client or service. - - You can specify in a configuration file through the `soapExtensionImporterTypes` configuration element and its child `add` element. You can apply the configuration to: - -- An ASP.NET Web application: service or client. - -- A stand-alone .NET Framework application: client only. - + `abstract` class exposes an `abstract` method, , which allows a derived class to add metadata to any method that represents an operation in a binding. The method itself is not an input method. The code attributes, which are added to all Web methods in a binding class, represent extensions to the SOAP Web services protocol, for example, for adding extra headers to an outgoing SOAP message or doing extra processing on an incoming SOAP message. + + You can use a class derived from to extend the generation of client proxy code or `abstract` server code. You can use such a derived class in conjunction with a class derived from the `abstract` class, which extends run-time processing of SOAP messages on the client or service. + + You can specify in a configuration file through the `soapExtensionImporterTypes` configuration element and its child `add` element. You can apply the configuration to: + +- An ASP.NET Web application: service or client. + +- A stand-alone .NET Framework application: client only. + ]]> @@ -76,11 +76,11 @@ Gets or sets the instance that invokes the method. The instance that invokes the method. - object maintains references to instances of derived types, and then calls the on each of those instances. - + object maintains references to instances of derived types, and then calls the on each of those instances. + ]]> @@ -109,11 +109,11 @@ A into which the method can place new instances. When overridden in a derived class, adds code attribute declarations to any method that represents an operation in a binding. - method. The attributes are added to all Web methods in a binding class. - + method. The attributes are added to all Web methods in a binding class. + ]]> diff --git a/xml/System.Web.Services.Discovery/DiscoveryClientProtocol.xml b/xml/System.Web.Services.Discovery/DiscoveryClientProtocol.xml index 05f3aa06113..61b0a9ea687 100644 --- a/xml/System.Web.Services.Discovery/DiscoveryClientProtocol.xml +++ b/xml/System.Web.Services.Discovery/DiscoveryClientProtocol.xml @@ -34,7 +34,7 @@ The following code example is a Web Form demonstrating how to use the class together with the other classes in the namespace to programmatically invoke XML Web services discovery. The code example demonstrates using the , , , , , and methods. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-aspx-csharp[DiscoveryClientProtocol#1](~/snippets/csharp/System.Web.Services.Discovery/DiscoveryClientProtocol/Overview/discocs.aspx#1)] [!code-aspx-vb[DiscoveryClientProtocol#1](~/snippets/visualbasic/VS_Snippets_Remoting/DiscoveryClientProtocol/VB/discovb.aspx#1)] @@ -226,7 +226,7 @@ The following code example is a Web Form that populates a with the details about the documents in the property discovered during XML Web services discovery. The `PopulateGrid` method fills the with the results from a invocation followed by a call to . > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-aspx-csharp[DiscoveryClientProtocol.Documents#1](~/snippets/csharp/System.Web.Services.Discovery/DiscoveryClientProtocol/Documents/discocs.aspx#1)] [!code-aspx-vb[DiscoveryClientProtocol.Documents#1](~/snippets/visualbasic/VS_Snippets_Remoting/DiscoveryClientProtocol.Documents/VB/discovb.aspx#1)] @@ -472,7 +472,7 @@ The following code example is a Web Form that populates a with the details about the references in the property discovered during an XML Web services discovery. The `PopulateGrid` method fills the with the references found in an invocation to . > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-aspx-csharp[DiscoveryClientProtocol.References#1](~/snippets/csharp/System.Web.Services.Discovery/DiscoveryClientProtocol/References/discocs.aspx#1)] [!code-aspx-vb[DiscoveryClientProtocol.References#1](~/snippets/visualbasic/VS_Snippets_Remoting/DiscoveryClientProtocol.References/VB/discovb.aspx#1)] diff --git a/xml/System.Web.Services.Protocols/SoapExtension.xml b/xml/System.Web.Services.Protocols/SoapExtension.xml index 720f796ec8b..b169897a93c 100644 --- a/xml/System.Web.Services.Protocols/SoapExtension.xml +++ b/xml/System.Web.Services.Protocols/SoapExtension.xml @@ -19,22 +19,22 @@ The base class for SOAP extensions for XML Web services created using ASP.NET. - class. The and methods provide alternative mechanisms for initializing the SOAP extension to enhance performance. is the heart of most SOAP extensions, as the method is called at each stage defined in , allowing the SOAP extension to perform the desired behavior of that specific SOAP extension. For SOAP extensions that need to modify the SOAP request or SOAP response, provides an opportunity to receive the proposed data to be sent across the wire. - - - -## Examples - The following `TraceExtension` SOAP extension outputs the SOAP request and SOAP response to a specified file when applied to an XML Web service method. If the following SOAP extension is installed to run with an XML Web service, the ASPNET user account must have permission to write to the directory in which the log file is written. - + class. The and methods provide alternative mechanisms for initializing the SOAP extension to enhance performance. is the heart of most SOAP extensions, as the method is called at each stage defined in , allowing the SOAP extension to perform the desired behavior of that specific SOAP extension. For SOAP extensions that need to modify the SOAP request or SOAP response, provides an opportunity to receive the proposed data to be sent across the wire. + + + +## Examples + The following `TraceExtension` SOAP extension outputs the SOAP request and SOAP response to a specified file when applied to an XML Web service method. If the following SOAP extension is installed to run with an XML Web service, the ASPNET user account must have permission to write to the directory in which the log file is written. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic SoapExtension Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Protocols/SoapExtension/Overview/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -86,22 +86,22 @@ When overridden in a derived class, allows a SOAP extension access to the memory buffer containing the SOAP request or response. A representing a new memory buffer that this SOAP extension can modify. - ensures that SOAP extensions with the highest priority can modify the actual data closest to the SOAP message sent or returned over the wire. - - SOAP extensions should save references of the passed into and the returned from . If the SOAP extension is configured to run with a XML Web service method, the passed into contains the serialized SOAP request at the . Similarly, the reference returned from is written into when the serialization occurs and thus contains the serialized SOAP response in the . - - - -## Examples - The following example saves both the passed into and the returned from in the member variables `oldStream` and `newStream`, respectively. - + ensures that SOAP extensions with the highest priority can modify the actual data closest to the SOAP message sent or returned over the wire. + + SOAP extensions should save references of the passed into and the returned from . If the SOAP extension is configured to run with a XML Web service method, the passed into contains the serialized SOAP request at the . Similarly, the reference returned from is written into when the serialization occurs and thus contains the serialized SOAP response in the . + + + +## Examples + The following example saves both the passed into and the returned from in the member variables `oldStream` and `newStream`, respectively. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic SoapExtension.ChainStream Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Protocols/SoapExtension/ChainStream/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension.ChainStream Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension.ChainStream Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -141,28 +141,28 @@ When overridden in a derived class, allows a SOAP extension to initialize data specific to a class implementing an XML Web service at a one time performance cost. The that the SOAP extension initializes for caching. - that gets called by ASP.NET depends on how the SOAP extension was specified. There are two methods for specifying a SOAP extension: - -- Apply a custom attribute, deriving from , to the individual XML Web service method. - -- Add a reference in either the web.config or app.config configuration files. - - If you add a reference to one of the configuration files, the SOAP extension runs for all XML Web services within the scope of that configuration file. When specifying, a SOAP extension by referencing a configuration file, ASP.NET invokes the overload that passes in a . When specifying an extension by applying a custom attribute, ASP.NET invokes the that passes in a and a . - - For details on adding SOAP extensions to a configuration file, see [Configuration Options for XML Web Services Created Using ASP.NET](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/b2c0ew36(v=vs.100)). - - - -## Examples - The following code demonstrates how one can save SOAP extension specific data on a per XML Web service basis. If the SOAP extension is configured using a configuration file instead of an attribute, the SOAP extension can store data for each class to which the SOAP extension is applied. This example saves the name of a file in which to log the SOAP messages sent to and from the XML Web service method based on the name of the class implementing the XML Web service into the cache. This code example is part of a full code example for a TraceExtension SOAP extension that can be found in the class overview. - + that gets called by ASP.NET depends on how the SOAP extension was specified. There are two methods for specifying a SOAP extension: + +- Apply a custom attribute, deriving from , to the individual XML Web service method. + +- Add a reference in either the web.config or app.config configuration files. + + If you add a reference to one of the configuration files, the SOAP extension runs for all XML Web services within the scope of that configuration file. When specifying, a SOAP extension by referencing a configuration file, ASP.NET invokes the overload that passes in a . When specifying an extension by applying a custom attribute, ASP.NET invokes the that passes in a and a . + + For details on adding SOAP extensions to a configuration file, see [Configuration Options for XML Web Services Created Using ASP.NET](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/b2c0ew36(v=vs.100)). + + + +## Examples + The following code demonstrates how one can save SOAP extension specific data on a per XML Web service basis. If the SOAP extension is configured using a configuration file instead of an attribute, the SOAP extension can store data for each class to which the SOAP extension is applied. This example saves the name of a file in which to log the SOAP messages sent to and from the XML Web service method based on the name of the class implementing the XML Web service into the cache. This code example is part of a full code example for a TraceExtension SOAP extension that can be found in the class overview. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/SoapExtension.GetInitializer-Type/CPP/traceextension.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Protocols/SoapExtension/GetInitializer/traceextension.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SoapExtension.GetInitializer-Type/VB/traceextension.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/SoapExtension.GetInitializer-Type/VB/traceextension.vb" id="Snippet1"::: + ]]> @@ -194,28 +194,28 @@ When overridden in a derived class, allows a SOAP extension to initialize data specific to an XML Web service method using an attribute applied to the XML Web service method at a one time performance cost. The that the SOAP extension initializes for caching. - overload that accepts a . - - A SOAP extension has three opportunities to initialize data and they all have different purposes: - -- Class constructor - The class constructor is called every time a SOAP extension is instantiated and is typically used to initialize member variables. - -- - , however, is called just once, the first time a SOAP request is made to an XML Web services method. If a custom attribute is applied to the XML Web service method, the method is invoked. This allows the SOAP extension to interrogate the of an XML Web service method for prototype information or to access extension-specific data passed by a class deriving from . The return value is cached by ASP.NET and passed into subsequent methods. Therefore, initialization done in is encapsulated essentially into a one-time performance hit. - -- - is called every time a SOAP request is made to an XML Web service method, but has an advantage over the class constructor, in that the initialized in is passed to it. - - - -## Examples - The following code demonstrates how you can obtain SOAP extension-specific data passed in using a class that derives from , and then cache that data in . This code example is part of a full code example for a `TraceExtension` SOAP extension that can be found in the class overview. This code example relies on a `TraceExtensionAttribute` being passed into the `attribute` parameter. In the full code example, `TraceExtensionAttribute` derives from and adds a `Filename` property, which is what stores in the cache. - + overload that accepts a . + + A SOAP extension has three opportunities to initialize data and they all have different purposes: + +- Class constructor - The class constructor is called every time a SOAP extension is instantiated and is typically used to initialize member variables. + +- - , however, is called just once, the first time a SOAP request is made to an XML Web services method. If a custom attribute is applied to the XML Web service method, the method is invoked. This allows the SOAP extension to interrogate the of an XML Web service method for prototype information or to access extension-specific data passed by a class deriving from . The return value is cached by ASP.NET and passed into subsequent methods. Therefore, initialization done in is encapsulated essentially into a one-time performance hit. + +- - is called every time a SOAP request is made to an XML Web service method, but has an advantage over the class constructor, in that the initialized in is passed to it. + + + +## Examples + The following code demonstrates how you can obtain SOAP extension-specific data passed in using a class that derives from , and then cache that data in . This code example is part of a full code example for a `TraceExtension` SOAP extension that can be found in the class overview. This code example relies on a `TraceExtensionAttribute` being passed into the `attribute` parameter. In the full code example, `TraceExtensionAttribute` derives from and adds a `Filename` property, which is what stores in the cache. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic SoapExtension.GetInitializer Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Protocols/SoapExtension/GetInitializer/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension.GetInitializer Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension.GetInitializer Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -247,27 +247,27 @@ The returned from cached by ASP.NET. When overridden in a derived class, allows a SOAP extension to initialize itself using the data cached in the method. - - This method is called just once, the first time a SOAP request is made to an XML Web services method. If a custom attribute is applied to the XML Web service method, the method is invoked. This allows the SOAP extension to interrogate the of an XML Web service method for prototype information or to access extension-specific data passed by a class deriving from . The return value is cached by ASP.NET and passed into subsequent methods. Therefore, initialization done in is encapsulated essentially into a one-time performance hit. - + - This method is called just once, the first time a SOAP request is made to an XML Web services method. If a custom attribute is applied to the XML Web service method, the method is invoked. This allows the SOAP extension to interrogate the of an XML Web service method for prototype information or to access extension-specific data passed by a class deriving from . The return value is cached by ASP.NET and passed into subsequent methods. Therefore, initialization done in is encapsulated essentially into a one-time performance hit. + - - This method is called every time a SOAP request is made to an XML Web service method, but has an advantage over the class constructor, in that the initialized in is passed to it. - + > [!NOTE] -> You can also add a SOAP extension without deriving from by using the [\ Element](https://msdn.microsoft.com/library/7a373a98-6d82-4f8d-a6fc-2996da3fd54c) in a configuration file. For details, see [\ Element](https://msdn.microsoft.com/library/7a373a98-6d82-4f8d-a6fc-2996da3fd54c) and [SOAP Message Modification Using SOAP Extensions](https://msdn.microsoft.com/library/97d81ace-95e7-4acc-ae39-9692a0021e95). - -## Examples - The following example demonstrates how you can use the data cached during the method. - +> You can also add a SOAP extension without deriving from by using the [\ Element](https://msdn.microsoft.com/library/7a373a98-6d82-4f8d-a6fc-2996da3fd54c) in a configuration file. For details, see [\ Element](https://msdn.microsoft.com/library/7a373a98-6d82-4f8d-a6fc-2996da3fd54c) and [SOAP Message Modification Using SOAP Extensions](https://msdn.microsoft.com/library/97d81ace-95e7-4acc-ae39-9692a0021e95). + +## Examples + The following example demonstrates how you can use the data cached during the method. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic SoapExtension.Initialize Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Protocols/SoapExtension/Initialize/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension.Initialize Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapExtension.Initialize Example/VB/source.vb" id="Snippet1"::: + ]]> @@ -296,18 +296,18 @@ The to process. When overridden in a derived class, allows a SOAP extension to receive a to process at each . - is called at all stages for SOAP extensions applied to both XML Web services created using ASP.NET and their clients. At each , an instance of a class deriving from is passed to . If the SOAP extension is running on the XML Web service client, then a object is passed into ; otherwise a object is passed in. - - - -## Examples - The following example is the portion of a SOAP extension that logs SOAP requests and SOAP responses. By logging the at the , the SOAP extension accesses the to be sent over the wire. If the SOAP extension is applied to an XML Web service method created using ASP.NET, then the contains the SOAP response from the XML Web service method. If the SOAP extension is applied to an XML Web service client, the contains the SOAP request to an XML Web service method. - - Classic SoapExtension.ProcessMessage Example#1 - + is called at all stages for SOAP extensions applied to both XML Web services created using ASP.NET and their clients. At each , an instance of a class deriving from is passed to . If the SOAP extension is running on the XML Web service client, then a object is passed into ; otherwise a object is passed in. + + + +## Examples + The following example is the portion of a SOAP extension that logs SOAP requests and SOAP responses. By logging the at the , the SOAP extension accesses the to be sent over the wire. If the SOAP extension is applied to an XML Web service method created using ASP.NET, then the contains the SOAP response from the XML Web service method. If the SOAP extension is applied to an XML Web service client, the contains the SOAP request to an XML Web service method. + + Classic SoapExtension.ProcessMessage Example#1 + ]]> diff --git a/xml/System.Web.Services.Protocols/SoapHeaderException.xml b/xml/System.Web.Services.Protocols/SoapHeaderException.xml index 25c5563277a..281692be3b3 100644 --- a/xml/System.Web.Services.Protocols/SoapHeaderException.xml +++ b/xml/System.Web.Services.Protocols/SoapHeaderException.xml @@ -25,25 +25,25 @@ The SOAP representation of a server error. - property set to `true`, the XML Web service method must set the property to `true`; otherwise, a is thrown. - - The property cannot be set according to the SOAP specification for a . - + property set to `true`, the XML Web service method must set the property to `true`; otherwise, a is thrown. + + The property cannot be set according to the SOAP specification for a . + > [!NOTE] -> Applications that use the SOAP 1.1 specification as the service protocol can use the to access SOAP faults. However, applications that use the SOAP 1.2 specification must use the to access SOAP faults. - - - -## Examples - In the following example, an XML Web service client calls the `MyWebMethod` XML Web service method, passing in a SOAP header of type `MyHeader` with the property set to `true`. If the XML Web service method does not set the property of the `MyHeader` SOAP header to `true`, a is thrown. - +> Applications that use the SOAP 1.1 specification as the service protocol can use the to access SOAP faults. However, applications that use the SOAP 1.2 specification must use the to access SOAP faults. + + + +## Examples + In the following example, an XML Web service client calls the `MyWebMethod` XML Web service method, passing in a SOAP header of type `MyHeader` with the property set to `true`. If the XML Web service method does not set the property of the `MyHeader` SOAP header to `true`, a is thrown. + :::code language="cpp" source="~/snippets/cpp/VS_Snippets_Remoting/Classic SoapHeader.MustUnderstand Example/CPP/source.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/System.Web.Services.Protocols/SoapHeader/MustUnderstand/source.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapHeader.MustUnderstand Example/VB/source.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapHeader.MustUnderstand Example/VB/source.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Web.Services.Protocols/SoapHttpClientProtocol.xml b/xml/System.Web.Services.Protocols/SoapHttpClientProtocol.xml index e1dec8621e6..7f51dd38b0b 100644 --- a/xml/System.Web.Services.Protocols/SoapHttpClientProtocol.xml +++ b/xml/System.Web.Services.Protocols/SoapHttpClientProtocol.xml @@ -44,7 +44,7 @@ The following code example is the `Math` XML Web service, from which the preceding proxy class was generated. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-aspx-csharp[Classic SoapHttpClientProtocol Example#2](~/snippets/csharp/System.Web.Services.Protocols/SoapHttpClientProtocol/Overview/sourcecs.asmx)] [!code-aspx-vb[Classic SoapHttpClientProtocol Example#2](~/snippets/visualbasic/VS_Snippets_Remoting/Classic SoapHttpClientProtocol Example/VB/sourcevb.asmx)] @@ -188,7 +188,7 @@ The following code example is a Web Service client using the preceding proxy class. Within the `EnterBtn_Click` event of the Web Form, the XML Web service client calls the method attempting to dynamically bind to the URL supplied by the user. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-csharp[SoapHttpClientProtocol.Discover Example#2](~/snippets/csharp/System.Web.Services.Protocols/SoapHttpClientProtocol/Discover/sourcecs.aspx#2)] [!code-vb[SoapHttpClientProtocol.Discover Example#2](~/snippets/visualbasic/VS_Snippets_Remoting/SoapHttpClientProtocol.Discover Example/VB/sourcevb.aspx#2)] diff --git a/xml/System.Web.Services.Protocols/UrlEncodedParameterWriter.xml b/xml/System.Web.Services.Protocols/UrlEncodedParameterWriter.xml index c3538e7ffd2..f0becf13c32 100644 --- a/xml/System.Web.Services.Protocols/UrlEncodedParameterWriter.xml +++ b/xml/System.Web.Services.Protocols/UrlEncodedParameterWriter.xml @@ -19,18 +19,18 @@ Provides URL encoding functionality for writers of out-going request parameters for Web service clients implemented using HTTP but without SOAP. - and other classes in the namespace support the .NET Framework's implementations of Web services via the HTTP-GET and HTTP-POST operations. Web service writers and readers serialize and deserialize, respectively, between the parameters or return objects of Web methods and the HTTP request or response streams. Web service writers and readers use HTTP for transport but don't exchange messages using the SOAP standard. - - The abstract class inherits from the abstract class, adding URL encoding functionality for client-side writing of Web method parameters into HTTP request streams. - - You typically will not need to use or its descendant classes directly. Instead, when the Wsdl.exe tool generates client proxy code according to the HTTP-GET or HTTP-POST implementations, it applies the to each Web method and sets the attribute's property to the appropriate type. - + and other classes in the namespace support the .NET Framework's implementations of Web services via the HTTP-GET and HTTP-POST operations. Web service writers and readers serialize and deserialize, respectively, between the parameters or return objects of Web methods and the HTTP request or response streams. Web service writers and readers use HTTP for transport but don't exchange messages using the SOAP standard. + + The abstract class inherits from the abstract class, adding URL encoding functionality for client-side writing of Web method parameters into HTTP request streams. + + You typically will not need to use or its descendant classes directly. Instead, when the Wsdl.exe tool generates client proxy code according to the HTTP-GET or HTTP-POST implementations, it applies the to each Web method and sets the attribute's property to the appropriate type. + > [!NOTE] -> The Hypertext Transfer Protocol--HTTP/1.1 specifies the use of a variation on Multipurpose Internet Mail Extensions (MIME) message format, which itself allows email messages to specify different content types, both text and binary. - +> The Hypertext Transfer Protocol--HTTP/1.1 specifies the use of a variation on Multipurpose Internet Mail Extensions (MIME) message format, which itself allows email messages to specify different content types, both text and binary. + ]]> @@ -94,11 +94,11 @@ The Web method parameter values. Encodes all the parameter values for a Web method and writes them to the specified writer. - method calls the other overload, , for each of the parameter values, including individual items in arrays. - + method calls the other overload, , for each of the parameter values, including individual items in arrays. + ]]> @@ -131,11 +131,11 @@ The value of the parameter that will be encoded. Encodes a specified parameter value and writes it to the specified writer. - method, , which is called for each Web method, calls this signature of the method for each of the parameter values, including individual items in arrays. - + method, , which is called for each Web method, calls this signature of the method for each of the parameter values, including individual items in arrays. + ]]> @@ -165,11 +165,11 @@ Returns an initializer for the specified method. An that contains the initializer for the specified method. - method. For the class, the initializer is the value of the property of the input object. The property is a array. The method is invoked during service initialization. Later, at the time a request is populated, the initializer object is passed to the method of another instance. The other object performs the actual writing. - + method. For the class, the initializer is the value of the property of the input object. The property is a array. The method is invoked during service initialization. Later, at the time a request is populated, the initializer object is passed to the method of another instance. The other object performs the actual writing. + ]]> @@ -198,13 +198,13 @@ A array obtained through the property of the class. Initializes an instance. - method is invoked at the time a request is populated. - - The input parameter, `initializer`, is obtained by calling the method on another instance during client initialization. - + method is invoked at the time a request is populated. + + The input parameter, `initializer`, is obtained by calling the method on another instance during client initialization. + ]]> @@ -230,11 +230,11 @@ Gets or sets the encoding used to write parameters to the HTTP request. The encoding used to write parameters to the HTTP request. - class, defines how to transform characters into a sequence of bytes. - + class, defines how to transform characters into a sequence of bytes. + ]]> diff --git a/xml/System.Web.Services.Protocols/WebClientProtocol.xml b/xml/System.Web.Services.Protocols/WebClientProtocol.xml index a92fada3362..a9f3a2f8333 100644 --- a/xml/System.Web.Services.Protocols/WebClientProtocol.xml +++ b/xml/System.Web.Services.Protocols/WebClientProtocol.xml @@ -38,7 +38,7 @@ The following example is an ASP.NET Web Form, which calls an XML Web service named `Math`. Within the `EnterBtn_Click` function, the Web Form sets proxy information and client credentials on the proxy class prior to calling the remote XML Web service method. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services.Protocols/WebClientProtocol/Overview/sourcecs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebClientProtocol Example/VB/sourcevb.aspx" id="Snippet1"::: @@ -209,7 +209,7 @@ The following example is an ASP.NET Web Form, which calls an XML Web service named `Math`. Within the `EnterBtn_Click` function, the Web Form explicitly sets authentication credentials using the `Credentials` property. The user name, password and domain are passed into the constructor for the class. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see. +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see. :::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services.Protocols/WebClientProtocol/Credentials/sourcecs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebClientProtocol.Credentials Example/VB/sourcevb.aspx" id="Snippet1"::: @@ -455,7 +455,7 @@ The following example is an ASP.NET Web Form, which calls an XML Web service named `Math`. Within the `EnterBtn_Click` function, the Web Form explicitly sets RequestEncoding to UTF-8. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). :::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services.Protocols/WebClientProtocol/RequestEncoding/sourcecs.aspx" id="Snippet1"::: :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebClientProtocol.RequestEncoding Example/VB/sourcevb.aspx" id="Snippet1"::: diff --git a/xml/System.Web.Services/WebServiceAttribute.xml b/xml/System.Web.Services/WebServiceAttribute.xml index 06839a1118f..d2285a2e7d2 100644 --- a/xml/System.Web.Services/WebServiceAttribute.xml +++ b/xml/System.Web.Services/WebServiceAttribute.xml @@ -29,25 +29,25 @@ Used to add additional information to an XML Web service, such as a string describing its functionality. - is not required for an XML Web service to be published and executed. You can use the `WebServiceAttribute` to specify a name for the XML Web service that is not restricted by the rules for a common language runtime identifier, which is used in the service description and the Service help page for the XML Web service. - - An XML Web service should change its default XML namespace before it is made public. Each XML Web service needs a unique XML namespace to identify it so that client applications can distinguish it from other services on the Web. http://tempuri.org/ is available for XML Web services that are under development, but published XML Web services should use a more permanent namespace. - - Your XML Web service should be identified by a XML namespace that you control. For example, you could use your company's Internet domain name as part of the XML namespace. Although many XML Web service XML namespaces look like URLs, they need not point to an actual resource on the Web. (XML Web service XML namespaces are URIs.) For XML Web services created using ASP.NET, the default XML namespace can be changed using property. - - For more information about using attributes, see [Attributes](/dotnet/standard/attributes/). - - - -## Examples + is not required for an XML Web service to be published and executed. You can use the `WebServiceAttribute` to specify a name for the XML Web service that is not restricted by the rules for a common language runtime identifier, which is used in the service description and the Service help page for the XML Web service. + + An XML Web service should change its default XML namespace before it is made public. Each XML Web service needs a unique XML namespace to identify it so that client applications can distinguish it from other services on the Web. http://tempuri.org/ is available for XML Web services that are under development, but published XML Web services should use a more permanent namespace. + + Your XML Web service should be identified by a XML namespace that you control. For example, you could use your company's Internet domain name as part of the XML namespace. Although many XML Web service XML namespaces look like URLs, they need not point to an actual resource on the Web. (XML Web service XML namespaces are URIs.) For XML Web services created using ASP.NET, the default XML namespace can be changed using property. + + For more information about using attributes, see [Attributes](/dotnet/standard/attributes/). + + + +## Examples The following example sets the property of the to `"Common Server Variables"` and sets the XML namespace to `http://www.microsoft.com/`. :::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebServiceAttribute/Overview/sourcecs.asmx"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute Example/VB/sourcevb.asmx"::: - +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute Example/VB/sourcevb.asmx"::: + ]]> @@ -120,19 +120,19 @@ A descriptive message for the XML Web service. The text describing the functionality of the XML Web service. - property to `"Common Server Variables"`. - + :::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebServiceAttribute/Overview/sourcecs.asmx"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute Example/VB/sourcevb.asmx"::: - +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute Example/VB/sourcevb.asmx"::: + ]]> @@ -159,26 +159,26 @@ Gets or sets the name of the XML Web service. The name for the XML Web service. Default value is the name of the class implementing the XML Web service. - property identifies the local part of the XML qualified name for the XML Web service. The `Name` property is also used to display the name of the XML Web service on the Service help page. The Service help page is displayed when a prospective consumer navigates to the.asmx page for the XML Web service without specifying an XML Web service method name and its parameters. - - An XML qualified name is used to disambiguate elements with the same name with an XML document. An XML qualified name consists of the following two parts separated by a colon: namespace or a prefix associated with a namespace and local part. The namespace consists of a URI reference and for the purposes of the Service Description, is the value of the property. In general, a prefix, which acts like an alias to an URI, is associated with the namespace, so that all subsequent XML qualified names using the namespace can use the shortened prefix. The local part is a string beginning with a letter or underscore containing no spaces. Therefore, the XML qualified name identifying a XML Web service in the Service Description is in the following format: - - : - + property identifies the local part of the XML qualified name for the XML Web service. The `Name` property is also used to display the name of the XML Web service on the Service help page. The Service help page is displayed when a prospective consumer navigates to the.asmx page for the XML Web service without specifying an XML Web service method name and its parameters. + + An XML qualified name is used to disambiguate elements with the same name with an XML document. An XML qualified name consists of the following two parts separated by a colon: namespace or a prefix associated with a namespace and local part. The namespace consists of a URI reference and for the purposes of the Service Description, is the value of the property. In general, a prefix, which acts like an alias to an URI, is associated with the namespace, so that all subsequent XML qualified names using the namespace can use the shortened prefix. The local part is a string beginning with a letter or underscore containing no spaces. Therefore, the XML qualified name identifying a XML Web service in the Service Description is in the following format: + + : + For more information on XML qualified names, see [Namespaces in XML 1.0](https://www.w3.org/TR/REC-xml-names/). - - - -## Examples - The following example sets of the XML Web service to `MyName`. - + + + +## Examples + The following example sets of the XML Web service to `MyName`. + :::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebServiceAttribute/Name/sourcecs.asmx"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute.Name Example/VB/sourcevb.asmx"::: - - +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute.Name Example/VB/sourcevb.asmx"::: + + ]]> @@ -205,26 +205,26 @@ Gets or sets the default XML namespace to use for the XML Web service. The default XML namespace to use for the XML Web service. The default is specified in the property. - is used as the default namespace for XML elements directly pertaining to the XML Web service. For example, the name of the XML Web service and its XML Web service methods pertain to the namespace specified in the `Namespace` property. Elements that are specific to WSDL pertain to the namespace. - - For XML Web service clients using SOAP to call an XML Web service, you can optionally add the or to call an XML Web service method. If the client is calling an XML Web service created using ASP.NET, the , and properties are all derived from the property by default. For instance, given an XML Web service method name of `Time` and a `Namespace` property of `http://www.contoso.com/`, the `Action` property is `http://www.contoso.com/Time` by default. To change the default settings for `RequestNamespace`, `ResponseNamespace`, and `Action` for an XML Web service method, you can add a to the XML Web service method. - + is used as the default namespace for XML elements directly pertaining to the XML Web service. For example, the name of the XML Web service and its XML Web service methods pertain to the namespace specified in the `Namespace` property. Elements that are specific to WSDL pertain to the namespace. + + For XML Web service clients using SOAP to call an XML Web service, you can optionally add the or to call an XML Web service method. If the client is calling an XML Web service created using ASP.NET, the , and properties are all derived from the property by default. For instance, given an XML Web service method name of `Time` and a `Namespace` property of `http://www.contoso.com/`, the `Action` property is `http://www.contoso.com/Time` by default. To change the default settings for `RequestNamespace`, `ResponseNamespace`, and `Action` for an XML Web service method, you can add a to the XML Web service method. + > [!NOTE] -> An XML namespace is different from the namespace the class resides in, in terms of the Windows SDK. To specify the namespace for the class, see [Namespace Keywords](/dotnet/csharp/language-reference/keywords/namespace-keywords) if you writing in C#. - - - -## Examples - The following example sets to `http://www.contoso.com` and overrides that namespace for the property by adding a to the `Time` XML Web service method. - +> An XML namespace is different from the namespace the class resides in, in terms of the Windows SDK. To specify the namespace for the class, see [Namespace Keywords](/dotnet/csharp/language-reference/keywords/namespace-keywords) if you writing in C#. + + + +## Examples + The following example sets to `http://www.contoso.com` and overrides that namespace for the property by adding a to the `Time` XML Web service method. + :::code language="aspx-csharp" source="~/snippets/csharp/System.Web.Services/WebServiceAttribute/Namespace/sourcecs.asmx"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute.Namespace Example/VB/sourcevb.asmx"::: - +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_Remoting/Classic WebServiceAttribute.Namespace Example/VB/sourcevb.asmx"::: + ]]> diff --git a/xml/System.Web.SessionState/HttpSessionState.xml b/xml/System.Web.SessionState/HttpSessionState.xml index 0f1997d5eb3..01af2ecec9a 100644 --- a/xml/System.Web.SessionState/HttpSessionState.xml +++ b/xml/System.Web.SessionState/HttpSessionState.xml @@ -48,7 +48,7 @@ The following code example sets and retrieves values from session state. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-aspx-csharp[HttpSessionState#30](~/snippets/csharp/VS_Snippets_WebNet/HttpSessionState/CS/session2cs.aspx#30)] [!code-aspx-vb[HttpSessionState#30](~/snippets/visualbasic/VS_Snippets_WebNet/HttpSessionState/VB/session2vb.aspx#30)] @@ -133,7 +133,7 @@ The following example shows how to store values in session state by using the method. It also shows how to remove values in session state by using the method. A control is used to display the contents session state on the Web page. The method is used to iterate through the session-state collection and populate the control. > [!IMPORTANT] -> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). +> This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see [Script Exploits Overview](https://learn.microsoft.com/previous-versions/aspnet/w1sw53ds(v=vs.100)). [!code-aspx-csharp[HttpSessionState#13](~/snippets/csharp/VS_Snippets_WebNet/HttpSessionState/CS/HttpSessionStateAddCS.aspx#13)] [!code-aspx-vb[HttpSessionState#13](~/snippets/visualbasic/VS_Snippets_WebNet/HttpSessionState/VB/HttpSessionStateAddVB.aspx#13)] @@ -411,7 +411,7 @@ ASP.NET identifies sessions uniquely with each browser. By default, the unique identifier for a session is stored in a non-expiring session cookie in the browser. You can specify that session identifiers not be stored in a cookie by setting the `cookieless` attribute to `true` in the [sessionState](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h6bb9cz9(v%3dvs.100)) configuration element. > [!NOTE] -> To improve the security of your application, your application should allow users to log out, at which point it should call the method. This reduces the potential for an unwanted source using the unique identifier in the URL to retrieve private data stored in the session for a user. +> To improve the security of your application, your application should allow users to log out, at which point it should call the method. This reduces the potential for an unwanted source using the unique identifier in the URL to retrieve private data stored in the session for a user. ASP.NET maintains cookieless session state by automatically inserting a unique session ID into the page's URL. For example, the following URL has been modified by ASP.NET to include the unique session ID lit3py55t21z5v55vlm25s55: @@ -426,7 +426,7 @@ http://www.example.com/(S(4danlfat035muve4g0mvgfrr))/orderform.aspx By default, session identifiers used in cookieless sessions are recycled. That is, if a request is made with a session ID that has expired, a new session is started using the session ID supplied with the request. This behavior can result in the unwanted sharing of session data when a link that contains a cookieless session ID is shared with multiple browsers, perhaps through a search engine or other program. You can reduce the possibility of session data being shared by multiple clients by disabling the recycling of session identifiers. To do this, set the `regenerateExpiredSessionId` attribute of the [sessionState](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/h6bb9cz9(v%3dvs.100)) configuration element to `true`. This will result in a new session ID being generated when a cookieless session request is made with an expired session ID. Note that if the request made with the expired session ID uses the HTTP `POST` method, then any posted data will be lost when `regenerateExpiredSessionId` is `true`, as ASP.NET performs a redirect to ensure that the browser has the new session identifier in the URL. > [!NOTE] -> While setting the `regenerateExpiredSessionId` attribute to `true` reduces the possibility of unwanted sharing of session data, it does not protect against an unwanted source gaining access to the session of another user by obtaining the value and including it in requests to the server. If you are storing private or sensitive information in session state, it is recommended that you use SSL to encrypt any communication between the browser and server that includes the . +> While setting the `regenerateExpiredSessionId` attribute to `true` reduces the possibility of unwanted sharing of session data, it does not protect against an unwanted source gaining access to the session of another user by obtaining the value and including it in requests to the server. If you are storing private or sensitive information in session state, it is recommended that you use SSL to encrypt any communication between the browser and server that includes the . diff --git a/xml/System.Web.SessionState/SessionStateModule.xml b/xml/System.Web.SessionState/SessionStateModule.xml index 9f9c6920a97..e20aed41830 100644 --- a/xml/System.Web.SessionState/SessionStateModule.xml +++ b/xml/System.Web.SessionState/SessionStateModule.xml @@ -137,7 +137,7 @@ You can specify a handler for the event by adding a public subroutine named **Session_OnEnd** to the Global.asax file. > [!NOTE] -> The **Session_OnEnd** event is only supported when the session-state property value is , which is the default. If the session-state is set to or , then the **Session_OnEnd** event in the Global.asax file is ignored. If the session state property value is , then support for the **Session_OnEnd** event is determined by the custom session-state store provider. +> The **Session_OnEnd** event is only supported when the session-state property value is , which is the default. If the session-state is set to or , then the **Session_OnEnd** event in the Global.asax file is ignored. If the session state property value is , then support for the **Session_OnEnd** event is determined by the custom session-state store provider. Though the event is public, you can only handle it by adding an event handler in the Global.asax file. This restriction is implemented because instances are reused for performance. When a session expires, only the **Session_OnEnd** event specified in the Global.asax file is executed, to prevent code from calling an event handler associated with an instance that is currently in use. diff --git a/xml/System.Web.SessionState/SessionStateStoreData.xml b/xml/System.Web.SessionState/SessionStateStoreData.xml index d0a6bb4f77d..22c53347f09 100644 --- a/xml/System.Web.SessionState/SessionStateStoreData.xml +++ b/xml/System.Web.SessionState/SessionStateStoreData.xml @@ -147,7 +147,7 @@ Custom session-store implementers can obtain a reference to the class for the current instance using the method. > [!NOTE] -> Custom objects stored in the collection must support binary serialization. For more information, see [Binary Serialization](/dotnet/standard/serialization/binary-serialization). +> Custom objects stored in the collection must support binary serialization. For more information, see [Binary Serialization](/dotnet/standard/serialization/binary-serialization). ]]> diff --git a/xml/System.Web.SessionState/SessionStateStoreProviderBase.xml b/xml/System.Web.SessionState/SessionStateStoreProviderBase.xml index 7936d9c7c78..e8e844fe528 100644 --- a/xml/System.Web.SessionState/SessionStateStoreProviderBase.xml +++ b/xml/System.Web.SessionState/SessionStateStoreProviderBase.xml @@ -140,9 +140,9 @@ ## Remarks The object calls the method at the beginning of a request for an ASP.NET page, during the event. The method is called if: -- the incoming request has no session ID, or +- the incoming request has no session ID, or -- the incoming request has a session ID, but the session is not found in the data store. +- the incoming request has a session ID, but the session is not found in the data store. The method creates a new object with an empty object, an collection, and the specified `timeout` value. The collection for the ASP.NET application can be retrieved using the method. @@ -549,9 +549,9 @@ ## Remarks The object calls the method to update the expiration date and time for a session to the current date and time plus the session value when either: -- the attribute is `true`, or +- the attribute is `true`, or -- the request did not raise the and events due to an error. +- the request did not raise the and events due to an error. If an ASP.NET page is requested and the attribute is set to `false`, the method is still called to update the expiration date and time of the data in the session data store. diff --git a/xml/System.Web.UI.Adapters/PageAdapter.xml b/xml/System.Web.UI.Adapters/PageAdapter.xml index 64c842bbac7..4242f0419a6 100644 --- a/xml/System.Web.UI.Adapters/PageAdapter.xml +++ b/xml/System.Web.UI.Adapters/PageAdapter.xml @@ -17,41 +17,41 @@ Adapts a Web page for a specific browser and provides the base class from which all page adapters inherit, directly or indirectly. - class is an abstract class that adapts a Web page for a specific class of browsers, defined by the markup language that the browser uses (for example, HTML or XHTML). Much of the adaptability in rendering behavior can be encapsulated in the specialized text writer classes that derive from the class, so it is not always necessary to provide a page adapter. - - Most members of derived page adapters are called from the class or from control adapters. First, the class or control adapters detect the presence of the derived page adapter, and then call the member, or provide the functionality if the page adapter is not present. - - The members of the class provide the following functionality: - -- The and properties define additional HTTP headers and HTTP `GET` and `POST` parameters that can be used to vary caching. They are called during cache initialization from the class. - -- The method returns an object that can be used to persist the combined view and control states of the page. It is referenced from the property if a derived page adapter is present. - -- The method provides a DHTML code fragment that can be used to reference forms in scripts. - -- The method returns a collection of the postback variables if the page is in postback. It is called by the .NET Framework instead of the method if a derived page adapter is present. - -- The and methods are used by control adapters to render hyperlinks if a derived page adapter is present. - -- The method renders a hyperlink or postback client tag that can submit the form. - -- The and methods are used by radio button control adapters to reference the other controls in a radio button group. - -- The property provides access to the combined control and view states of the object through the internal `ClientState` property of the class. - -- The method is used by control adapters to perform device-specific text transformation. - - - -## Examples - The following code example demonstrates how to derive a class named `CustomPageAdapter` from the class and override the method. The method adds an attribute named `src` to a hyperlink, which contains a reference to the current page. All hyperlinks rendered in pages to which `CustomPageAdapter` is attached will have the `src` attribute. - + class is an abstract class that adapts a Web page for a specific class of browsers, defined by the markup language that the browser uses (for example, HTML or XHTML). Much of the adaptability in rendering behavior can be encapsulated in the specialized text writer classes that derive from the class, so it is not always necessary to provide a page adapter. + + Most members of derived page adapters are called from the class or from control adapters. First, the class or control adapters detect the presence of the derived page adapter, and then call the member, or provide the functionality if the page adapter is not present. + + The members of the class provide the following functionality: + +- The and properties define additional HTTP headers and HTTP `GET` and `POST` parameters that can be used to vary caching. They are called during cache initialization from the class. + +- The method returns an object that can be used to persist the combined view and control states of the page. It is referenced from the property if a derived page adapter is present. + +- The method provides a DHTML code fragment that can be used to reference forms in scripts. + +- The method returns a collection of the postback variables if the page is in postback. It is called by the .NET Framework instead of the method if a derived page adapter is present. + +- The and methods are used by control adapters to render hyperlinks if a derived page adapter is present. + +- The method renders a hyperlink or postback client tag that can submit the form. + +- The and methods are used by radio button control adapters to reference the other controls in a radio button group. + +- The property provides access to the combined control and view states of the object through the internal `ClientState` property of the class. + +- The method is used by control adapters to perform device-specific text transformation. + + + +## Examples + The following code example demonstrates how to derive a class named `CustomPageAdapter` from the class and override the method. The method adds an attribute named `src` to a hyperlink, which contains a reference to the current page. All hyperlinks rendered in pages to which `CustomPageAdapter` is attached will have the `src` attribute. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/CS/pageadapter.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/VB/pageadapter.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/VB/pageadapter.vb" id="Snippet1"::: + ]]> @@ -79,11 +79,11 @@ Initializes a new instance of the class. - class or derived class. - + class or derived class. + ]]> @@ -110,15 +110,15 @@ Gets a list of additional HTTP headers by which caching is varied for the Web page to which this derived page adapter is attached. An that contains a list of HTTP headers; otherwise, . - property are added to the list of headers on the `Vary` HTTP header sent to the client browser. - + property are added to the list of headers on the `Vary` HTTP header sent to the client browser. + ]]> @@ -150,13 +150,13 @@ Gets a list of additional parameters from HTTP GET and POST requests by which caching is varied for the Web page to which this derived page adapter is attached. An that contains a list of the GET and POST parameters; otherwise, . - @@ -188,13 +188,13 @@ Gets an encoded string that contains the view and control states data of the Web page to which this derived page adapter is attached. An encoded containing the combined view and control states of the controls on the associated . - property provides access to the internal `ClientState` property of the class. - - View state data stored by the object in the internal `ClientState` property of will always be saved in the hidden field on the Web page. - + property provides access to the internal `ClientState` property of the class. + + View state data stored by the object in the internal `ClientState` property of will always be saved in the hidden field on the Web page. + ]]> @@ -230,15 +230,15 @@ Determines whether the Web page is in postback and returns a name/value collection of the postback variables. A of the postback variables, if any; otherwise . - method returns one of the following collections: - -- Form variables if the HTTP data transfer method is `POST`. - -- Query string variables if the HTTP method is `GET`. - + method returns one of the following collections: + +- Form variables if the HTTP data transfer method is `POST`. + +- Query string variables if the HTTP method is `GET`. + ]]> @@ -270,11 +270,11 @@ Returns a name-value collection of data that was posted to the page using either a POST or a GET command, without performing ASP.NET request validation on the request. The unvalidated form data. - class. - + class. + ]]> @@ -303,18 +303,18 @@ Returns a DHTML code fragment that the client browser can use to reference the form on the page that was posted. A with a reference to the form on the page that was posted. - method provides a DHTML reference to the postback form. The code fragment has the following format: - - `document.forms['` `formID` `']` - + method provides a DHTML reference to the postback form. The code fragment has the following format: + + `document.forms['` `formID` `']` + ]]> - When you inherit from the class, you can override the method if the markup for the browser supported by the adapter requires a different format for the postback form reference. For example, the HTML 3.2 standard used by PocketPC browsers requires the following format: - + When you inherit from the class, you can override the method if the markup for the browser supported by the adapter requires a different format for the postback form reference. For example, the HTML 3.2 standard used by PocketPC browsers requires the following format: + document. @@ -344,11 +344,11 @@ Retrieves a collection of radio button controls specified by . An of controls that make up . - and methods to reference the other controls in the group. - + and methods to reference the other controls in the group. + ]]> @@ -376,26 +376,26 @@ Returns an object that is used by the Web page to maintain the control and view states. An object derived from that supports creating and extracting the combined control and view states for the . - property uses the method to return the object, derived from the class, that forms and extracts the combined control and view states for the page. If there is no derived page adapter attached to the page, a object is used to maintain the state in a hidden field on the page. - -|Link type|Resulting link| -|---------------|--------------------| -|Code Entity Reference,cer|| -|Code Entity Reference Qualified, cerq|| -|Code Entity Reference Specific,cers|| -|Code Entity Reference Qualified Specific, cerqs|| - + property uses the method to return the object, derived from the class, that forms and extracts the combined control and view states for the page. If there is no derived page adapter attached to the page, a object is used to maintain the state in a hidden field on the page. + +|Link type|Resulting link| +|---------------|--------------------| +|Code Entity Reference,cer|| +|Code Entity Reference Qualified, cerq|| +|Code Entity Reference Specific,cers|| +|Code Entity Reference Qualified Specific, cerqs|| + ]]> View state data stored by the object in the internal property of the will always be saved in the hidden field on the Web page. - When you inherit from the class, you can override the method to return another derived page state persister if it is not feasible to maintain the combined state in a hidden field (for example, because of limited resources). - + When you inherit from the class, you can override the method to return another derived page state persister if it is not feasible to maintain the combined state in a hidden field (for example, because of limited resources). + The base class returns a object. You can use the class to maintain the page state in session state. @@ -428,13 +428,13 @@ The to add to the collection. Adds a radio button control to the collection for a specified radio button group. - class uses a object to maintain a list of radio button groups. Each element in is a collection of the controls in a radio button group. The method adds a control to the appropriate collection, creating the collection if it does not already exist, and creating if there are no previously registered controls. - - Radio button control adapters use the and methods to reference the other controls in a radio button group. - + class uses a object to maintain a list of radio button groups. Each element in is a collection of the controls in a radio button group. The method adds a control to the appropriate collection, creating the collection if it does not already exist, and creating if there are no previously registered controls. + + Radio button control adapters use the and methods to reference the other controls in a radio button group. + ]]> @@ -486,21 +486,21 @@ The value to use as a soft key label. Renders an opening hyperlink tag that includes the target URL to the response stream. - method writes an opening hyperlink tag. When `writer` is , this tag has the following format: - - `` - - - -## Examples - The following code example demonstrates how to derive a class named `CustomPageAdapter` from the class and override the method. The method adds an attribute named `src` to a hyperlink, which contains a reference to the current page. All hyperlinks rendered in pages to which `CustomPageAdapter` is attached will have the `src` attribute. - + method writes an opening hyperlink tag. When `writer` is , this tag has the following format: + + `` + + + +## Examples + The following code example demonstrates how to derive a class named `CustomPageAdapter` from the class and override the method. The method adds an attribute named `src` to a hyperlink, which contains a reference to the current page. All hyperlinks rendered in pages to which `CustomPageAdapter` is attached will have the `src` attribute. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/CS/pageadapter.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/VB/pageadapter.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/VB/pageadapter.vb" id="Snippet1"::: + ]]> @@ -543,21 +543,21 @@ The value to assign to the attribute of the link to create. Renders an opening hyperlink tag that includes the target URL and an access key to the response stream. - method writes an opening hyperlink tag. When `writer` is an object, this tag has the following format: - - `` - - - -## Examples - The following code example demonstrates how to derive a class named `CustomPageAdapter` from the class and override the method. adds an attribute named `src` to a hyperlink, which contains a reference to the current page. All hyperlinks rendered in pages to which `CustomPageAdapter` is attached will have the `src` attribute. - + method writes an opening hyperlink tag. When `writer` is an object, this tag has the following format: + + `` + + + +## Examples + The following code example demonstrates how to derive a class named `CustomPageAdapter` from the class and override the method. adds an attribute named `src` to a hyperlink, which contains a reference to the current page. All hyperlinks rendered in pages to which `CustomPageAdapter` is attached will have the `src` attribute. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/CS/pageadapter.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/VB/pageadapter.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Adapters.PageAdapter.RenderBeginHyperlink/VB/pageadapter.vb" id="Snippet1"::: + ]]> @@ -593,13 +593,13 @@ The that contains methods to render the target-specific output. Renders a closing hyperlink tag to the response stream. - method writes a closing hyperlink tag. When the text writer is an object, this tag has the following format: - - `` - + method writes a closing hyperlink tag. When the text writer is an object, this tag has the following format: + + `` + ]]> @@ -655,11 +655,11 @@ The value of the text to display as the link. Renders a postback event into the response stream as a hyperlink, including the encoded and possibly encrypted view state, and event target and argument. - method writes a postback event as a scriptless hyperlink. - + method writes a postback event as a scriptless hyperlink. + ]]> @@ -710,13 +710,13 @@ The value used to assign to the attribute of the created link. Renders a postback event into the response stream as a hyperlink, including the encoded and possibly encrypted view state, an event target and argument, a previous-page parameter, and an access key. - method writes a postback event as a scriptless hyperlink, including the possibly chunked view state, `__EVENTTARGET=target`, `__EVENTARGUMENT=argument`, `__PREVIOUSPAGE=currentFilePath` parameters, and an `accessKey="accessKey"` attribute. - - View state is encrypted if the `enableViewStateMac` attribute of the [pages Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/950xf363(v=vs.100)) configuration element is set to `true`. - + method writes a postback event as a scriptless hyperlink, including the possibly chunked view state, `__EVENTTARGET=target`, `__EVENTARGUMENT=argument`, `__PREVIOUSPAGE=currentFilePath` parameters, and an `accessKey="accessKey"` attribute. + + View state is encrypted if the `enableViewStateMac` attribute of the [pages Element (ASP.NET Settings Schema)](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/950xf363(v=vs.100)) configuration element is set to `true`. + ]]> @@ -764,11 +764,11 @@ to use &amp; as the URL parameter separator; to use &. Renders a postback event into the response stream as a hyperlink, including the encoded view state, an event target and argument, a previous-page parameter, and an access key. - method writes a postback event as a scriptless hyperlink, including the possibly chunked view state, `__EVENTTARGET=target`, `__EVENTARGUMENT=argument`, `__PREVIOUSPAGE=currentFilePath` parameters, and an `accessKey="accessKey"` attribute. - + method writes a postback event as a scriptless hyperlink, including the possibly chunked view state, `__EVENTTARGET=target`, `__EVENTARGUMENT=argument`, `__PREVIOUSPAGE=currentFilePath` parameters, and an `accessKey="accessKey"` attribute. + ]]> @@ -802,13 +802,13 @@ Transforms text for the target browser. A that contains the transformed text. - method can be used, for example, to transform tab characters (`\t`) into line breaks (`\n`). - - The base method returns `text` unchanged. - + method can be used, for example, to transform tab characters (`\t`) into line breaks (`\n`). + + The base method returns `text` unchanged. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/Annotation.xml b/xml/System.Web.UI.DataVisualization.Charting/Annotation.xml index e91d0769f38..055f024d022 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/Annotation.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/Annotation.xml @@ -26,21 +26,21 @@ Defines properties and methods common to all annotations. This is an abstract class. - , or both of these annotation properties to the and property values of a object. - -- Use the property to anchor the annotation to a data point. In this case, its positioning is automatically calculated. - - All annotations are derived from the class, which can be used to set attributes common to all objects, such as color, position, anchoring and so forth. - + , or both of these annotation properties to the and property values of a object. + +- Use the property to anchor the annotation to a data point. In this case, its positioning is automatically calculated. + + All annotations are derived from the class, which can be used to set attributes common to all objects, such as color, position, anchoring and so forth. + ]]> @@ -60,11 +60,11 @@ Initializes a new instance of the class. This is the parameterless constructor and should not be used. - is an abstract class and cannot be created directly. To create a new annotation object, use constructors of classes such as or . - + is an abstract class and cannot be created directly. To create a new annotation object, use constructors of classes such as or . + ]]> @@ -98,11 +98,11 @@ Gets or sets the content alignment of an annotation. A enumeration value that represents the content alignment. - property to align text for , , and objects, and to align a non-scaled image inside an object. - + property to align text for , , and objects, and to align a non-scaled image inside an object. + ]]> @@ -136,11 +136,11 @@ Gets or sets the position alignment of an annotation to the anchor point. A enumeration value that represents the alignment of the annotation to the anchor point. - property, or by setting the and properties. Its and properties must be set to . - + property, or by setting the and properties. Its and properties must be set to . + ]]> @@ -186,17 +186,17 @@ Gets or sets the data point to which an annotation is anchored. A object to which an annotation is anchored. - and properties are set to . The property can be used to change the annotation's automatic position alignment to the anchor point. The and properties can be used to add extra spacing. - - When you use this property, make sure the and properties are set to , as they have precedence. - - Set this value to `null` to disable annotation anchoring to a data point. - + and properties are set to . The property can be used to change the annotation's automatic position alignment to the anchor point. The and properties can be used to add extra spacing. + + When you use this property, make sure the and properties are set to , as they have precedence. + + Set this value to `null` to disable annotation anchoring to a data point. + ]]> @@ -273,11 +273,11 @@ Gets or sets the offset from the anchor point for the X position of an annotation. A value that represents the offset of the X position from the anchor point. - or the property, and its property must be set to . - + or the property, and its property must be set to . + ]]> @@ -315,11 +315,11 @@ Gets or sets the offset from the anchor point for the Y position of an annotation. A value that represents the offset of the Y position from the anchor point. - or property, and its property must be set to . - + or property, and its property must be set to . + ]]> @@ -361,17 +361,17 @@ Gets or sets the X coordinate to which the annotation is anchored. A value that represents the X coordinate to which an annotation is anchored. - property value. - - To automatically position an annotation relative to an anchor point, make sure its property is set to . The property can be used to change the automatic position alignment of the annotation to the anchor point. The and properties may be used to add extra spacing. - - This property has a higher priority than the property. - - Set this value to to disable annotation anchoring to the value. - + property value. + + To automatically position an annotation relative to an anchor point, make sure its property is set to . The property can be used to change the automatic position alignment of the annotation to the anchor point. The and properties may be used to add extra spacing. + + This property has a higher priority than the property. + + Set this value to to disable annotation anchoring to the value. + ]]> @@ -413,17 +413,17 @@ Gets or sets the Y coordinate to which the annotation is anchored. A value that represents the Y coordinate an annotation is anchored to. - property value. - - To automatically position an annotation relative to an anchor point make sure its property is set to . The property can be used to change the automatic position alignment of the annotation to the anchor point. The and properties may be used to add extra spacing. - - This property has a higher priority than the property. - - Set this value to to disable annotation anchoring to the value. - + property value. + + To automatically position an annotation relative to an anchor point make sure its property is set to . The property can be used to change the automatic position alignment of the annotation to the anchor point. The and properties may be used to add extra spacing. + + This property has a higher priority than the property. + + Set this value to to disable annotation anchoring to the value. + ]]> @@ -500,11 +500,11 @@ Gets or sets the type name of an annotation. The type name of an annotation. - @@ -550,13 +550,13 @@ Gets or sets the X axis to which an annotation is attached. An object to which the annotation is attached. - property is set to `false`. - - Set this value to `null` to disable attachment to the axis. - + property is set to `false`. + + Set this value to `null` to disable attachment to the axis. + ]]> @@ -641,13 +641,13 @@ Gets or sets the Y axis which an annotation is attached to. An object which this annotation is attached to. - property is set to `false`. - - Set to `null` to disable annotation attachment to an axis. - + property is set to `false`. + + Set to `null` to disable annotation attachment to an axis. + ]]> @@ -744,11 +744,11 @@ Gets or sets the color of an annotation background. A value used to draw an annotation background. - @@ -794,13 +794,13 @@ Gets or sets the gradient style of an annotation background. A value used to draw an annotation background. - and . - - This property does not apply to line-type annotations, image annotations and text annotations. - + and . + + This property does not apply to line-type annotations, image annotations and text annotations. + ]]> @@ -846,13 +846,13 @@ Gets or sets the hatching style of an annotation background. A value used to draw the background. - and . - - This property does not apply to line-type annotations, image annotations and text annotations. - + and . + + This property does not apply to line-type annotations, image annotations and text annotations. + ]]> @@ -902,13 +902,13 @@ Gets or sets the secondary color of an annotation background. A value used to draw an annotation background with hatching or gradient fill. - when or is used. - - This property does not apply to line-type annotations, image annotations and text annotations. - + when or is used. + + This property does not apply to line-type annotations, image annotations and text annotations. + ]]> @@ -954,11 +954,11 @@ Gets or sets the bottom boundary of an annotation position. A value that represents the position of the bottom boundary of an annotation. - property, or set the annotation axes using the and properties and set the property to `false`. - + property, or set the annotation axes using the and properties and set the property to `false`. + ]]> @@ -1017,13 +1017,13 @@ Gets or sets the name of the chart area to which an annotation is clipped. A that represents the name of an existing chart area. - . - + . + ]]> @@ -1164,17 +1164,17 @@ Gets or sets the height of an annotation. A value that represents the height of an annotation. - property, or set the annotation axes using the or properties and set the property to `false`. - - Set the height to to achieve automatic size calculation for annotations with text. The size will automatically be calculated based on the annotation text and font size. - + property, or set the annotation axes using the or properties and set the property to `false`. + + Set the height to to achieve automatic size calculation for annotations with text. The size will automatically be calculated based on the annotation text and font size. + ]]> @@ -1245,13 +1245,13 @@ if the and of an annotation are always expressed in relative chart coordinates; otherwise, . - property to `false`. Then anchor the annotation to a data point or set the and properties. - + property to `false`. Then anchor the annotation to a data point or set the and properties. + ]]> @@ -1397,13 +1397,13 @@ Gets or sets the map area attributes of an annotation. A value that represents the map area attributes of an annotation. - property. - + property. + ]]> @@ -1496,16 +1496,16 @@ Resizes an annotation according to its content size. - , , and objects only. - + , , and objects only. + > [!NOTE] -> This method requires that the annotation be added to the to function correctly. - +> This method requires that the annotation be added to the to function correctly. + ]]> @@ -1551,11 +1551,11 @@ Gets or sets the right boundary position of an annotation. A value that represents the position of the right boundary of an annotation. - property, or set the annotation axes using the or properties and set the property to `false`. - + property, or set the annotation axes using the or properties and set the property to `false`. + ]]> @@ -1644,11 +1644,11 @@ The second anchor . Anchors an annotation to two data points. - @@ -1760,14 +1760,14 @@ Gets or sets the smart label style of an annotation. An object that represents an annotation's smart labels style properties. - [!NOTE] -> Data point labels must also have smart labels enabled. - +> Data point labels must also have smart labels enabled. + ]]> @@ -1839,11 +1839,11 @@ Gets or sets the tooltip text for an annotation. A value that represents the tooltip text for an annotation. - property. - + property. + ]]> @@ -1884,11 +1884,11 @@ Gets or sets the URL of an annotation. A value that represents the URL of an annotation. - property. - + property. + ]]> @@ -1966,11 +1966,11 @@ Gets or sets the width, in pixels, of an annotation. A value that is a percentage of the chart width. - property description. - + property description. + ]]> @@ -2012,15 +2012,15 @@ Gets or sets the X coordinate of an annotation. A value that represents the X coordinate position of the annotation. - property, or set the annotation axes using the and properties. - - Set the position to to automatically calculate position when the annotation has been anchored using the property or the and properties. - + property, or set the annotation axes using the and properties. + + Set the position to to automatically calculate position when the annotation has been anchored using the property or the and properties. + ]]> @@ -2062,15 +2062,15 @@ Gets or sets the Y coordinate of the annotation. A value that represents the Y coordinate position of the annotation. - property, or set the annotation axes using the or properties. - - Set the position to to automatically calculate the position when the annotation has been anchored using the property or the and properties. - + property, or set the annotation axes using the or properties. + + Set the position to to automatically calculate the position when the annotation has been anchored using the property or the and properties. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/Axis.xml b/xml/System.Web.UI.DataVisualization.Charting/Axis.xml index c0a3e84625e..8b7fb34f7a4 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/Axis.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/Axis.xml @@ -26,35 +26,35 @@ Provides methods and properties that manage axes in the control. - control, and is exposed by the , , and properties of objects. - - For all charts - except bar, stacked bar, pie and doughnut - the primary and secondary axes are as follows: - -|Axis Type|Description| -|---------------|-----------------| -|Primary X-Axis|Bottom horizontal axis.| -|Secondary X-Axis|Top horizontal axis.| -|Primary Y-Axis|Left vertical axis.| -|Secondary Y-Axis|Right vertical axis.| - - Bar and stacked-bar charts have their axes rotated 90 degrees clockwise, so the primary X axis for these two chart types is the left-vertical axis. - - **Note** There can be only one set of axes - two vertical and two horizontal - for each object. - - The class also contains several methods that can be used to convert axis values to absolute pixel coordinates, which are useful for 2D custom drawing, or to relative coordinates, which are useful for 3D custom drawing. Absolute and relative coordinates can also be converted to axis values. - - The following are the most important axis elements exposed by the class: - -|Axis Element|Description| -|------------------|-----------------| -|Axis Labels|The labels of an axis, and their associated properties.| -|Grid Lines|The major and minor grid lines of an axis.| -|Tick Marks|The major and minor tick marks of an axis.| -|Strip Lines|Strip lines.| - + control, and is exposed by the , , and properties of objects. + + For all charts - except bar, stacked bar, pie and doughnut - the primary and secondary axes are as follows: + +|Axis Type|Description| +|---------------|-----------------| +|Primary X-Axis|Bottom horizontal axis.| +|Secondary X-Axis|Top horizontal axis.| +|Primary Y-Axis|Left vertical axis.| +|Secondary Y-Axis|Right vertical axis.| + + Bar and stacked-bar charts have their axes rotated 90 degrees clockwise, so the primary X axis for these two chart types is the left-vertical axis. + + **Note** There can be only one set of axes - two vertical and two horizontal - for each object. + + The class also contains several methods that can be used to convert axis values to absolute pixel coordinates, which are useful for 2D custom drawing, or to relative coordinates, which are useful for 3D custom drawing. Absolute and relative coordinates can also be converted to axis values. + + The following are the most important axis elements exposed by the class: + +|Axis Element|Description| +|------------------|-----------------| +|Axis Labels|The labels of an axis, and their associated properties.| +|Grid Lines|The major and minor grid lines of an axis.| +|Tick Marks|The major and minor tick marks of an axis.| +|Strip Lines|Strip lines.| + ]]> @@ -239,23 +239,23 @@ Gets or sets the location at which an axis is crossed by its associated axis. A value that represents where an axis is crossed by its associated axis. The default value is . - property of the primary X-axis determines where the primary Y-axis will cross it. - - Four modes can be used for the property of an axis: - -- "Auto", which means that the crossing value will be set to the minimum or maximum value for the relevant axis. If the axis is primary, the value will be its minimum value, if the axis is secondary it will its maximum value. To set to "Auto" at run time, use a value. - -- "Minimum", which means the crossing value of the axis will be its minimum value. To set to "Minimum" at run-time use a value. - -- "Maximum", which means the crossing value of the axis will be its maximum value. To set to "Maximum" at run-time use a value. - -- A specified `double` value that is between the minimum and maximum values for the relevant axis. If the crossing value is less then minimum value, or the crossing value is greater than maximum value, an exception will be thrown. - - When a non-default crossing value is used, the labels and tick marks of the axis may or may not follow the crossing axis, depending on the property setting. By default they will move with the crossing axis. - + property of the primary X-axis determines where the primary Y-axis will cross it. + + Four modes can be used for the property of an axis: + +- "Auto", which means that the crossing value will be set to the minimum or maximum value for the relevant axis. If the axis is primary, the value will be its minimum value, if the axis is secondary it will its maximum value. To set to "Auto" at run time, use a value. + +- "Minimum", which means the crossing value of the axis will be its minimum value. To set to "Minimum" at run-time use a value. + +- "Maximum", which means the crossing value of the axis will be its maximum value. To set to "Maximum" at run-time use a value. + +- A specified `double` value that is between the minimum and maximum values for the relevant axis. If the crossing value is less then minimum value, or the crossing value is greater than maximum value, an exception will be thrown. + + When a non-default crossing value is used, the labels and tick marks of the axis may or may not follow the crossing axis, depending on the property setting. By default they will move with the crossing axis. + ]]> @@ -301,15 +301,15 @@ Gets a object used to store objects. A object used to store objects. - objects enables the developer to arbitrarily set the text for axis labels. - - Only custom labels can be used in the second row of labels. Also, if a custom label is used in the first label row, then all labels in this first row must be custom labels. - - Labels can also be set from the data points, or generated automatically from the axis scale. - + objects enables the developer to arbitrarily set the text for axis labels. + + Only custom labels can be used in the second row of labels. Also, if a custom label is used in the first label row, then all labels in this first row must be custom labels. + + Labels can also be set from the data points, or generated automatically from the axis scale. + ]]> @@ -376,18 +376,18 @@ Gets or sets a value that indicates whether an axis is enabled. An enumeration value that indicates whether an axis is enabled. The default value is . - . - - If a value of is used, an axis may or may not be displayed, depending on whether it is being used to plot a . The axes that are used to plot data are determined by the and property settings. - + . + + If a value of is used, an axis may or may not be displayed, depending on whether it is being used to plot a . The axes that are used to plot data are determined by the and property settings. + > [!NOTE] -> If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to , but the axis is not being used to plot data; the grid line of an adjacent axis will be drawn instead. - +> If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to , but the axis is not being used to plot data; the grid line of an adjacent axis will be drawn instead. + ]]> @@ -470,13 +470,13 @@ Gets or sets the color of interlaced strip lines. A object that represents the color of interlaced strip lines. - property. - - To specify the border color of the interlaced strip lines, you must display the strips using the collection property instead of the property. - + property. + + To specify the border color of the interlaced strip lines, you must display the strips using the collection property instead of the property. + ]]> @@ -526,19 +526,19 @@ Gets or sets the interval of an axis. A value that represents the interval of an axis. The default value is "Auto", which is represented by a value of zero (0). - , which signifies that it is not set. - - The `Interval` property of a major tick mark, grid line or label of the axis has priority over the property setting of the object. - - A value of zero represents an "Auto" value. This property cannot be set to . If you assign this property a value of , a value of zero will be used instead. - - **Note** The minor grid lines and tick marks of an axis never use this property for their interval. - - The interval type of the axis is determined by the property. - + , which signifies that it is not set. + + The `Interval` property of a major tick mark, grid line or label of the axis has priority over the property setting of the object. + + A value of zero represents an "Auto" value. This property cannot be set to . If you assign this property a value of , a value of zero will be used instead. + + **Note** The minor grid lines and tick marks of an axis never use this property for their interval. + + The interval type of the axis is determined by the property. + ]]> @@ -572,11 +572,11 @@ Gets or sets a flag that determines if a fixed number of intervals is used on the axis, or if the number of intervals depends on the axis size. An enumeration value that determines how the number of intervals is used on the axis. The default value is . - property is set to "Auto", the property determines how many intervals should be calculated. If your chart is resized or redrawn often, you can set the property to , in which case the chart will dynamically calculate axis intervals. This is especially useful in situations where the chart intervals are displayed differently, depending on their data. - + property is set to "Auto", the property determines how many intervals should be calculated. If your chart is resized or redrawn often, you can set the property to , in which case the chart will dynamically calculate axis intervals. This is especially useful in situations where the chart intervals are displayed differently, depending on their data. + ]]> @@ -626,19 +626,19 @@ Gets or sets the interval offset of an axis. A value that represents the interval offset of an axis. The default value is "Auto", which is represented by a value of zero (0). - property determines the interval offset of an axis. This value is used as the interval offset of an axis' labels and the major tick marks and grid lines associated with the axis if the `IntervalOffset` property value of the labels, tick marks, or grid lines is not set, which is represented by a value of . - - The property of the tick marks, labels and grid lines of an axis has priority over the property setting of the object. - - A value of zero represents an "Auto" value. Also, cannot be set to not set (that is, a ). If you assign , a value of "Auto" - that is, a value of zero - will be used instead. - - **Note** The minor grid lines and tick marks of an axis never use this property for their interval offset. - - The interval offset type of the axis is determined by the property. - + property determines the interval offset of an axis. This value is used as the interval offset of an axis' labels and the major tick marks and grid lines associated with the axis if the `IntervalOffset` property value of the labels, tick marks, or grid lines is not set, which is represented by a value of . + + The property of the tick marks, labels and grid lines of an axis has priority over the property setting of the object. + + A value of zero represents an "Auto" value. Also, cannot be set to not set (that is, a ). If you assign , a value of "Auto" - that is, a value of zero - will be used instead. + + **Note** The minor grid lines and tick marks of an axis never use this property for their interval offset. + + The interval offset type of the axis is determined by the property. + ]]> @@ -684,18 +684,18 @@ Gets or sets the interval offset type of an axis. A that represents the interval offset type of an axis. The default value is . - . - - Setting this property to will result in a value of being used (only the axis elements such as major grid lines, etc. can be set to ). - + . + + Setting this property to will result in a value of being used (only the axis elements such as major grid lines, etc. can be set to ). + > [!NOTE] -> The minor grid lines and tick marks of an axis never use this property for their interval offset type. - - The interval of the axis is determined by the property. - +> The minor grid lines and tick marks of an axis never use this property for their interval offset type. + + The interval of the axis is determined by the property. + ]]> @@ -741,17 +741,17 @@ Gets or sets the interval type of an axis. A that represents the interval type of an axis. The default value is . - . - - Setting this property to will result in a value of being used. Only the axis elements, such as grid lines, can be set to . - - **Note** The minor grid lines and tick marks of an axis never use this property for their interval type. - - The interval of the axis is determined by the property. - + . + + Setting this property to will result in a value of being used. Only the axis elements, such as grid lines, can be set to . + + **Note** The minor grid lines and tick marks of an axis never use this property for their interval type. + + The interval of the axis is determined by the property. + ]]> @@ -1018,11 +1018,11 @@ if the axis is reversed; otherwise, . - @@ -1116,11 +1116,11 @@ Gets or sets the maximum font size that can be used by the label auto-fitting algorithm. An value that specifies the maximum font size that can be used by the label auto-fitting algorithm. - @@ -1221,11 +1221,11 @@ Gets or sets the allowable label changes that can be made to enable the label to be fit along an axis. A enumeration value that specifies the allowable label changes that can be made to enable the label to be fit along an axis. - property must be set to `true`. - + property must be set to `true`. + ]]> @@ -1271,15 +1271,15 @@ Gets or sets the properties of an axis. A object, which defines the axis label style. - property is `true`, the font size, font angle and the use of offset labels are determined automatically. If you set any one of the LabelStyle.Font.Size, or properties, the property will be set to `false`. - - Note that if a format that consists of a date without a time is used for labels, and the data point values that are used specify times, the times will affect the positions of the data points, even though they are not displayed due to the label formatting. - + property is `true`, the font size, font angle and the use of offset labels are determined automatically. If you set any one of the LabelStyle.Font.Size, or properties, the property will be set to `false`. + + Note that if a format that consists of a date without a time is used for labels, and the data point values that are used specify times, the times will affect the positions of the data points, even though they are not displayed due to the label formatting. + ]]> @@ -1337,13 +1337,13 @@ Gets or sets the line color of an axis. A object that represents the line color used to draw the axis. The default is . - property to specify the line color of an axis. - - **Note** If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to . In this case, the axis is not being used to plot data, and the grid line of an adjacent axis will be drawn instead. - + property to specify the line color of an axis. + + **Note** If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to . In this case, the axis is not being used to plot data, and the grid line of an adjacent axis will be drawn instead. + ]]> @@ -1389,13 +1389,13 @@ Gets or sets the line style of an axis. A enumeration value that represents the line style of an axis. - property determines the line style used for an axis. The line can be solid, dotted, and so forth. - - **Note** If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to . In this case, the axis is not being used to plot data, and the grid line of an adjacent axis will be drawn instead. - + property determines the line style used for an axis. The line can be solid, dotted, and so forth. + + **Note** If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to . In this case, the axis is not being used to plot data, and the grid line of an adjacent axis will be drawn instead. + ]]> @@ -1441,13 +1441,13 @@ Gets or sets the line width of an axis, in pixels. An value that represents the width of an axis line. The default value is one (1) pixel. - property gets or sets the width of an axis line, in pixels. If the width is set to zero (0), the line will not be displayed. - - **Note** If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to . In this case, the axis is not being used to plot data, and the grid line of an adjacent axis will be drawn instead. - + property gets or sets the width of an axis line, in pixels. If the width is set to zero (0), the line will not be displayed. + + **Note** If an axis is not enabled but an adjacent axis is using grid lines, one of those grid lines will be displayed in place of the axis that is not enabled. The same situation will occur if the property of an axis is set to . In this case, the axis is not being used to plot data, and the grid line of an adjacent axis will be drawn instead. + ]]> @@ -1493,13 +1493,13 @@ Gets or sets a value for the logarithm base for the logarithmic axis. A value that represents the logarithm base value for the logarithmic axis. The default value is base 10. - property is set to `true`. - - Note that this property is only applicable to value axes, which are used to plot data. Setting this property for a categorical axis will result in an exception being thrown. - + property is set to `true`. + + Note that this property is only applicable to value axes, which are used to plot data. Setting this property for a categorical axis will result in an exception being thrown. + ]]> @@ -1545,13 +1545,13 @@ Gets or sets a object used to set the major grid line properties for an axis. A object used to get or set the major grid properties of an axis. - @@ -1597,13 +1597,13 @@ Gets or sets a object used to set the major tick mark properties of an axis. A object used to set the properties of a major tick mark of an axis. - @@ -1652,13 +1652,13 @@ Gets or sets the map area attributes of an axis. A value that represents the map area attributes of an axis. - property. - - A map area will be created with the attribute string appended to the \ tag that corresponds to the object for which this property is set. - + property. + + A map area will be created with the attribute string appended to the \ tag that corresponds to the object for which this property is set. + ]]> @@ -1704,11 +1704,11 @@ Gets or sets the maximum value of an axis. A value that represents the maximum value of an axis. The default value is . - method. The value must be greater than the value. - + method. The value must be greater than the value. + ]]> @@ -1785,13 +1785,13 @@ Gets or sets the minimum value of an axis. A value that represents the minimum value of an axis. The default value is . - control will assume the first data point occurs at zero. Also, if the value is explicitly set, the property will be ignored. The value must be less than the value. - - To automatically round the maximum and minimum axis values. call the method. - + control will assume the first data point occurs at zero. Also, if the value is explicitly set, the property will be ignored. The value must be less than the value. + + To automatically round the maximum and minimum axis values. call the method. + ]]> @@ -1837,13 +1837,13 @@ Gets or sets a object used to specify the minor grid lines attributes of an axis. A object used to get or set the attributes of the minor grid lines of an axis. - @@ -1889,13 +1889,13 @@ Gets or sets a object used to set the minor tick mark properties of an axis. A object used for the minor tick mark properties of an axis. - @@ -2056,11 +2056,11 @@ Automatically rounds axis values. - method to round the values of an axis. Note that the interval used for the axis will not be changed when this method is called. This method is only supported for the X and X2 axes. The Y and Y2 axes values are rounded by default. - + method to round the values of an axis. Note that the interval used for the axis will not be changed when this method is called. This method is only supported for the X and X2 axes. The Y and Y2 axes values are rounded by default. + ]]> @@ -2184,13 +2184,13 @@ Gets a collection object, which stores all objects for an axis. A collection object, which stores all objects for an axis. - object, and are always drawn across the entire \area. - - These strip lines are not related to the grid lines. - + object, and are always drawn across the entire \area. + + These strip lines are not related to the grid lines. + ]]> @@ -2279,15 +2279,15 @@ Gets or sets the title of the axis. A value that represents the title of the axis. - property. - - You can set the color of the title using the property. - + property. + + You can set the color of the title using the property. + ]]> @@ -2333,15 +2333,15 @@ Gets or sets the alignment of an axis title. A enumeration value that specifies the alignment of an axis title. - , , and . A value of equates to an alignment to the top or the right, depending on the orientation of the axis or strip line. In the same manner, a value of equates to an alignment to the bottom or the right. - - If you want more control over the positioning of an axis title, you must perform custom drawing using the or event. - - You can further align and position the titles of objects by using their property. - + , , and . A value of equates to an alignment to the top or the right, depending on the orientation of the axis or strip line. In the same manner, a value of equates to an alignment to the bottom or the right. + + If you want more control over the positioning of an axis title, you must perform custom drawing using the or event. + + You can further align and position the titles of objects by using their property. + ]]> @@ -2387,13 +2387,13 @@ Gets or sets the title font properties of an axis. A object used for the font properties of a title. - object must be created. Any attempt to change the properties of the current object at run time will result in a compilation error. - + object must be created. Any attempt to change the properties of the current object at run time will result in a compilation error. + ]]> @@ -2451,13 +2451,13 @@ Gets or sets the text color of an axis title. A that specifies the text color of an axis title. The default color is . - object title. - - You can use any valid ARGB (alpha, red, green, blue) color. - + object title. + + You can use any valid ARGB (alpha, red, green, blue) color. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/AxisScaleBreakStyle.xml b/xml/System.Web.UI.DataVisualization.Charting/AxisScaleBreakStyle.xml index 809f8b81d85..9f70cdfd7b2 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/AxisScaleBreakStyle.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/AxisScaleBreakStyle.xml @@ -22,108 +22,108 @@ Represents a scale break on the Y-axis of the chart. - property to `true`. To change the amount of vertical space of the scale break, you can specify a value. This is calculated as a percentage of the Y-axis scale. - - You must have sufficient separation between ranges of data points in a single series to draw a scale break. By default, a scale break can be added only if there is a separation between the data ranges of at least 25% of the chart. If you enable a scale break but it does not appear, even though there is sufficient distance between the data ranges, you can set the property to a value less than 25. - - Charts support up to five scale breaks per chart; however, the chart can become unreadable if you display more than one scale break. If you have more than two data ranges, consider using a different method for displaying this data. Use the property to reduce the number of scale breaks that can be displayed on the chart. - - When a scale break is used, the Y-axis labels may become offset. To disable the label offset, set the property to `false`. - - Scale breaks are not supported under any of the following conditions: - -- Pie, doughnut, funnel, pyramid, radial or any stacked chart types are used. - -- Custom intervals for labels, tick marks or grid lines are enabled. - -- The minimum or maximum value for the axis is set. - -- Custom labels are used. - -- A logarithmic Y-axis is specified. - -- Axis views on the Y-axis, which include scrolling and zooming, are used. - -- 3-D charts are used. - - - -## Examples - The following code example demonstrates how to enable and customize a scale break after the control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + property to `true`. To change the amount of vertical space of the scale break, you can specify a value. This is calculated as a percentage of the Y-axis scale. + + You must have sufficient separation between ranges of data points in a single series to draw a scale break. By default, a scale break can be added only if there is a separation between the data ranges of at least 25% of the chart. If you enable a scale break but it does not appear, even though there is sufficient distance between the data ranges, you can set the property to a value less than 25. + + Charts support up to five scale breaks per chart; however, the chart can become unreadable if you display more than one scale break. If you have more than two data ranges, consider using a different method for displaying this data. Use the property to reduce the number of scale breaks that can be displayed on the chart. + + When a scale break is used, the Y-axis labels may become offset. To disable the label offset, set the property to `false`. + + Scale breaks are not supported under any of the following conditions: + +- Pie, doughnut, funnel, pyramid, radial or any stacked chart types are used. + +- Custom intervals for labels, tick marks or grid lines are enabled. + +- The minimum or maximum value for the axis is set. + +- Custom labels are used. + +- A logarithmic Y-axis is specified. + +- Axis views on the Y-axis, which include scrolling and zooming, are used. + +- 3-D charts are used. + + + +## Examples + The following code example demonstrates how to enable and customize a scale break after the control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -174,79 +174,79 @@ private void AddScaleBreaks() Gets or sets the style of the break line that will be used to draw the scale break. A enumeration value. - control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -280,84 +280,84 @@ private void AddScaleBreaks() Gets or sets the threshold of space on the chart at which scale breaks are drawn. An value that specifies the threshold of space on the chart at which scale breaks are drawn. - control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -395,79 +395,79 @@ private void AddScaleBreaks() Gets or sets a flag that indicates whether scale breaks are enabled. A value that specifies whether scale breaks are enabled. - control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -513,79 +513,79 @@ private void AddScaleBreaks() Gets or sets the color of the scale break line. A value that represents the color of the scale break line. - control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -619,79 +619,79 @@ private void AddScaleBreaks() Gets or sets the style of the scale break line. A value that represents the style of the scale break line. - control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -725,79 +725,79 @@ private void AddScaleBreaks() Gets or sets the width of the scale break line. An value that represents the width of the scale break line. - control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -831,84 +831,84 @@ private void AddScaleBreaks() Gets or sets the maximum number of scale breaks to be displayed on the chart. An value that represents the maximum number of scale breaks to be displayed on the chart. - is capable of displaying up to five scale breaks. - - - -## Examples - The following code example demonstrates how to enable and customize a scale break after the control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + is capable of displaying up to five scale breaks. + + + +## Examples + The following code example demonstrates how to enable and customize a scale break after the control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -942,81 +942,81 @@ private void AddScaleBreaks() Gets or sets the spacing gap between the lines of the scale break. The spacing gap is represented as a percentage of the Y-axis. A value that represents the spacing gap between the lines of the scale break. - control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -' Add data to the chart -Private Sub AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = AutoBool.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -// Add data to the chart -private void AddChartData() -{ - chart1.Series["Default"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Default"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Default"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Default"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.StartFromZero = AutoBool.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +' Add data to the chart +Private Sub AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = AutoBool.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +// Add data to the chart +private void AddChartData() +{ + chart1.Series["Default"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Default"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Default"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Default"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.StartFromZero = AutoBool.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> @@ -1050,84 +1050,84 @@ private void AddScaleBreaks() Gets or sets a enumeration value that indicates whether to start the scale break from zero. A enumeration value that indicates whether to start the scale break from zero. - property is set to , the chart will automatically calculate whether to start the Y-axis scale minimum from the lowest value in the series or from zero. - - - -## Examples - The following code example demonstrates how to enable and customize a scale break after the control has been added to the design surface. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function AddChartData() - - chart1.Series("Default").Points.Add(New DataPoint(1, 2)) - chart1.Series("Default").Points.Add(New DataPoint(2, 4)) - chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) - chart1.Series("Default").Points.Add(New DataPoint(4, 3)) - -End Sub - -Private Function AddScaleBreaks() - - ' Enable scale breaks. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True - - ' Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 - - ' Set the line width of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 - - ' Set the color of the scale break. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red - - ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto - - ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; - -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void AddChartData() -{ - chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); - chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); - chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); - chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); -} - -private void AddScaleBreaks() -{ - // Enable scale breaks. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; - - // Show scale break if more than 25% of the chart is empty space. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; - - // Set the line width of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; - - // Set the color of the scale break. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; - - // If all data points are significantly far from zero, the chart will calculate the scale minimum value. - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; - - // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). - chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; -} -``` - + property is set to , the chart will automatically calculate whether to start the Y-axis scale minimum from the lowest value in the series or from zero. + + + +## Examples + The following code example demonstrates how to enable and customize a scale break after the control has been added to the design surface. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function AddChartData() + + chart1.Series("Default").Points.Add(New DataPoint(1, 2)) + chart1.Series("Default").Points.Add(New DataPoint(2, 4)) + chart1.Series("Default").Points.Add(New DataPoint(3, 400000)) + chart1.Series("Default").Points.Add(New DataPoint(4, 3)) + +End Sub + +Private Function AddScaleBreaks() + + ' Enable scale breaks. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.Enabled = True + + ' Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25 + + ' Set the line width of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineWidth = 2 + + ' Set the color of the scale break. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.LineColor = Color.Red + + ' If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas("Default").AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto + + ' Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["Default"].AxisY.ScaleBreakStyle.Spacing = 2; + +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void AddChartData() +{ + chart1.Series["Series1"].Points.Add(new DataPoint(1, 2)); + chart1.Series["Series1"].Points.Add(new DataPoint(2, 4)); + chart1.Series["Series1"].Points.Add(new DataPoint(3, 400000)); + chart1.Series["Series1"].Points.Add(new DataPoint(4, 3)); +} + +private void AddScaleBreaks() +{ + // Enable scale breaks. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Enabled = true; + + // Show scale break if more than 25% of the chart is empty space. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.CollapsibleSpaceThreshold = 25; + + // Set the line width of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineWidth = 2; + + // Set the color of the scale break. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.LineColor = Color.Red; + + // If all data points are significantly far from zero, the chart will calculate the scale minimum value. + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.StartFromZero = StartFromZero.Auto; + + // Set the spacing gap between the lines of the scale break (as a percentage of the Y-axis). + chart1.ChartAreas["ChartArea1"].AxisY.ScaleBreakStyle.Spacing = 2; +} +``` + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/Chart.xml b/xml/System.Web.UI.DataVisualization.Charting/Chart.xml index 91ccce65971..8863464b004 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/Chart.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/Chart.xml @@ -46,13 +46,13 @@ Serves as the root class of the control. - class are the and properties, both of which are collection properties. The collection property stores objects, which are used to store data that is to be displayed, along with attributes of that data. The collection property stores objects, which are primarily used to draw one or more charts using one set of axes. - + class are the and properties, both of which are collection properties. The collection property stores objects, which are used to store data that is to be displayed, along with attributes of that data. The collection property stores objects, which are primarily used to draw one or more charts using one set of axes. + ]]> @@ -72,15 +72,15 @@ Initializes a new instance of the class. - class at run time. - - However, for simplicity, it is recommended that you create a instance at design time. - - This is the root object of the control. - + class at run time. + + However, for simplicity, it is recommended that you create a instance at design time. + + This is the root object of the control. + ]]> @@ -137,25 +137,25 @@ A comma-separated list of series that will have their data points aligned to the X axis using the data point axis labels. Aligns data points from different series along the X axis using their axis labels. The specified series in the chart are aligned using an ascending sort order. - of 0, or the property is `true`. - -- All data points have non-empty axis labels, which are unique to their . If they are not unique, an exception will be thrown. - - This situation is very common when data-binding results in the creation of multiple series, and `string` values are used for X-axis values. - - Two issues arise when multiple, indexed series are plotted, and the X-values are set using `string` values: - -- It cannot be guaranteed that data points from different series with the same string X-values will be plotted at the same index along the X axis. - -- Only the axis label for the data points in the first series will be displayed, even though data points from other series with the same index have axis labels too. - - By default, points are plotted in the order in which they are stored in their series. To specify a sort order, use an `AlignDataPointsByAxisLabel` method overload that has a `sortingOrder` parameter. - + of 0, or the property is `true`. + +- All data points have non-empty axis labels, which are unique to their . If they are not unique, an exception will be thrown. + + This situation is very common when data-binding results in the creation of multiple series, and `string` values are used for X-axis values. + + Two issues arise when multiple, indexed series are plotted, and the X-values are set using `string` values: + +- It cannot be guaranteed that data points from different series with the same string X-values will be plotted at the same index along the X axis. + +- Only the axis label for the data points in the first series will be displayed, even though data points from other series with the same index have axis labels too. + + By default, points are plotted in the order in which they are stored in their series. To specify a sort order, use an `AlignDataPointsByAxisLabel` method overload that has a `sortingOrder` parameter. + ]]> @@ -208,25 +208,25 @@ A enumeration value that determines if ascending or descending sort order is used on axis labels, which in turn determines the order by which points that previously occupied the same axis space are displayed. Aligns data points using their axis labels. - of 0, or the property is `true`. - -- All data points have non-empty axis labels, which are unique to their . If they are not unique, an exception will be thrown. - - This situation is very common when data-binding results in the creation of multiple series, and `string` values are used for X-axis values. - - Two issues arise when multiple, indexed series are plotted, and the X-values are set using `string` values: - -- It cannot be guaranteed that data points from different series with the same string X-values will be plotted at the same index along the X axis. - -- Only the axis label for the data points in the first series will be displayed, even though data points from other series with the same index have axis labels too. - - By default, points are plotted in the order in which they are stored in their series. To specify a sort order, use an `AlignDataPointsByAxisLabel` method overload that has a `sortingOrder` parameter. - + of 0, or the property is `true`. + +- All data points have non-empty axis labels, which are unique to their . If they are not unique, an exception will be thrown. + + This situation is very common when data-binding results in the creation of multiple series, and `string` values are used for X-axis values. + + Two issues arise when multiple, indexed series are plotted, and the X-values are set using `string` values: + +- It cannot be guaranteed that data points from different series with the same string X-values will be plotted at the same index along the X axis. + +- Only the axis label for the data points in the first series will be displayed, even though data points from other series with the same index have axis labels too. + + By default, points are plotted in the order in which they are stored in their series. To specify a sort order, use an `AlignDataPointsByAxisLabel` method overload that has a `sortingOrder` parameter. + ]]> @@ -307,11 +307,11 @@ Gets or sets the object that is used to store chart annotations. An object that is used to store chart annotations. - @@ -357,15 +357,15 @@ Gets or sets a value that determines whether anti-aliasing is used when text and graphics are drawn. An enumeration value. - @@ -389,13 +389,13 @@ Sets the automatically assigned series and data point colors, to allow programmatic access at run time. - colors are automatically assigned at run time, there is no way to know what the colors will be prior to the time when the chart rendered; the `Color` property of an automatically assigned value will return at this time. - - If you call the method, the colors for the series and the data points will be set, which allows for programmatic access. - + colors are automatically assigned at run time, there is no way to know what the colors will be prior to the time when the chart rendered; the `Color` property of an automatically assigned value will return at this time. + + If you call the method, the colors for the series and the data points will be set, which allows for programmatic access. + ]]> @@ -445,53 +445,53 @@ Gets or sets the background color of the object. A value that represents the background color of the chart object. The default color is . - object, the alpha component cannot be set to a value other than 255. This also means that, for the object only, a value cannot be used. - - The value will be the first color used if you are using gradient colors for the background. - - The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the title. As a result, the background will be transparent. - - The following table represents the types that support gradients: - -|Series Types|2D|3D| -|------------------|--------|--------| -|Bar|X|-| -|Box Plot|X|X| -|Bubble|-|-| -|Candle Stick|X|X| -|Column|X|X| -|Doughnut|X|-| -|Error Bar|-|-| -|Fast Line|-|-| -|Fast Point|-|-| -|Funnel|X|X| -|Gantt|X|-| -|Kagi|-|-| -|Line|-|-| -|Pie|X|-| -|Point|-|-| -|Point and Figure|X|-| -|Polar|-|-| -|Pyramid|X|X| -|Radar|X|X| -|Range Column|X|-| -|Renko|X|-| -|Spline|-|-| -|Spline Area Area|X|-| -|Spline Range|X|-| -|Stacked Area|X|-| -|Stacked Area 100|X|-| -|Stacked Bar|X|-| -|Stacked Bar 100|X|-| -|Stacked Column|X|-| -|Stacked Column 100|X|-| -|Step Line|-|-| -|Stock|-|-| -|Three Line Break|X|-| - + object, the alpha component cannot be set to a value other than 255. This also means that, for the object only, a value cannot be used. + + The value will be the first color used if you are using gradient colors for the background. + + The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the title. As a result, the background will be transparent. + + The following table represents the types that support gradients: + +|Series Types|2D|3D| +|------------------|--------|--------| +|Bar|X|-| +|Box Plot|X|X| +|Bubble|-|-| +|Candle Stick|X|X| +|Column|X|X| +|Doughnut|X|-| +|Error Bar|-|-| +|Fast Line|-|-| +|Fast Point|-|-| +|Funnel|X|X| +|Gantt|X|-| +|Kagi|-|-| +|Line|-|-| +|Pie|X|-| +|Point|-|-| +|Point and Figure|X|-| +|Polar|-|-| +|Pyramid|X|X| +|Radar|X|X| +|Range Column|X|-| +|Renko|X|-| +|Spline|-|-| +|Spline Area Area|X|-| +|Spline Range|X|-| +|Stacked Area|X|-| +|Stacked Area 100|X|-| +|Stacked Bar|X|-| +|Stacked Bar 100|X|-| +|Stacked Column|X|-| +|Stacked Column 100|X|-| +|Step Line|-|-| +|Stock|-|-| +|Three Line Break|X|-| + ]]> @@ -537,21 +537,21 @@ Gets or sets the orientation for the background gradient of a control. Also determines whether a gradient is used. A enumeration. The default value is . - property to determine whether a control will display a gradient, and to determine the orientation of the gradient if one is used. - - For a listing of available patterns, refer to the enumeration. - - To use gradient colors: - - Set the primary color of the chart background with the property. - - Set the secondary color of the chart background with the property. - - Set this property to the desired gradient style. - + property to determine whether a control will display a gradient, and to determine the orientation of the gradient if one is used. + + For a listing of available patterns, refer to the enumeration. + + To use gradient colors: + + Set the primary color of the chart background with the property. + + Set the secondary color of the chart background with the property. + + Set this property to the desired gradient style. + ]]> @@ -597,15 +597,15 @@ Gets or sets the hatching style of the control. A enumeration. The default value is . - enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. - - For a listing of available hatching styles, refer to the enumeration. - - **Note** The color of hatching lines is determined by the property. - + enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. + + For a listing of available hatching styles, refer to the enumeration. + + **Note** The color of hatching lines is determined by the property. + ]]> @@ -655,19 +655,19 @@ Gets or sets the background image of the control. A value that represents the URL of an image file. The default value is an empty string. - legend, and can be an absolute or relative URL. - - To position the image, use the and properties. - - You can also specify one of the colors displayed by the image as "transparent", by setting the property. - - An image can originate from any valid graphics file supported by .NET Framework, including icons. - - Background images take precedence over other background properties such as gradient color. - + legend, and can be an absolute or relative URL. + + To position the image, use the and properties. + + You can also specify one of the colors displayed by the image as "transparent", by setting the property. + + An image can originate from any valid graphics file supported by .NET Framework, including icons. + + Background images take precedence over other background properties such as gradient color. + ]]> @@ -709,11 +709,11 @@ Gets or sets the background image alignment used for the drawing mode. A enumeration value. The default value is . - control; it is only applied when the property is set to . - + control; it is only applied when the property is set to . + ]]> @@ -806,17 +806,17 @@ Gets or sets the drawing mode for the background image of the control. A enumeration value. The default value is . - enumeration topic. - - If the property is set to , the location where the image is drawn is determined by the property setting. - + enumeration topic. + + If the property is set to , the location where the image is drawn is determined by the property setting. + ]]> @@ -866,23 +866,23 @@ Gets or sets the secondary color of the chart background. A value. The default value is . - property determines the secondary background color of many objects, and is used when gradient colors are being applied. - - You can set to any valid ARGB (alpha, red, green, blue) value. - - If hatching is used, the property determines the color of the hatching lines for the chart. - - To use gradient colors for the background of a chart: - -- Set the primary color with the property. - -- Set the secondary color with the property. - -- Set the property to the desired gradient style. - + property determines the secondary background color of many objects, and is used when gradient colors are being applied. + + You can set to any valid ARGB (alpha, red, green, blue) value. + + If hatching is used, the property determines the color of the hatching lines for the chart. + + To use gradient colors for the background of a chart: + +- Set the primary color with the property. + +- Set the secondary color with the property. + +- Set the property to the desired gradient style. + ]]> @@ -916,11 +916,11 @@ Gets or sets the color of the chart border. A value. - instead. - + instead. + ]]> @@ -970,13 +970,13 @@ Gets or sets the color of the entire chart image border. A that represents the color of the entire chart image border. The default value is . - property, the only difference being that the property is not available from the Properties Window at design time. - + property, the only difference being that the property is not available from the Properties Window at design time. + ]]> @@ -1014,15 +1014,15 @@ Gets or sets the style of the entire chart image border line. A enumeration value that determines the border line style of the chart image. - enumeration topic. - - This property is similar to the property, the only difference being that the property is not available from the Properties Window at design time. - + enumeration topic. + + This property is similar to the property, the only difference being that the property is not available from the Properties Window at design time. + ]]> @@ -1107,11 +1107,11 @@ Gets or sets a object, which provides border skin functionality for the control. A object which provides border skin functionality for the chart control. - @@ -1176,11 +1176,11 @@ Gets or sets the width of the chart border. An value that determines the border width, in pixels, of the chart. - instead. - + instead. + ]]> @@ -1261,13 +1261,13 @@ Gets a read-only object that is used to store objects. A object that is used to store objects. - object, which stores objects and also provides methods and properties used to manipulate the collection. - - objects are used to plot one or more charts. - + object, which stores objects and also provides methods and properties used to manipulate the collection. + + objects are used to plot one or more charts. + ]]> @@ -1325,13 +1325,13 @@ Gets or sets the amount of compression for the chart image. An that represents the amount of compression for the entire chart image. - property, but only for JPEG images, which are specified by the enumeration value. - + property, but only for JPEG images, which are specified by the enumeration value. + ]]> @@ -1369,11 +1369,11 @@ Gets the URL of the current image into which the control will be rendered. A value that represents the URL of the current chart image. - property is set to . - + property is set to . + ]]> @@ -1396,19 +1396,19 @@ Occurs just before the chart image is drawn. All chart data is available and all chart properties have been set. - and properties of the class. - - Use this event to modify or customize the chart image before it is drawn. - - When changes are made to a chart area, such as to the axis scale, the chart area properties must be recalculated in order to render the chart correctly. To recalculate the chart, call the method after making modifications. - + and properties of the class. + + Use this event to modify or customize the chart image before it is drawn. + + When changes are made to a chart area, such as to the axis scale, the chart area properties must be recalculated in order to render the chart correctly. To recalculate the chart, call the method after making modifications. + ]]> @@ -1431,15 +1431,15 @@ Occurs just before the chart legend is drawn. Use this event to customize the chart legend items. - event is primarily used to customize the legend just before it is drawn. Both default and custom legend items can be removed or modified, and custom items can also be added. In addition, the order of legend items can be changed. - - The chart image can also be modified before being drawn by using the sender argument. - - Note that a default legend item is an item that is created for either a data series or data point, but a custom legend item is not connected in any way to the chart data. - + event is primarily used to customize the legend just before it is drawn. Both default and custom legend items can be removed or modified, and custom items can also be added. In addition, the order of legend items can be changed. + + The chart image can also be modified before being drawn by using the sender argument. + + Note that a default legend item is an item that is created for either a data series or data point, but a custom legend item is not connected in any way to the chart data. + ]]> @@ -1462,18 +1462,18 @@ Occurs just before the chart image map is rendered. Use this event to customize the map areas items. - property of the class can be used to: - -- Delete or modify map items that have automatically been created for a chart object; any data point, series, legend item or strip line object that has a non-empty `Url`, `MapAreaAttributes` or `ToolTip` property will have an associated map area object. - -- Add custom map areas that have a user-defined shape and coordinates. - + property of the class can be used to: + +- Delete or modify map items that have automatically been created for a chart object; any data point, series, legend item or strip line object that has a non-empty `Url`, `MapAreaAttributes` or `ToolTip` property will have an associated map area object. + +- Add custom map areas that have a user-defined shape and coordinates. + > [!NOTE] -> The sender argument of type is read-only. - +> The sender argument of type is read-only. + ]]> @@ -1517,16 +1517,16 @@ The other data point properties that can be bound. Data binds a chart to the table, with one series created per unique value in a given column. - , or a object. Note that all collections that implement the interface can be used. - - Other data point properties besides X and Y-values can be bound. The format is: PointProperty=Field[{Format}] [,PointProperty= Field[{Format}]]. For example:"Tooltip=Price{C1},Href=WebSiteName". - -These data point properties include: + , or a object. Note that all collections that implement the interface can be used. + + Other data point properties besides X and Y-values can be bound. The format is: PointProperty=Field[{Format}] [,PointProperty= Field[{Format}]]. For example:"Tooltip=Price{C1},Href=WebSiteName". + +These data point properties include: - - @@ -1535,8 +1535,8 @@ These data point properties include: - - - -- , which are the names of the custom properties. - +- , which are the names of the custom properties. + ]]> @@ -1573,19 +1573,19 @@ These data point properties include: Series will be sorted by group field values in the specified order. Data binds a chart to the table, with one series created per unique value in a given column. - , or a object. - - Note that all collections that implement the interface can be used. - - Other data point properties besides X and Y-values can be bound. The format is: PointProperty=Field[{Format}] [,PointProperty= Field[{Format}]]. For example:"Tooltip=Price{C1},Href=WebSiteName". - - A list of these data point properties is as follows: , , , , , and , which are the names of the custom properties. - + , or a object. + + Note that all collections that implement the interface can be used. + + Other data point properties besides X and Y-values can be bound. The format is: PointProperty=Field[{Format}] [,PointProperty= Field[{Format}]]. For example:"Tooltip=Price{C1},Href=WebSiteName". + + A list of these data point properties is as follows: , , , , , and , which are the names of the custom properties. + ]]> @@ -1621,11 +1621,11 @@ These data point properties include: The data source, which can be any object. Automatically creates and binds series data to the specified data table. - @@ -1654,13 +1654,13 @@ These data point properties include: The name of the field used for the series X-values. Automatically creates and binds series data to the specified data table, and optionally populates X-values. - @@ -1694,27 +1694,27 @@ These data point properties include: Gets a object, which provides methods and properties that handle data. A object which provides methods and properties that handle data. - object. - -- Sort data. - -- Apply a financial formula to data. - - Refer to the class overview for further details. - + object. + +- Sort data. + +- Apply a financial formula to data. + + Refer to the class overview for further details. + ]]> @@ -1760,37 +1760,37 @@ These data point properties include: Gets or sets the data source for the object. An that represents the data source for the object. - property. - - To force the chart to bind to the data source, call the method. - - The following is a list of objects that you can use as the data source: - -- DataView - -- Data readers (SQL, OleDB) - -- DataSet - -- DataTable - -- Binding Source - -- IDataSource - -- Arrays - -- Lists - -- All Enumerable objects - -- SqlCommand / OleDbCommand (DataSource data-binding only) - -- SqlDataAdapter / OleDbDataAdapter (DataSource data-binding only) - + property. + + To force the chart to bind to the data source, call the method. + + The following is a list of objects that you can use as the data source: + +- DataView + +- Data readers (SQL, OleDB) + +- DataSet + +- DataTable + +- Binding Source + +- IDataSource + +- Arrays + +- Lists + +- All Enumerable objects + +- SqlCommand / OleDbCommand (DataSource data-binding only) + +- SqlDataAdapter / OleDbDataAdapter (DataSource data-binding only) + ]]> @@ -1939,18 +1939,18 @@ These data point properties include: if state management is enabled; otherwise, . The default value is . - control. - - The view state that is saved is determined by either the or properties. - + control. + + The view state that is saved is determined by either the or properties. + > [!NOTE] -> This property must be set prior to the Page_Load (the Page_Init or the constructor will work) or it will have no effect. - - For more information consult the Visual Studio documentation that discusses view state or state management. - +> This property must be set prior to the Page_Load (the Page_Init or the constructor will work) or it will have no effect. + + For more information consult the Visual Studio documentation that discusses view state or state management. + ]]> @@ -2039,11 +2039,11 @@ These data point properties include: Gets or sets the text color of the control. A value that represents the text color of the chart. - @@ -2092,17 +2092,17 @@ These data point properties include: The chart element. The type of element. Returns the chart element outline. - A object that contains: - -- An array of points in absolute coordinates that can be used as outline markers around this chart element. - -- A object for drawing an outline around this chart element. + A object that contains: + +- An array of points in absolute coordinates that can be used as outline markers around this chart element. + +- A object for drawing an outline around this chart element. - @@ -2190,11 +2190,11 @@ These data point properties include: Gets or sets the height of the entire chart image in pixels. A value that represents the height, in pixels, of the entire chart image. - @@ -2207,15 +2207,15 @@ These data point properties include: Determines the chart element, if any, that is located at a point defined by the given X and Y coordinates. - object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. - + object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. + ]]> @@ -2245,18 +2245,18 @@ These data point properties include: Determines the chart element, if any, that is located at a point defined by the given X and Y coordinates. A object, which provides information concerning the chart element, if any, that is at the specified location. - [!IMPORTANT] -> In order for this method to work correctly, the property must be set to `false`. - - This method can be used with the server-side event when you implement drilldown. However, it is highly recommended that you use client-side image maps for drilldown because of ease of use. - - The properties of the returned object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. - +> In order for this method to work correctly, the property must be set to `false`. + + This method can be used with the server-side event when you implement drilldown. However, it is highly recommended that you use client-side image maps for drilldown because of ease of use. + + The properties of the returned object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. + ]]> @@ -2288,20 +2288,20 @@ These data point properties include: Determines the chart element, if any, that is located at a point defined by given X and Y coordinates. Transparent elements can optionally be ignored. A object, which provides information concerning the chart element, if any, that is at the specified location. - [!IMPORTANT] -> In order for this method to work correctly, the property must be set to `false`. - - This method can be used with the server-side event when you implement drilldown. However, it is highly recommended that you use client-side image maps for drilldown because of ease of use. - - The properties of the returned object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. - +> In order for this method to work correctly, the property must be set to `false`. + + This method can be used with the server-side event when you implement drilldown. However, it is highly recommended that you use client-side image maps for drilldown because of ease of use. + + The properties of the returned object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. + ]]> @@ -2333,18 +2333,18 @@ These data point properties include: Determines whether a chart element of a given type is located at a point defined by the given X and Y coordinates. A object that provides information about the chart element, if any, found at the specified location. - [!IMPORTANT] -> In order for this method to work correctly, the property must be set to `false`. - - This method can be used with the server-side event when you implement drilldown. However, it is highly recommended that you use client-side image maps for drilldown because of ease of use. - - The properties of the returned object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. - +> In order for this method to work correctly, the property must be set to `false`. + + This method can be used with the server-side event when you implement drilldown. However, it is highly recommended that you use client-side image maps for drilldown because of ease of use. + + The properties of the returned object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. + ]]> @@ -2385,13 +2385,13 @@ These data point properties include: Determines whether a chart element that is one of the specified types is located at a point defined by the given X and Y coordinates. An array of objects that provides information about the chart element, if any, found at the specified location. The array contains at least one element, which can be . The objects in the result are sorted from the top to the bottom of different layers of control. - object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. - + object can then be used to determine which chart element was clicked; the object also provides an instance of the actual object selected, if any. + ]]> @@ -2441,17 +2441,17 @@ These data point properties include: Gets or sets the location where an image file is saved when rendering is performed. A value that represents the URL where the image file is saved on the server. - is set to . - - When you render a chart image using the image tag method, a chart image is generated and then saved to disk at the server, in a format that is determined by the property. - - The URL where the image file is saved can be either absolute or relative; the file extension that the image file has is determined by the property. - - The image file can be hard-coded to always be one filename, or you can use the "#" sign to use either user identifiers (UIDs) or a specified number of uniquely named files, which is known as a Round Robin. - + is set to . + + When you render a chart image using the image tag method, a chart image is generated and then saved to disk at the server, in a format that is determined by the property. + + The URL where the image file is saved can be either absolute or relative; the file extension that the image file has is determined by the property. + + The image file can be hard-coded to always be one filename, or you can use the "#" sign to use either user identifiers (UIDs) or a specified number of uniquely named files, which is known as a Round Robin. + ]]> @@ -2497,15 +2497,15 @@ These data point properties include: Gets a object, which stores objects for the chart. A object, which stores objects for the chart. - objects to and remove objects from the object of the . This collection property is available at run time only. - - An image - that is, an object derived from type , such as , that is created dynamically - can be stored in this collection, and then assigned at a later time to any image-related property, such as . - - When you assign a object to an image-related property in the class, use the name of the object for the `string` value of the image-related property. - + objects to and remove objects from the object of the . This collection property is available at run time only. + + An image - that is, an object derived from type , such as , that is created dynamically - can be stored in this collection, and then assigned at a later time to any image-related property, such as . + + When you assign a object to an image-related property in the class, use the name of the object for the `string` value of the image-related property. + ]]> @@ -2551,11 +2551,11 @@ These data point properties include: Gets or sets the storage mode for the chart image rendering. An enumeration value. - for options. - + for options. + ]]> @@ -2597,13 +2597,13 @@ These data point properties include: Gets or sets the type of image into which the chart is rendered if rendering is used. A enumeration value that specifies the type of image into which the chart is rendered. The default value is . - , , , and . - + , , , and . + ]]> @@ -2686,15 +2686,15 @@ These data point properties include: if image maps are enabled; otherwise, . The default value is . - object has been added to the object. - + object has been added to the object. + ]]> @@ -2733,13 +2733,13 @@ These data point properties include: if shadows are drawn using smoothing, if they are not. The default value is . - property is `true`, a smooth gradient will be applied to the shadow. - + property is `true`, a smooth gradient will be applied to the shadow. + ]]> @@ -2777,11 +2777,11 @@ These data point properties include: Gets or sets a object that is used to store all objects used by the control. A object that is used to store all objects. - objects used by the control. - + objects used by the control. + ]]> @@ -2817,17 +2817,17 @@ These data point properties include: The stream to load from. Loads a template into the control from an image stream. - property to `true` before saving the template with the method. - - If a loaded template has two data series, the appearance properties of the series are applied sequentially to the chart. In other words, the first template series appearance properties are assigned to the first series of the chart, the second template series appearance properties are applied to the second series of the chart, then the first template series is used again for the third series of the chart, and so on. The same holds true for chart areas, and any other collections that have appearance properties. - - Templates can be used to simulate custom palettes. - + property to `true` before saving the template with the method. + + If a loaded template has two data series, the appearance properties of the series are applied sequentially to the chart. In other words, the first template series appearance properties are assigned to the first series of the chart, the second template series appearance properties are applied to the second series of the chart, then the first template series is used again for the third series of the chart, and so on. The same holds true for chart areas, and any other collections that have appearance properties. + + Templates can be used to simulate custom palettes. + ]]> @@ -2854,19 +2854,19 @@ These data point properties include: The file name of the template to load. You must specify the full path of the template to be loaded from the disk. Loads a template with the specified filename from the disk. - method. - - Make sure to set the property to `true` before saving the template with the method. - - If a loaded template has two data series, the appearance properties of the series are applied sequentially to the chart. In other words, the first template series appearance properties are assigned to the first series of the chart, the second template series appearance properties are applied to the second series of the chart, then the first template series is used again for the third series of the chart, and so on. The same holds true for chart areas, and any other collections that have appearance properties. - - Templates can be used to simulate custom palettes. - + method. + + Make sure to set the property to `true` before saving the template with the method. + + If a loaded template has two data series, the appearance properties of the series are applied sequentially to the chart. In other words, the first template series appearance properties are assigned to the first series of the chart, the second template series appearance properties are applied to the second series of the chart, then the first template series is used again for the third series of the chart, and so on. The same holds true for chart areas, and any other collections that have appearance properties. + + Templates can be used to simulate custom palettes. + ]]> @@ -2928,15 +2928,15 @@ These data point properties include: Gets a object, which stores the map areas for the chart. A object which stores the map areas for the chart. - property of the root must be set to `true`, which is the default. - - If you render the chart as a binary stream, a special technique must be used to implement client-side image maps. - + property of the root must be set to `true`, which is the default. + + If you render the chart as a binary stream, a special technique must be used to implement client-side image maps. + ]]> @@ -3109,11 +3109,11 @@ These data point properties include: The object which provides data for the event. Occurs after the chart element background is painted. - , , and objects that exist within the chart image. Note that this event is not raised for and objects for 3D charts. - + , , and objects that exist within the chart image. Note that this event is not raised for and objects for 3D charts. + ]]> @@ -3185,20 +3185,20 @@ These data point properties include: Gets or sets the palette for the control. A enumeration value that determines the palette to be used. - object's palette or the palette of an associated series, if one is specified. - + object's palette or the palette of an associated series, if one is specified. + > [!NOTE] -> If the `Palette` property for both the and objects is set to , and no color is assigned to the relevant data series or data points, the data points will not be drawn, and will be displayed as "empty" areas. - +> If the `Palette` property for both the and objects is set to , and no color is assigned to the relevant data series or data points, the data points will not be drawn, and will be displayed as "empty" areas. + ]]> @@ -3228,13 +3228,13 @@ These data point properties include: Gets or sets an array of custom palette colors. An array of objects that represent the set of colors used for series on the chart. - property is *not* set to . - + property is *not* set to . + ]]> @@ -3388,19 +3388,19 @@ These data point properties include: Gets or sets the rendering method used to display a chart image. A enumeration value that represents the rendering method used to display a chart image. - render type causes a temporary file to be saved to disk at the server. The chart is displayed at the client side using an \ tag, with its SRC attribute set to the URL specified by the property. - -- If the render type is specified, there are no temporary image files at the server. Instead, the chart image is sent as a binary stream, and is displayed using an \ tag with its SRC attribute set to another .aspx page that is responsible for generating the chart image. - -- A render type of causes an image map to be created, but does not result in the display of an actual chart image. This option should only be taken when using an image map that has a render type of . - - Note that you can control how temporary image files are saved to disk using the property. - + render type causes a temporary file to be saved to disk at the server. The chart is displayed at the client side using an \ tag, with its SRC attribute set to the URL specified by the property. + +- If the render type is specified, there are no temporary image files at the server. Instead, the chart image is sent as a binary stream, and is displayed using an \ tag with its SRC attribute set to another .aspx page that is responsible for generating the chart image. + +- A render type of causes an image map to be created, but does not result in the display of an actual chart image. This option should only be taken when using an image map that has a render type of . + + Note that you can control how temporary image files are saved to disk using the property. + ]]> @@ -3424,13 +3424,13 @@ These data point properties include: Resets automatically calculated chart property values to "Auto". - ; these properties are calculated prior to the chart being rendered. "Auto" is usually represented as a value. - - Call this method to reset these properties from their calculated value to "Auto" (). - + ; these properties are calculated prior to the chart being rendered. "Auto" is usually represented as a value. + + Call this method to reset these properties from their calculated value to "Auto" (). + ]]> @@ -3468,11 +3468,11 @@ These data point properties include: Gets or sets a value that indicates whether the control should draw right-to-left for Right-to-Left (RTL) languages. A enumeration value that indicates whether the control should draw right-to-left for Right-to-Left (RTL) languages. The default value is . - @@ -3665,13 +3665,13 @@ These data point properties include: Gets a object, which is used for chart serialization. A object which is used for chart serialization. - class, refer to the class overview. - + class, refer to the class overview. + ]]> @@ -3713,13 +3713,13 @@ These data point properties include: Gets a object which contains objects. A object, which contains objects. - class, which stores objects and also provides methods and properties used to manipulate this collection. - - objects store objects, as well as data attributes. - + class, which stores objects and also provides methods and properties used to manipulate this collection. + + objects store objects, as well as data attributes. + ]]> @@ -3750,16 +3750,16 @@ These data point properties include: if non-critical exceptions should be suppressed; otherwise, . The default value is . - control cannot properly plot the chart using the data and other settings provided, an exception will be thrown. Although displaying exceptions is useful during application testing, they should not be shown when the application is released. - + control cannot properly plot the chart using the data and other settings provided, an exception will be thrown. Although displaying exceptions is useful during application testing, they should not be shown when the application is released. + > [!NOTE] -> Setting this property to `true` may hide serious issues in the user application source code. This setting could also cause a chart image to be generated that might misrepresent your data. It is highly recommended that this mode be only used in Release builds. - +> Setting this property to `true` may hide serious issues in the user application source code. This setting could also cause a chart image to be generated that might misrepresent your data. It is highly recommended that this mode be only used in Release builds. + ]]> @@ -3830,11 +3830,11 @@ These data point properties include: Gets or sets the type to use when applying anti-aliasing to text. A enumeration value to use when applying anti-aliasing to text. The default value is . - control will use this property to determine the type of textual anti-aliasing to apply. - + control will use this property to determine the type of textual anti-aliasing to apply. + ]]> @@ -3872,11 +3872,11 @@ These data point properties include: Gets or sets a object which stores all objects used by the control. A object which stores all objects used by the control. - property stores all objects used by the control. - + property stores all objects used by the control. + ]]> @@ -3946,17 +3946,17 @@ These data point properties include: Gets or sets a value that determines the view state to be persisted at the client. A enumeration value that represents the view state. The default value is , which signifies that the view state will consist of all chart properties. - control. - - When you set this property, the view state is automatically saved by the control, and is also loaded automatically when a postback occurs. - - For greater flexibility, use the property for user-defined view state. - - To enable state management, set the property to `true`. - + control. + + When you set this property, the view state is automatically saved by the control, and is also loaded automatically when a postback occurs. + + For greater flexibility, use the property for user-defined view state. + + To enable state management, set the property to `true`. + ]]> @@ -4006,19 +4006,19 @@ These data point properties include: Gets or sets the user-defined view state of the control. A value that represents the view state of the control, which is embedded in the Web document at the client. - property. - - When the user-defined view state is implemented, it is up to the developer to set the view state, and to utilize the view state when a postback occurs. - - The `Save` and `Load` methods of the object can optionally be used to set the view state, as well as to load the view state when a postback occurs. See the sample code below for an example of this. - - For simplicity, when you specify the chart state to be saved, use the property, which can be set to data, visual appearance properties or both. - - To enable state management, set the property to `true`. - + property. + + When the user-defined view state is implemented, it is up to the developer to set the view state, and to utilize the view state when a postback occurs. + + The `Save` and `Load` methods of the object can optionally be used to set the view state, as well as to load the view state when a postback occurs. See the sample code below for an example of this. + + For simplicity, when you specify the chart state to be saved, use the property, which can be set to data, visual appearance properties or both. + + To enable state management, set the property to `true`. + ]]> @@ -4056,11 +4056,11 @@ These data point properties include: Gets or sets the width of the entire chart image in pixels. A value that represents the width, in pixels, of the entire chart image. - diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartArea.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartArea.xml index 6e42f9f0b75..e22d72df597 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartArea.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartArea.xml @@ -22,39 +22,39 @@ Represents a chart area on the chart image. - class; objects are stored in the class. - - The number of chart series that can be plotted in a chart area is unlimited. - - A object: - -- Uses one distinct inner plotting area. - -- Is used to plot one or more chart series. - -- Has primary and secondary x and y-axes, except for pie and doughnut chart types. - - When you use Shape chart types, which includes pie, doughnut, funnel, pyramid, polar, and radar charts, the inner plotting position defines the size of the chart type shape. For example, when you increase the value of the property on a pie chart, you will increase the radius of the pie shape. - - For all other chart types, each chart area has two sets of X- and Y-axes, primary and secondary. To access properties related to these axes, use the , , and properties. If you need to set a property that affects all axes on the chart, use the property. - - One or more series are associated with a chart area. The series has a property that determines the chart area that each series belongs to. By default, the series is connected to the default chart area. To disable the display of a series, set the property of that series to a zero-length string. - - If another chart area is added to the chart, you can associate any series with the new chart area. In all Shape chart types, as well as bar and stacked bar chart types, each series must be plotted in a separate chart area. In all other chart types, multiple series can be combined in the same chart area. - - A 3D chart is displayed on a chart area-by-chart area basis. You can use the property to enable and customize your chart in 3D. - - The chart area minimum and maximum will not be automatically recalculated if you add new data, so the chart will not automatically change axis sizes. You can require the chart area to recalculate these values by using the method. - - To align multiple chart areas vertically, set the property. To align multiple chart areas horizontally, you must first position the chart areas using the property, and then set the property to Horizontal. - - To suppress the display of a series, set the property of that series to a zero-length string. - + class; objects are stored in the class. + + The number of chart series that can be plotted in a chart area is unlimited. + + A object: + +- Uses one distinct inner plotting area. + +- Is used to plot one or more chart series. + +- Has primary and secondary x and y-axes, except for pie and doughnut chart types. + + When you use Shape chart types, which includes pie, doughnut, funnel, pyramid, polar, and radar charts, the inner plotting position defines the size of the chart type shape. For example, when you increase the value of the property on a pie chart, you will increase the radius of the pie shape. + + For all other chart types, each chart area has two sets of X- and Y-axes, primary and secondary. To access properties related to these axes, use the , , and properties. If you need to set a property that affects all axes on the chart, use the property. + + One or more series are associated with a chart area. The series has a property that determines the chart area that each series belongs to. By default, the series is connected to the default chart area. To disable the display of a series, set the property of that series to a zero-length string. + + If another chart area is added to the chart, you can associate any series with the new chart area. In all Shape chart types, as well as bar and stacked bar chart types, each series must be plotted in a separate chart area. In all other chart types, multiple series can be combined in the same chart area. + + A 3D chart is displayed on a chart area-by-chart area basis. You can use the property to enable and customize your chart in 3D. + + The chart area minimum and maximum will not be automatically recalculated if you add new data, so the chart will not automatically change axis sizes. You can require the chart area to recalculate these values by using the method. + + To align multiple chart areas vertically, set the property. To align multiple chart areas horizontally, you must first position the chart areas using the property, and then set the property to Horizontal. + + To suppress the display of a series, set the property of that series to a zero-length string. + ]]> @@ -83,14 +83,14 @@ Initializes a new instance of the class. - class. - + class. + > [!NOTE] -> It is highly recommended that you use one of the `Add` or `Insert` methods of the collection property to add a chart area at run time. - +> It is highly recommended that you use one of the `Add` or `Insert` methods of the collection property to add a chart area at run time. + ]]> @@ -161,15 +161,15 @@ Gets or sets the alignment orientation of a chart area. An enumeration value. - , and properties, it is possible to align or synchronize two or more chart areas horizontally, vertically or both. - - First, set the property to the name of a object. This chart area will then be aligned, based on the setting, which defines the alignment to use, and the setting, which defines the elements of the chart area that should be used to set the alignment. - - If the property is not set, the chart area will not be aligned, regardless of the and settings. - + , and properties, it is possible to align or synchronize two or more chart areas horizontally, vertically or both. + + First, set the property to the name of a object. This chart area will then be aligned, based on the setting, which defines the alignment to use, and the setting, which defines the elements of the chart area that should be used to set the alignment. + + If the property is not set, the chart area will not be aligned, regardless of the and settings. + ]]> @@ -219,21 +219,21 @@ Gets or sets the alignment style of the . An enumeration value that can represent either a single value or the bitwise-OR of multiple values that define the alignment to use. - property to align two or more chart areas horizontally, vertically or both. The alignment type is one of the following values, or a bitwise OR combination of the values below. - -|Member Name|Description| -|-----------------|-----------------| -|All|Chart areas are aligned using all values.| -|AxesView|Chart areas are aligned using the view of the specified .| -|None|Chart areas are not automatically aligned.| -|Position|Chart areas are aligned with the of the chart area specified.| -|InnerPlotPosition|Chart areas are aligned with the of the chart area specified.| - - If the value is not set, the property will have no effect. - + property to align two or more chart areas horizontally, vertically or both. The alignment type is one of the following values, or a bitwise OR combination of the values below. + +|Member Name|Description| +|-----------------|-----------------| +|All|Chart areas are aligned using all values.| +|AxesView|Chart areas are aligned using the view of the specified .| +|None|Chart areas are not automatically aligned.| +|Position|Chart areas are aligned with the of the chart area specified.| +|InnerPlotPosition|Chart areas are aligned with the of the chart area specified.| + + If the value is not set, the property will have no effect. + ]]> @@ -279,15 +279,15 @@ Gets or sets the name of the object to which this chart area should be aligned. A value that represents the name of a object to which this chart area should be aligned. The default is the empty string. - , and properties, it is possible to align or synchronize two or more chart areas horizontally, vertically or both. - - First, set the property to the name of a object. This chart area will then be aligned, based on the setting, which defines the alignment to use, and the setting, which defines the elements of the chart area that should be used to set the alignment. - - If the property is not set, the chart area will not be aligned, regardless of the and settings. - + , and properties, it is possible to align or synchronize two or more chart areas horizontally, vertically or both. + + First, set the property to the name of a object. This chart area will then be aligned, based on the setting, which defines the alignment to use, and the setting, which defines the elements of the chart area that should be used to set the alignment. + + If the property is not set, the chart area will not be aligned, regardless of the and settings. + ]]> @@ -337,13 +337,13 @@ Gets or sets a object, which is used to implement 3D for all series in a chart area. A object that implements 3D for all series plotted in a chart area. - property. - - When the chart is drawn in 3D, scale breaks are not supported on the axis. - + property. + + When the chart is drawn in 3D, scale breaks are not supported on the axis. + ]]> @@ -393,15 +393,15 @@ Gets or sets an array that represents all axes for a chart area. An array of objects that represents all axes used by a chart area. - , , and so forth. - - If you decide to use this property at run time - for example, in an event - you can access an item in this array by specifying an enumeration member as the identifier. - + , , and so forth. + + If you decide to use this property at run time - for example, in an event - you can access an item in this array by specifying an enumeration member as the identifier. + ]]> @@ -447,11 +447,11 @@ Gets or sets an object that represents the primary X-axis. An object that represents the primary X-axis. - @@ -497,11 +497,11 @@ Gets or sets an object that represents the secondary X-axis. An object that represents the secondary X-axis. - @@ -547,11 +547,11 @@ Gets or sets an object that represents the primary Y-axis. An object that represents the primary Y-axis. - @@ -597,11 +597,11 @@ Gets or sets an object that represents the secondary Y-axis. An object that represents the secondary Y-axis. - @@ -659,15 +659,15 @@ Gets or sets the background color of a object. A value. The default color is . - value will be the first color used if you have specified gradient colors for the background. - - The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the chart area. As a result, the background will be transparent. - + value will be the first color used if you have specified gradient colors for the background. + + The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the chart area. As a result, the background will be transparent. + ]]> @@ -721,21 +721,21 @@ Gets or sets the orientation for the background gradient of a chart area, and also determines whether or not a gradient is used. A enumeration. The default value is . - property to determine whether a chart area will display a gradient, and to determine the orientation of the gradient if one is used. - - For a listing of available patterns, refer to the enumeration. - - To use gradient colors: - -- Set the primary color of the chart area background with the property. - -- Set the secondary color of the chart area background with the property. - -- Set this property to the desired gradient style. - + property to determine whether a chart area will display a gradient, and to determine the orientation of the gradient if one is used. + + For a listing of available patterns, refer to the enumeration. + + To use gradient colors: + +- Set the primary color of the chart area background with the property. + +- Set the secondary color of the chart area background with the property. + +- Set this property to the desired gradient style. + ]]> @@ -789,16 +789,16 @@ Gets or sets the hatching style of a object. A enumeration. The default value is . - enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. - - For a listing of available hatching styles, refer to the enumeration. - + enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. + + For a listing of available hatching styles, refer to the enumeration. + > [!NOTE] -> The color of hatching lines is determined by the property. - +> The color of hatching lines is determined by the property. + ]]> @@ -852,19 +852,19 @@ Gets or sets the background image of a object. A value that represents the URL of an image file. The default is an empty string. - , and can be an absolute or relative URL. - - To position the image, use the and properties. - - You can also specify one of the colors displayed by the image as "transparent", by setting the property. - - An image be any valid graphics file supported by .NET Framework, including icons. - - Background images take precedence over other background properties such as gradient color. - + , and can be an absolute or relative URL. + + To position the image, use the and properties. + + You can also specify one of the colors displayed by the image as "transparent", by setting the property. + + An image be any valid graphics file supported by .NET Framework, including icons. + + Background images take precedence over other background properties such as gradient color. + ]]> @@ -910,13 +910,13 @@ Gets or sets the alignment of a background image. A enumeration value. The default value is . - property is set to . - - For more information about the available alignments, see the enumeration topic. - + property is set to . + + For more information about the available alignments, see the enumeration topic. + ]]> @@ -1017,17 +1017,17 @@ Gets or sets the drawing mode for the background image of a object. A enumeration value. The default value is . - property determines how the image is displayed; the image can be tiled, scaled, and so forth. - - If an image is scaled, it will be stretched to fit within the bounds of the chart area. If the image is tiled, it is repeatedly drawn, starting from the top-left corner of the chart area. - - For more information about the available wrapping modes, see the enumeration topic. - - If the property is set to , the location where the image is drawn is determined by the property setting. - + property determines how the image is displayed; the image can be tiled, scaled, and so forth. + + If an image is scaled, it will be stretched to fit within the bounds of the chart area. If the image is tiled, it is repeatedly drawn, starting from the top-left corner of the chart area. + + For more information about the available wrapping modes, see the enumeration topic. + + If the property is set to , the location where the image is drawn is determined by the property setting. + ]]> @@ -1085,23 +1085,23 @@ Gets or sets the secondary color for the background of a object. A value. The default value is . - property is one of several related properties that determine the secondary background color of objects, and is used when gradient colors are being applied. - - You can set to any valid ARGB (alpha, red, green, blue) value. - - If hatching is used, the property determines the color of the hatching lines for the chart area. - - To use gradient colors for the background of a chart area: - -- Set the primary color with the property. - -- Set the secondary color with the property. - -- Set the property to the desired gradient style. - + property is one of several related properties that determine the secondary background color of objects, and is used when gradient colors are being applied. + + You can set to any valid ARGB (alpha, red, green, blue) value. + + If hatching is used, the property determines the color of the hatching lines for the chart area. + + To use gradient colors for the background of a chart area: + +- Set the primary color with the property. + +- Set the secondary color with the property. + +- Set the property to the desired gradient style. + ]]> @@ -1159,16 +1159,16 @@ Gets or sets the border color of a object. A value. The default color is . - property to any valid ARGB (alpha, red, green, blue) value. - + property to any valid ARGB (alpha, red, green, blue) value. + > [!NOTE] -> For pie and doughnut charts, this property determines the color of radial and horizontal lines if data labels are drawn outside the pie or doughnut - that is, if the `LabelStyle` custom property is set to "Outside". - - This property also determines the marker lines for 3D charts if the `ShowMarkerLines` custom property is set to `true`. - +> For pie and doughnut charts, this property determines the color of radial and horizontal lines if data labels are drawn outside the pie or doughnut - that is, if the `LabelStyle` custom property is set to "Outside". + + This property also determines the marker lines for 3D charts if the `ShowMarkerLines` custom property is set to `true`. + ]]> @@ -1214,13 +1214,13 @@ Gets or sets the border style of a object. A enumeration value that determines the border style of the chart area. - property determines the line style to use for a border. The line can be solid, dotted, and so forth. - - For other border styles, see the enumeration topic. - + property determines the line style to use for a border. The line can be solid, dotted, and so forth. + + For other border styles, see the enumeration topic. + ]]> @@ -1266,11 +1266,11 @@ Gets or sets the border width of a object. An value that determines the border width, in pixels, of the chart area. - property can also set the width of lines for line charts, custom legend items displayed with a line style, and so forth. - + property can also set the width of lines for line charts, custom legend items displayed with a line style, and so forth. + ]]> @@ -1323,20 +1323,20 @@ Returns the depth of a in a chart area. A value that represents the depth of the specified , which is measured as a percentage of the chart area's depth. - property. - - All series have a depth, regardless of their chart type. For example, even point and bubble series have a depth, even though the entire depth is not used to draw the points or bubbles. - - The depth of a series can be used to determine a Z value for a point that is used in a custom drawing routine. - + property. + + All series have a depth, regardless of their chart type. For example, even point and bubble series have a depth, even though the entire depth is not used to draw the points or bubbles. + + The depth of a series can be used to determine a Z value for a point that is used in a custom drawing routine. + > [!NOTE] -> Any points used in custom 3D drawing must be transformed from relative 3D coordinates to relative 2D coordinates using the method. - - To get relative X and Y-values from an axis, use the method for both the X and Y axes. - +> Any points used in custom 3D drawing must be transformed from relative 3D coordinates to relative 2D coordinates using the method. + + To get relative X and Y-values from an axis, use the method for both the X and Y axes. + ]]> @@ -1364,18 +1364,18 @@ Returns the Z position of a series, which is useful for custom drawing. A value that represents the Z position of the specified series, which is measured as a percentage of the depth of a chart area. - [!NOTE] -> Any points used in custom 3D drawing must be transformed from relative 3D coordinates to relative 2D coordinates using the method. - - To get relative X and Y-values from an axis, use the method for both the X and Y axes. - +> Any points used in custom 3D drawing must be transformed from relative 3D coordinates to relative 2D coordinates using the method. + + To get relative X and Y-values from an axis, use the method for both the X and Y axes. + ]]> @@ -1417,20 +1417,20 @@ Gets or sets an object, which defines the inner plot position of a chart area object. An object, which defines the inner plot position of a object. - property defines the rectangle within a chart area element that is used for plotting data; it excludes tick marks, axis labels, and so forth. - - The coordinates used for this property (0,0 to 100,100) are related to the object, and not to the entire . - - The property can be used to align multiple chart areas. However, if one chart area has tick marks and axis labels and another one does not, their axis lines cannot be aligned. - + property defines the rectangle within a chart area element that is used for plotting data; it excludes tick marks, axis labels, and so forth. + + The coordinates used for this property (0,0 to 100,100) are related to the object, and not to the entire . + + The property can be used to align multiple chart areas. However, if one chart area has tick marks and axis labels and another one does not, their axis lines cannot be aligned. + > [!IMPORTANT] -> This property can also be used to change the size of charts, such as pie or doughnut, without changing the size of the generated chart image. - - To change the position of an entire object use the property instead. - +> This property can also be used to change the size of charts, such as pie or doughnut, without changing the size of the generated chart image. + + To change the position of an entire object use the property instead. + ]]> @@ -1477,13 +1477,13 @@ if all axes that have their property set to will display their labels using the same font size; otherwise, . - control, with the largest size that fits being used. - - This property applies to all chart area axes that have their property set to `true`. - + control, with the largest size that fits being used. + + This property applies to all chart area axes that have their property set to `true`. + ]]> @@ -1521,15 +1521,15 @@ Gets or sets the unique name of a object. A value that represents the name of a object. - object must be unique, otherwise an exception will be thrown. - - This property can be used as the indexer when retrieving a object from the object. - - If you set this property to a zero-length string. an exception will be thrown. - + object must be unique, otherwise an exception will be thrown. + + This property can be used as the indexer when retrieving a object from the object. + + If you set this property to a zero-length string. an exception will be thrown. + ]]> @@ -1571,13 +1571,13 @@ Gets or sets an object that defines the position of a object within the . An object that defines the position of a chart area object within the chart image. - object within the , and includes tick marks, axis labels, and so forth. - - The coordinates used for this property (0,0 to 100,100) are related to the entire chart image. - + object within the , and includes tick marks, axis labels, and so forth. + + The coordinates used for this property (0,0 to 100,100) are related to the entire chart image. + ]]> @@ -1601,13 +1601,13 @@ Recalculates the properties of the chart area after changes have been made to the chart in the event. - event to make changes, it is sometimes necessary to recalculate chart area properties so that the chart is rendered correctly. For example, if an axis range is changed, the labels for that axis must be recalculated. - - Call this method after you use the event to make ANY changes to a chart area. - + event to make changes, it is sometimes necessary to recalculate chart area properties so that the chart is rendered correctly. For example, if an axis range is changed, the labels for that axis must be recalculated. + + Call this method after you use the event to make ANY changes to a chart area. + ]]> @@ -1665,15 +1665,15 @@ Gets or sets the shadow color of a object. A value. The default color is . - property to a value other than zero (0). - + property to a value other than zero (0). + ]]> @@ -1719,11 +1719,11 @@ Gets or sets the shadow offset, in pixels, of a object. An that represents the shadow offset, in pixels, of the chart area. - @@ -1786,11 +1786,11 @@ if the chart area is visible; otherwise, . - diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartArea3DStyle.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartArea3DStyle.xml index 255563842c7..00a81a3e551 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartArea3DStyle.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartArea3DStyle.xml @@ -16,41 +16,41 @@ Manages the display attributes for three-dimensional (3D) chart areas. - property. - - To enable 3D for a chart area, set the property to `true`. This causes 3D to be applied to all data series drawn in a chart area. - - An isometric projection of a chart area can be displayed by setting the property to `true`, which is the default. Isometric views are not actually 3D, because the displayed angles of rotation may not match the actual angles of rotation around the vertical and horizontal axes. The actual angles are controlled using the and properties, respectively. - - For more information about isometric projections, see the Remarks section of the property. - - You can also use this class to: - -- Cluster bar and column chart data series using the property. - -- Control the lighting effects using the property. - -- Set the width of chart area walls using the property. - -- Set the amount of perspective with the property. - -- Control the depth of data points and the distance between data rows using the and properties, respectively. - -- Rotate a chart area using the and properties. - - To work with coordinates of 3D points, use the class. - - When a chart is set to 3D, the following chart features are not valid: - -- Scale breaks - -- Gradients - -- Scrolling and zooming - + property. + + To enable 3D for a chart area, set the property to `true`. This causes 3D to be applied to all data series drawn in a chart area. + + An isometric projection of a chart area can be displayed by setting the property to `true`, which is the default. Isometric views are not actually 3D, because the displayed angles of rotation may not match the actual angles of rotation around the vertical and horizontal axes. The actual angles are controlled using the and properties, respectively. + + For more information about isometric projections, see the Remarks section of the property. + + You can also use this class to: + +- Cluster bar and column chart data series using the property. + +- Control the lighting effects using the property. + +- Set the width of chart area walls using the property. + +- Set the amount of perspective with the property. + +- Control the depth of data points and the distance between data rows using the and properties, respectively. + +- Rotate a chart area using the and properties. + + To work with coordinates of 3D points, use the class. + + When a chart is set to 3D, the following chart features are not valid: + +- Scale breaks + +- Gradients + +- Scrolling and zooming + ]]> @@ -140,11 +140,11 @@ the chart area is displayed using 3D, if the chart area is displayed in 2D. The default value is . - @@ -262,21 +262,21 @@ if the chart area is displayed using an isometric projection; otherwise, . - and properties, respectively. - - Note the following points concerning isometric projection: - -- It is not "real" 3D. That is, the angle of rotation around axes doesn't use true rotational angles. - -- It is ideal for displaying 3D charts with some depth. - -- If your application allows end-users to rotate the charts, the rotation will not be smooth. In this case, using isometric views is not recommended. - -- With isometric projection, perspective is not supported. - + and properties, respectively. + + Note the following points concerning isometric projection: + +- It is not "real" 3D. That is, the angle of rotation around axes doesn't use true rotational angles. + +- It is ideal for displaying 3D charts with some depth. + +- If your application allows end-users to rotate the charts, the rotation will not be smooth. In this case, using isometric views is not recommended. + +- With isometric projection, perspective is not supported. + ]]> @@ -353,13 +353,13 @@ Gets or sets the percent of perspective for a 3D chart area. An value that represents the percent of perspective for a 3D chart area. The allowable range is 0-100 percent, and the default is zero (0) percent. - property, the property will be automatically set to `false`, because these properties are mutually exclusive. - + property, the property will be automatically set to `false`, because these properties are mutually exclusive. + ]]> @@ -401,17 +401,17 @@ Gets or sets the depth of data points displayed in a 3D chart area. An value that represents the depth of data points. The allowable range is 0-1000 percent. The default is 100 percent. - property can be applied to the depth of bar, column, line, pie and spline chart data points only. If you set this property for other chart types (for example, bubble and point charts) that cannot have their point depths "stretched", it will reserve extra space for the data points, but will not increase their depth. - - You can display the chart as an isometric projection by setting the property to `true`, which is the default value. This will cause the point depth to appear to be more or less than the percentage set by this property, depending on the chart being displayed. - - To control the spacing between rows of data, use the property. - + property can be applied to the depth of bar, column, line, pie and spline chart data points only. If you set this property for other chart types (for example, bubble and point charts) that cannot have their point depths "stretched", it will reserve extra space for the data points, but will not increase their depth. + + You can display the chart as an isometric projection by setting the property to `true`, which is the default value. This will cause the point depth to appear to be more or less than the percentage set by this property, depending on the chart being displayed. + + To control the spacing between rows of data, use the property. + ]]> @@ -453,17 +453,17 @@ Gets or sets the distance between series rows in a 3D chart area. An value that represents the distance between data rows (that is, the data series) in the 3D chart area. The allowable range is 0-1000 percent, and the default is 100 percent. - property value. - - Set the property to `true` (the default value) to display the chart as an isometric projection. This will cause the point gap depth to appear to be more or less than the percentage set by this property, depending on the chart being displayed. - - To control the depth of data points, use the property. - + property value. + + Set the property to `true` (the default value) to display the chart as an isometric projection. This will cause the point gap depth to appear to be more or less than the percentage set by this property, depending on the chart being displayed. + + To control the depth of data points, use the property. + ]]> @@ -544,11 +544,11 @@ Gets or sets the width of the walls displayed in a 3D chart area. An value that represents the width, in pixels, of the walls displayed in a 3D chart area. - diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartColorPalette.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartColorPalette.xml index 879d2602b95..a8973f3639b 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartColorPalette.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartColorPalette.xml @@ -15,17 +15,17 @@ Specifies a palette when setting a Palette property. - enumeration represents the palettes to be used for the root object and any objects. - - If no colors are assigned to data points and their associated series, the default colors will be assigned to the data. For example: - -- If is set to None, then the default palette is set to or BrightPastel. - -- If. is set to None, then the default palette for the chart is used (). - + enumeration represents the palettes to be used for the root object and any objects. + + If no colors are assigned to data points and their associated series, the default colors will be assigned to the data. For example: + +- If is set to None, then the default palette is set to or BrightPastel. + +- If. is set to None, then the default palette for the chart is used (). + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartGraphics.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartGraphics.xml index 326388b9e69..15160a73c17 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartGraphics.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartGraphics.xml @@ -16,18 +16,18 @@ Provides numerous conversion functions and exposes a GDI+ object. - object. Note that when rendering as Scalable Vector Graphics (SVG), use of the object for custom drawing will not be included as part of the SVG document. - - Note also that, by default, functions usually take absolute coordinates. Therefore the conversion methods of this class should be useful if you perform drawing operations. - - A object is exposed in the property of the class, which makes it easy to perform custom drawing in the and events. - + object. Note that when rendering as Scalable Vector Graphics (SVG), use of the object for custom drawing will not be included as part of the SVG document. + + Note also that, by default, functions usually take absolute coordinates. Therefore the conversion methods of this class should be useful if you perform drawing operations. + + A object is exposed in the property of the class, which makes it easy to perform custom drawing in the and events. + > [!IMPORTANT] -> If significant changes are made to the default behavior of the object, the chart image and its associated elements may be drawn erratically. For example, positioning may be altered. It is highly recommended that you become well acquainted with GDI+ before you make any significant changes to the properties of the object. - +> If significant changes are made to the default behavior of the object, the chart image and its associated elements may be drawn erratically. For example, positioning may be altered. It is highly recommended that you become well acquainted with GDI+ before you make any significant changes to the properties of the object. + ]]> @@ -255,11 +255,11 @@ Gets or sets a GDI+ object that can be used for drawing purposes. A object used for drawing. - diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartImageFormat.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartImageFormat.xml index 17eb0ddba72..1317d364601 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartImageFormat.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartImageFormat.xml @@ -15,14 +15,14 @@ Specifies the image type for the chart. - enumeration represents an image type that is used to save the chart to a file or stream. - + enumeration represents an image type that is used to save the chart to a file or stream. + > [!NOTE] -> Only charts saved to disk can use the EmfDual and EmfPlus formats. Charts cannot be rendered on a Web page using EMF-dual or EMF+. - +> Only charts saved to disk can use the EmfDual and EmfPlus formats. Charts cannot be rendered on a Web page using EMF-dual or EMF+. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartImageWrapMode.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartImageWrapMode.xml index 7332581b12e..e20bf917c4e 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartImageWrapMode.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartImageWrapMode.xml @@ -15,14 +15,14 @@ Specifies the drawing mode for a background image. - enumeration represents the drawing mode for a background image, as set by the property of the control. To set a background image for a chart element, use the property. - + enumeration represents the drawing mode for a background image, as set by the property of the control. To set a background image for a chart element, use the property. + > [!NOTE] -> If you specify the Unscaled value, the location where the image is drawn will depend on the property setting. - +> If you specify the Unscaled value, the location where the image is drawn will depend on the property setting. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartPaintEventArgs.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartPaintEventArgs.xml index 0e0de58acef..0df4a8c168e 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartPaintEventArgs.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartPaintEventArgs.xml @@ -16,15 +16,15 @@ Provides data for the paint events of the control. - object is used to set chart properties during the and events of the control. - - The property allows you to position chart elements, and the property facilitates GDI+ drawing operations. - - The property gives the developer access to the root object, which can be used to set various properties of the chart. - + object is used to set chart properties during the and events of the control. + + The property allows you to position chart elements, and the property facilitates GDI+ drawing operations. + + The property gives the developer access to the root object, which can be used to set various properties of the chart. + ]]> @@ -48,11 +48,11 @@ Gets the root object. The root object. - property allows the developer to set chart properties during the and events of the control. - + property allows the developer to set chart properties during the and events of the control. + ]]> @@ -109,15 +109,15 @@ Gets a object. A object. - object. - + object. + ]]> @@ -147,11 +147,11 @@ Gets an object. An object. - diff --git a/xml/System.Web.UI.DataVisualization.Charting/ChartSerializer.xml b/xml/System.Web.UI.DataVisualization.Charting/ChartSerializer.xml index 8c04209d5ca..92cd8202631 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ChartSerializer.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ChartSerializer.xml @@ -22,34 +22,34 @@ Enables serialization of the control. - property of the root class. - - Serialization saves the state of the chart and also provides the option to load the serialized data into the chart. All chart properties can be persisted, including the chart's data. In addition, all chart properties marked for serialization can be reset. - - This class can optionally be used when managing user-defined view state. One of its `Load` methods can be used to load the view state, and one of the `Save` methods can be used when setting the view state. - - The XML or binary formats can be used to store serialized data. XML is used by default, but you can change the format with the property. - - Chart properties are saved and loaded using the `Save` and `Load` methods, respectively. Note that only properties with non-default values will be saved. Data can be saved and/or loaded using a file, stream, , , and objects. When saving and/or loading data using an object derived from the , , or classes, the format of the data must be XML. - - The following list describes three techniques, from basic to advanced, used to define serializable data. Note that it is also possible to define non-serializable data. This technique is described in the next paragraph. - -- Serialize the using the `Save` and `Load` methods, without specifying any serializable properties. All chart properties with non-default values, which includes chart data, will be serialized. - -- Serialize the chart properties specified by the property. The property groups the chart properties to be serialized into categories such as Data, Appearance, and so forth. Note that the names of and objects are automatically serialized; the serialized data is then applied to existing chart areas and series when loaded. - + property of the root class. + + Serialization saves the state of the chart and also provides the option to load the serialized data into the chart. All chart properties can be persisted, including the chart's data. In addition, all chart properties marked for serialization can be reset. + + This class can optionally be used when managing user-defined view state. One of its `Load` methods can be used to load the view state, and one of the `Save` methods can be used when setting the view state. + + The XML or binary formats can be used to store serialized data. XML is used by default, but you can change the format with the property. + + Chart properties are saved and loaded using the `Save` and `Load` methods, respectively. Note that only properties with non-default values will be saved. Data can be saved and/or loaded using a file, stream, , , and objects. When saving and/or loading data using an object derived from the , , or classes, the format of the data must be XML. + + The following list describes three techniques, from basic to advanced, used to define serializable data. Note that it is also possible to define non-serializable data. This technique is described in the next paragraph. + +- Serialize the using the `Save` and `Load` methods, without specifying any serializable properties. All chart properties with non-default values, which includes chart data, will be serialized. + +- Serialize the chart properties specified by the property. The property groups the chart properties to be serialized into categories such as Data, Appearance, and so forth. Note that the names of and objects are automatically serialized; the serialized data is then applied to existing chart areas and series when loaded. + > [!IMPORTANT] -> The property is implemented internally by the control as the property - -- Serialization of chart properties specified by the property. This is a comma-separated listing of all chart properties that are serializable. After this property is set to an explicit value, it is the responsibility of the developer to specify all properties to be saved. In other words, unlike the property, the names of chart areas and series will not be automatically persisted. The and properties can also be used in conjunction. However, make sure that is concatenated with itself when being set, otherwise the chart properties specified by the property will be overridden. - - To prohibit certain properties from being serialized, use the property. When one property is set as serializable and non-serializable, which is common when wildcards are used, the property has precedence. However, precedence also depends on how many wildcards were used when a property was specified. - - By default, serializable properties are reset to their defaults before they are loaded. This behavior can be changed using the property. The method can also be used to explicitly reset chart properties to their default values. - +> The property is implemented internally by the control as the property + +- Serialization of chart properties specified by the property. This is a comma-separated listing of all chart properties that are serializable. After this property is set to an explicit value, it is the responsibility of the developer to specify all properties to be saved. In other words, unlike the property, the names of chart areas and series will not be automatically persisted. The and properties can also be used in conjunction. However, make sure that is concatenated with itself when being set, otherwise the chart properties specified by the property will be overridden. + + To prohibit certain properties from being serialized, use the property. When one property is set as serializable and non-serializable, which is common when wildcards are used, the property has precedence. However, precedence also depends on how many wildcards were used when a property was specified. + + By default, serializable properties are reset to their defaults before they are loaded. This behavior can be changed using the property. The method can also be used to explicitly reset chart properties to their default values. + ]]> @@ -83,18 +83,18 @@ Gets or sets the type of chart content to be serialized. A enumeration value that represents the chart content that will be serialized during a load, save or reset operation. By default, all non-default chart properties, including data, are persisted. - property. Note that the and properties can also be used along with the property. - + property. Note that the and properties can also be used along with the property. + > [!IMPORTANT] - > The property determines types of chart characteristics, such as "appearance", to be serialized, and is actually implemented internally as the property. This means that setting the property and then setting the property will result in the property value being overridden, unless is concatenated. See the sample code below for an example of this procedure. - - If you set the property, all and objects names will automatically be serialized; this means that serialized data that pertains to chart areas and series will be applied to existing objects when loaded. - - Setting this property affects all load, save and reset operations. - + > The property determines types of chart characteristics, such as "appearance", to be serialized, and is actually implemented internally as the property. This means that setting the property and then setting the property will result in the property value being overridden, unless is concatenated. See the sample code below for an example of this procedure. + + If you set the property, all and objects names will automatically be serialized; this means that serialized data that pertains to chart areas and series will be applied to existing objects when loaded. + + Setting this property affects all load, save and reset operations. + ]]> @@ -128,13 +128,13 @@ Gets or sets the format used when the chart is serialized. A enumeration value that represents the format of the serialized data. The default value is XML. - @@ -282,17 +282,17 @@ An object derived from the class, for example, a object. Loads serialized data into the control from an object derived from the class. - control. - - When a load operation occurs, serializable properties are, by default, first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. - - By default, all serialized chart properties will be loaded. To load specific serialized properties, set the , or properties before loading the data. - - Note that when data is saved using a `Save` method, only those properties that have non-default values are actually serialized. - + control. + + When a load operation occurs, serializable properties are, by default, first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. + + By default, all serialized chart properties will be loaded. To load specific serialized properties, set the , or properties before loading the data. + + Note that when data is saved using a `Save` method, only those properties that have non-default values are actually serialized. + ]]> @@ -319,19 +319,19 @@ A reader, such as , that is derived from the abstract class. Loads serialized data into the control from a reader object that derives from the class. - control. - - When a load operation occurs, by default the serializable properties are first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. - - By default, all serialized chart properties will be loaded. By setting the , or properties, a specific set of properties can be loaded. - - If you use this definition, note that the format, which is set by the property, must be XML. - - If the property of the control is used to persist state, this method can be used to load the serialized data that is posted by the client back to the control. - + control. + + When a load operation occurs, by default the serializable properties are first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. + + By default, all serialized chart properties will be loaded. By setting the , or properties, a specific set of properties can be loaded. + + If you use this definition, note that the format, which is set by the property, must be XML. + + If the property of the control is used to persist state, this method can be used to load the serialized data that is posted by the client back to the control. + ]]> @@ -358,17 +358,17 @@ The relative or absolute path of the file used to store the serialized data. If a relative path is specified, the path will be relative to the current directory. Loads serialized data saved to disk into the control. - control. - - When a load operation occurs, serializable properties are, by default, first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. - - By default, all serialized chart properties will be loaded. To load specific serialized properties, set the , or properties before loading the data. - - Note that when data is saved using a `Save` method, only those properties that have non-default values are actually serialized. - + control. + + When a load operation occurs, serializable properties are, by default, first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. + + By default, all serialized chart properties will be loaded. To load specific serialized properties, set the , or properties before loading the data. + + Note that when data is saved using a `Save` method, only those properties that have non-default values are actually serialized. + ]]> @@ -395,19 +395,19 @@ An object from which to read the persisted data. The object is derived from the class, and can be a .NET Framework object or a user-defined object. Loads serialized data into the control from an object derived from the class. - control. - - When a load operation occurs, by default serializable properties are first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. - - By default, all serialized chart properties will be loaded. If you set the , or properties, a specific set of properties can be loaded. - - When you use this definition, the format must be XML; it can be changed with the property. - - When you work with XML format text files, for simplicity use the method instead. - + control. + + When a load operation occurs, by default serializable properties are first reset to their default values before they are set to the persisted values, if saved. To change this behavior, use the property. + + By default, all serialized chart properties will be loaded. If you set the , or properties, a specific set of properties can be loaded. + + When you use this definition, the format must be XML; it can be changed with the property. + + When you work with XML format text files, for simplicity use the method instead. + ]]> @@ -437,19 +437,19 @@ Gets or sets the chart properties that will not be serialized. A comma-separated expression that represents the chart properties that will not be serialized. The syntax is "Class.Property[,Class.Property]". - property to limit chart characteristics to be serialized, along with the and properties. - - This property determines which chart characteristics will not be serialized. Wildcards can be used in the string expression, in the same manner as the property. For example, to exclude all chart `BackColor` properties from serialization, set this property to "*.BackColor". - - Sometimes, a property can be set to be both serialized and not serialized, which is common when wildcards are used. The expression has a lower priority when compared to the expression. However, note that less weight is given to string expressions that use wildcards. For example, if the property is set to "*.BackColor" and the property is set to , all B`ackColor` properties except for objects will be serialized. - - If the property has been set, the priority depends on how many wild cards are used in the expression. For example, setting the property to will result in the property containing a "\*.Back\*" expression. If the property is set to "\*.Back\*", all `Back*` chart properties such as `BackColor`, `BackGradient`, and so forth, will still be serialized. This is because the property value has higher priority when compared to the property. - - This property affects all save, load and reset operations. - + property to limit chart characteristics to be serialized, along with the and properties. + + This property determines which chart characteristics will not be serialized. Wildcards can be used in the string expression, in the same manner as the property. For example, to exclude all chart `BackColor` properties from serialization, set this property to "*.BackColor". + + Sometimes, a property can be set to be both serialized and not serialized, which is common when wildcards are used. The expression has a lower priority when compared to the expression. However, note that less weight is given to string expressions that use wildcards. For example, if the property is set to "*.BackColor" and the property is set to , all B`ackColor` properties except for objects will be serialized. + + If the property has been set, the priority depends on how many wild cards are used in the expression. For example, setting the property to will result in the property containing a "\*.Back\*" expression. If the property is set to "\*.Back\*", all `Back*` chart properties such as `BackColor`, `BackGradient`, and so forth, will still be serialized. This is because the property value has higher priority when compared to the property. + + This property affects all save, load and reset operations. + ]]> @@ -473,15 +473,15 @@ Resets all chart properties marked for serialization. - , and properties. - - Note that this method is also called automatically when a `Load` method is used and the property is set to `true`. - + , and properties. + + Note that this method is also called automatically when a `Load` method is used and the property is set to `true`. + ]]> @@ -517,19 +517,19 @@ An object derived from the class, such as , that is used to save chart properties. Saves chart data and properties with non-default values to an object that derives from the class. - , and properties. - - If this method is used to save appearance properties as a template, make sure that the property of the object is first set to `true` before calling this method. - - Serialization of a chart as a template occurs differently from non-template serialization; template serialization concentrates on Appearance properties. - - When a template is serialized, the method can be used to load the template, to provide the Appearance properties for a chart. - - Templates can be used to simulate custom palettes. - + , and properties. + + If this method is used to save appearance properties as a template, make sure that the property of the object is first set to `true` before calling this method. + + Serialization of a chart as a template occurs differently from non-template serialization; template serialization concentrates on Appearance properties. + + When a template is serialized, the method can be used to load the template, to provide the Appearance properties for a chart. + + Templates can be used to simulate custom palettes. + ]]> @@ -556,15 +556,15 @@ An object derived from class, for example, , that is used to save chart properties. Saves chart data and properties with non-default values to the given object that is derived from the class. - , and properties. - - When you use this definition, the format must be XML; the format can be set with the property. - - If the property of the control is used to persist state, this method can be used to save the serialized data to an object derived from , which is then used to write the data to the property. - + , and properties. + + When you use this definition, the format must be XML; the format can be set with the property. + + If the property of the control is used to persist state, this method can be used to save the serialized data to an object derived from , which is then used to write the data to the property. + ]]> @@ -591,23 +591,23 @@ The relative or absolute path of the file used to store the serialized data. Note that if a relative path is specified, the path will be relative to the current directory. Saves chart data and properties with non-default values to the given file. - , and properties. - - By default data is saved in an XML format. To save the data in a binary format, use the property. - - Note that Write permissions must be enabled for the directory in which the file is stored. By default, this is the Bin folder of the application. - - If this method is being used to save Appearance properties as a template, make sure that the property is first set to `true` before calling this method. - - Serialization of a chart as a template proceeds differently from non-template serialization, primarily because template serialization concentrates on Appearance properties. - - When a template is serialized, the method can be used to load the template, to provide the Appearance properties for a chart. - - Templates can be used to simulate custom palettes. - + , and properties. + + By default data is saved in an XML format. To save the data in a binary format, use the property. + + Note that Write permissions must be enabled for the directory in which the file is stored. By default, this is the Bin folder of the application. + + If this method is being used to save Appearance properties as a template, make sure that the property is first set to `true` before calling this method. + + Serialization of a chart as a template proceeds differently from non-template serialization, primarily because template serialization concentrates on Appearance properties. + + When a template is serialized, the method can be used to load the template, to provide the Appearance properties for a chart. + + Templates can be used to simulate custom palettes. + ]]> @@ -634,15 +634,15 @@ An object derived from used to save properties. Saves chart data and properties with non-default values to the given object that is derived from the class. - , and properties. - - When you use this definition, the format must be XML; the format can be changed with the property. - - When you work with XML format text files, for simplicity use the method instead. - + , and properties. + + When you use this definition, the format must be XML; the format can be changed with the property. + + When you work with XML format text files, for simplicity use the method instead. + ]]> @@ -672,21 +672,21 @@ Gets or sets the chart properties that can be serialized. A comma-separated expression that represents the chart properties to be serialized. The syntax is "Class.Property[,Class.Property]". - property to limit chart characteristics to be serialized, along with the and properties. - - The property determines which chart characteristics will be serialized. Wildcards can be used in the string expression, in the same manner as the property. For example, to serialize all chart `BackColor` properties, set this property to "*.BackColor". - - If and/or child properties are specified, then the names of all and objects must be also specified to enable the persisted data to be applied to existing and objects; that is, you must specify "Series.Name" and "ChartArea.Name" expressions. See the sample code below for an example of this procedure. Similarly, if multiple chart areas are being used, the property of all plotted must also be saved. - - Sometimes, a property can be set to be both serialized and not serialized, which is common when wildcards are used. The expression has a lower priority when compared to the expression. However, note that less weight is given to string expressions that use wildcards. For example, if the property is set to "*.BackColor" and the property is set to , all B`ackColor` properties except for objects will be serialized. - - If you set the property, the property will be set internally. If the property is already set but another property needs to be serialized, make sure to concatenate the property when specifying that extra property. See the sample code below for an example of this procedure. - - This property affects all save, load and reset operations. - + property to limit chart characteristics to be serialized, along with the and properties. + + The property determines which chart characteristics will be serialized. Wildcards can be used in the string expression, in the same manner as the property. For example, to serialize all chart `BackColor` properties, set this property to "*.BackColor". + + If and/or child properties are specified, then the names of all and objects must be also specified to enable the persisted data to be applied to existing and objects; that is, you must specify "Series.Name" and "ChartArea.Name" expressions. See the sample code below for an example of this procedure. Similarly, if multiple chart areas are being used, the property of all plotted must also be saved. + + Sometimes, a property can be set to be both serialized and not serialized, which is common when wildcards are used. The expression has a lower priority when compared to the expression. However, note that less weight is given to string expressions that use wildcards. For example, if the property is set to "*.BackColor" and the property is set to , all B`ackColor` properties except for objects will be serialized. + + If you set the property, the property will be set internally. If the property is already set but another property needs to be serialized, make sure to concatenate the property when specifying that extra property. See the sample code below for an example of this procedure. + + This property affects all save, load and reset operations. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/CompareMethod.xml b/xml/System.Web.UI.DataVisualization.Charting/CompareMethod.xml index c4b007230ed..9990aa5a4d3 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/CompareMethod.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/CompareMethod.xml @@ -15,14 +15,14 @@ Specifies the type of comparison to be used when filtering data. This enumeration is used by the Filter method definitions in the class that take the argument. - enumeration represents a comparison type for certain filtering operations. - + enumeration represents a comparison type for certain filtering operations. + > [!NOTE] -> By default, if the filtering criteria are met, a data point is either removed or marked as empty. However, data points can be filtered even if they do not match the filtering criteria, by setting the property to `false`. - +> By default, if the filtering criteria are met, a data point is either removed or marked as empty. However, data points can be filtered even if they do not match the filtering criteria, by setting the property to `false`. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/CustomLabelsCollection.xml b/xml/System.Web.UI.DataVisualization.Charting/CustomLabelsCollection.xml index e67b340bea3..aafce124403 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/CustomLabelsCollection.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/CustomLabelsCollection.xml @@ -19,16 +19,16 @@ Represents a collection of objects. - class represents a collection of objects, which in turn represent the custom labels that an object can use. This class is exposed as the collection property of an object. - + class represents a collection of objects, which in turn represent the custom labels that an object can use. This class is exposed as the collection property of an object. + > [!NOTE] -> You can automatically populate the entire label row of an axis with custom labels using any method definition that includes a `DateTimeIntervalType` argument. - - The property indicates the total number of items in the collection, and is commonly used to find the upper bound of the collection. - +> You can automatically populate the entire label row of an axis with custom labels using any method definition that includes a `DateTimeIntervalType` argument. + + The property indicates the total number of items in the collection, and is commonly used to find the upper bound of the collection. + ]]> @@ -72,16 +72,16 @@ A enumeration value that determines the interval type. Adds multiple objects of type to the collection. Populates the entire first row of an axis with labels. - method creates and initializes objects for the entire first label row of an axis with labels of the specified type. - - The `labelsStep` parameter determines how often the custom labels will be drawn. - + method creates and initializes objects for the entire first label row of an axis with labels of the specified type. + + The `labelsStep` parameter determines how often the custom labels will be drawn. + > [!NOTE] -> The method must be called prior to calling this particular method definition. - +> The method must be called prior to calling this particular method definition. + ]]> @@ -113,16 +113,16 @@ Adds a object to the collection, using the given axis range and text. The newly added object. - [!NOTE] -> The method must be called prior to calling this particular method definition. - +> The method must be called prior to calling this particular method definition. + ]]> @@ -159,16 +159,16 @@ A value that determines the format of the custom label. For more information, see Date and Time Format Strings. Adds multiple objects to the collection. Populates the entire first row of an axis with labels with the specified format. - objects for an axis' entire first label row with labels of the specified type. - - The step determines how often the custom labels will be drawn, and optional label formatting can be specified as well. - + objects for an axis' entire first label row with labels of the specified type. + + The step determines how often the custom labels will be drawn, and optional label formatting can be specified as well. + > [!NOTE] -> The method must be called prior to calling this particular method definition. - +> The method must be called prior to calling this particular method definition. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/CustomizeLegendEventArgs.xml b/xml/System.Web.UI.DataVisualization.Charting/CustomizeLegendEventArgs.xml index 3070b499528..029bfab7c87 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/CustomizeLegendEventArgs.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/CustomizeLegendEventArgs.xml @@ -16,15 +16,15 @@ Provides data for the event of the control. - class is used in the event. - - There are only two properties in this class. The property allows you to delete or modify both default and custom legend items, and to add custom legend items. This property can also be used to change the order of legend items. - - The property is used to identify the legend that raised this event. - + class is used in the event. + + There are only two properties in this class. The property allows you to delete or modify both default and custom legend items, and to add custom legend items. This property can also be used to change the order of legend items. + + The property is used to identify the legend that raised this event. + ]]> @@ -107,16 +107,16 @@ Used to remove, modify or change the order of both custom and default legend items in the event. Can also be used to add custom legend items. A object. - property allows you to delete or modify both default and custom legend items in the event, and to add custom legend items. The order of legend items can also be changed. - + property allows you to delete or modify both default and custom legend items in the event, and to add custom legend items. The order of legend items can also be changed. + > [!NOTE] -> The and properties can be used to determine the data element that is associated with a default legend item. These properties will return zero-length strings for custom legend items, because custom items are not associated with chart data. - - This property enables you to determine which the event was raised for, which enables you to customize an individual . - +> The and properties can be used to determine the data element that is associated with a default legend item. These properties will return zero-length strings for custom legend items, because custom items are not associated with chart data. + + This property enables you to determine which the event was raised for, which enables you to customize an individual . + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/CustomizeMapAreasEventArgs.xml b/xml/System.Web.UI.DataVisualization.Charting/CustomizeMapAreasEventArgs.xml index 29000650338..2dbe46a8363 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/CustomizeMapAreasEventArgs.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/CustomizeMapAreasEventArgs.xml @@ -16,17 +16,17 @@ Provides data for the CustomizeMapAreas event of the control. - event of the Chart control. - - The only property of this class is the s property, which enables developers to: - -- Delete or customize map areas that have been created for a chart object; any , , or object that has a non-empty `Url`, `MapAreaAttributes` or `ToolTip` property will have an associated map area object. - -- Add custom map areas that have a user-defined shape and coordinates. - + event of the Chart control. + + The only property of this class is the s property, which enables developers to: + +- Delete or customize map areas that have been created for a chart object; any , , or object that has a non-empty `Url`, `MapAreaAttributes` or `ToolTip` property will have an associated map area object. + +- Add custom map areas that have a user-defined shape and coordinates. + ]]> @@ -83,15 +83,15 @@ Gets or sets a object. Can be used to remove or modify map areas that correspond to a chart object, or to add custom map areas. A object. - , , or object that has a non-empty `Url`, `MapAreaAttributes` or `ToolTip` property will have an associated map area object. - -- Add custom map areas that have a user-defined shape and coordinates. - + , , or object that has a non-empty `Url`, `MapAreaAttributes` or `ToolTip` property will have an associated map area object. + +- Add custom map areas that have a user-defined shape and coordinates. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/DataManipulator.xml b/xml/System.Web.UI.DataVisualization.Charting/DataManipulator.xml index 65a56cc829c..81530d0a005 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/DataManipulator.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/DataManipulator.xml @@ -1490,18 +1490,18 @@ A comma-separated list of names of the to be sorted. Performs a custom sort on one or more series. - method of the interface, perform the comparison(s) and then return `true` or `false`. The sort order is determined by the return value. - - Note that if multiple series are sorted, the series must be aligned, otherwise an exception will be thrown. - - The two object parameters of the method must always be of type . - + method of the interface, perform the comparison(s) and then return `true` or `false`. The sort order is determined by the return value. + + Note that if multiple series are sorted, the series must be aligned, otherwise an exception will be thrown. + + The two object parameters of the method must always be of type . + > [!IMPORTANT] -> All data points, regardless of the series they belong to, are sorted based on the first series; if the position of a data point in the first series changes, all corresponding points in the other series change as well. - +> All data points, regardless of the series they belong to, are sorted based on the first series; if the position of a data point in the first series changes, all corresponding points in the other series change as well. + ]]> @@ -1530,15 +1530,15 @@ The object to be sorted. Performs a custom sort on the data points in a series. - method of the interface, perform the comparison(s) and then return `true` or `false`. The sort order is determined by the return value. - - The two object parameters of the method must always be of type . - - To perform a custom sort for more than one series per function call, use the method. - + method of the interface, perform the comparison(s) and then return `true` or `false`. The sort order is determined by the return value. + + The two object parameters of the method must always be of type . + + To perform a custom sort for more than one series per function call, use the method. + ]]> @@ -1621,18 +1621,18 @@ A comma-separated list of names of the to be sorted. Sorts the data points of one or more series in the specified order. The sort can be based on any available data point value. - [!IMPORTANT] -> All series will be sorted using the specified Y-value from the FIRST listed series; that is, all data points, regardless of the series they belong to, are sorted based on the first series. - - To sort points using a custom sort routine, use a different definition of this overloaded method. - +> All series will be sorted using the specified Y-value from the FIRST listed series; that is, all data points, regardless of the series they belong to, are sorted based on the first series. + + To sort points using a custom sort routine, use a different definition of this overloaded method. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/DataPoint.xml b/xml/System.Web.UI.DataVisualization.Charting/DataPoint.xml index 9c8fe352f64..aa9ae6d2748 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/DataPoint.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/DataPoint.xml @@ -445,7 +445,7 @@ The following .NET types can be used for the object type parameter: This property returns an array of `double` values when used to retrieve multiple Y-values. > [!IMPORTANT] -> The property determines the maximum number of Y-values that all data points in a can have. If you specify more than the allowable number of Y-values, an exception will be raised. +> The property determines the maximum number of Y-values that all data points in a can have. If you specify more than the allowable number of Y-values, an exception will be raised. The following .NET Framework types can be used for the object type parameter: diff --git a/xml/System.Web.UI.DataVisualization.Charting/DataPointCollection.xml b/xml/System.Web.UI.DataVisualization.Charting/DataPointCollection.xml index 0c145d19283..b3b5a8bba09 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/DataPointCollection.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/DataPointCollection.xml @@ -366,15 +366,15 @@ The following .NET types can be used for the object type parameters: The following is a list of objects that you can use as the data source parameter: -- DataView +- DataView -- Data readers (SQL, OleDB) +- Data readers (SQL, OleDB) -- Arrays +- Arrays -- Lists +- Lists -- All other objects that use the interface. +- All other objects that use the interface. ]]> @@ -421,15 +421,15 @@ The following .NET types can be used for the object type parameters: The following is a list of objects that you can use as the data source parameter: -- DataView +- DataView -- Data readers (SQL, OleDB) +- Data readers (SQL, OleDB) -- Arrays +- Arrays -- Lists +- Lists -- All other objects that use the interface. +- All other objects that use the interface. ]]> @@ -494,15 +494,15 @@ The following .NET types can be used for the object type parameters: The following is a list of objects that you can use as the data source: -- DataView +- DataView -- Data readers (SQL, OleDB) +- Data readers (SQL, OleDB) -- Arrays +- Arrays -- Lists +- Lists -- All other objects that use the interface. +- All other objects that use the interface. ]]> @@ -551,15 +551,15 @@ The following .NET types can be used for the object type parameters: The following is a list of objects that you can use as the data source: -- DataView +- DataView -- Data readers (SQL, OleDB) +- Data readers (SQL, OleDB) -- Arrays +- Arrays -- Lists +- Lists -- All other objects that use the interface. +- All other objects that use the interface. ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/ElementPosition.xml b/xml/System.Web.UI.DataVisualization.Charting/ElementPosition.xml index afa47804980..c0e8a29cee2 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/ElementPosition.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/ElementPosition.xml @@ -22,25 +22,25 @@ Represents the base class for many visual elements of the chart such as the legend, title, and chart areas. Defines the position of the chart element in relative coordinates, which range from (0,0) to (100,100). - class is used to define the position of a chart element, and represents one rectangle using the , , and properties. - - The class is always exposed as a `Position` property, such as , , and so forth. It is also exposed in the and events of the control as a property of the object. - - The position of the applicable chart elements can be set automatically by setting the property to `true`; chart elements can also be positioned at design time in the Design View. - - There are two major differences between this class and a structure: - -- This class can use automatic positioning. - -- This class only uses coordinates ranging from 0 to 100, otherwise an exception is thrown. - - The position of chart elements is described using relative coordinates, with the top-left corner of an element having coordinates of (0,0) and the bottom-right corner of an element having coordinates of (100,100). - - Elements that are plotted within a chart area use coordinates that are relative to the chart area, whereas elements outside a chart area use coordinates that are relative to the chart image. - + class is used to define the position of a chart element, and represents one rectangle using the , , and properties. + + The class is always exposed as a `Position` property, such as , , and so forth. It is also exposed in the and events of the control as a property of the object. + + The position of the applicable chart elements can be set automatically by setting the property to `true`; chart elements can also be positioned at design time in the Design View. + + There are two major differences between this class and a structure: + +- This class can use automatic positioning. + +- This class only uses coordinates ranging from 0 to 100, otherwise an exception is thrown. + + The position of chart elements is described using relative coordinates, with the top-left corner of an element having coordinates of (0,0) and the bottom-right corner of an element having coordinates of (100,100). + + Elements that are plotted within a chart area use coordinates that are relative to the chart area, whereas elements outside a chart area use coordinates that are relative to the chart image. + ]]> @@ -144,11 +144,11 @@ if the chart element will be positioned automatically by the chart control; otherwise, . - property to . - + property to . + ]]> @@ -178,13 +178,13 @@ Gets the bottom position of a chart element, in relative coordinates. A value that represents the bottom position of the chart element. - object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. - - Chart coordinates use (0,0) for a top-left corner, and (100,100) for a bottom-right corner. - + object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. + + Chart coordinates use (0,0) for a top-left corner, and (100,100) for a bottom-right corner. + ]]> @@ -258,11 +258,11 @@ Gets or sets the height of a chart element. A value that represents the height of the chart element. - @@ -292,15 +292,15 @@ Gets the position of the right side of a chart element, in relative coordinates. A value that represents the position of the right side of a chart element. - object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. - - Chart coordinates use (0,0) for a top-left corner, and (100,100) for a bottom-right corner. - + object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. + + Chart coordinates use (0,0) for a top-left corner, and (100,100) for a bottom-right corner. + ]]> @@ -352,11 +352,11 @@ Returns a object that represents the coordinates of an object. A structure that represents the coordinates of an element position object. - structure. - + structure. + ]]> @@ -406,11 +406,11 @@ Gets or sets the width of a chart element. A value that represents the width of a chart element. - @@ -460,13 +460,13 @@ Gets or sets the relative X-coordinate of the top-left corner of an applicable chart element. A value that represents the X-coordinate of the top-left corner of an applicable chart element. - property is always expressed in relative coordinates, and is either relative to a object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. - - This property always uses relative coordinates; if you set a value outside the 0-100 pixel range, an exception will be thrown. - + property is always expressed in relative coordinates, and is either relative to a object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. + + This property always uses relative coordinates; if you set a value outside the 0-100 pixel range, an exception will be thrown. + ]]> @@ -516,13 +516,13 @@ Gets or sets the relative Y-coordinate of the top-left corner of an applicable chart element. A value that represents the Y-coordinate of the top-left corner of an applicable chart element. - property is always expressed in relative coordinates, and is either relative to a object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. - - This property always uses relative coordinates; if you set a value outside the 0-100 pixel range, an exception will be thrown. - + property is always expressed in relative coordinates, and is either relative to a object if plotted within a chart area, or relative to the entire chart image if plotted outside of a chart area element. + + This property always uses relative coordinates; if you set a value outside the 0-100 pixel range, an exception will be thrown. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/Grid.xml b/xml/System.Web.UI.DataVisualization.Charting/Grid.xml index 3d98e4d878c..2b7cc953fa7 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/Grid.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/Grid.xml @@ -22,25 +22,25 @@ Provides methods and properties that manage the major and minor grids of objects. - and properties of each object. - - Major grid lines by default do not have their , , , and properties set. When these properties for major grid lines are not set, the control determines the appropriate values for grid lines automatically. - - The axis and its minor grid lines by default have their , , , and properties set to **Auto** (0). If axis labels or minor grid lines are enabled and these properties are not modified, the control automatically determines how often to draw the minor grid lines. - - Axis grids: - -- Can be enabled or disabled. - -- Have a starting point that determines where they are first drawn. - -- Display lines that can be set for style, width and color. - -- Can have either automatic intervals, or intervals that are set manually. - + and properties of each object. + + Major grid lines by default do not have their , , , and properties set. When these properties for major grid lines are not set, the control determines the appropriate values for grid lines automatically. + + The axis and its minor grid lines by default have their , , , and properties set to **Auto** (0). If axis labels or minor grid lines are enabled and these properties are not modified, the control automatically determines how often to draw the minor grid lines. + + Axis grids: + +- Can be enabled or disabled. + +- Have a starting point that determines where they are first drawn. + +- Display lines that can be set for style, width and color. + +- Can have either automatic intervals, or intervals that are set manually. + ]]> @@ -96,15 +96,15 @@ if enabled, if disabled. The default is for major grid objects and for minor grid objects. - property to . - + property to . + ]]> @@ -150,19 +150,19 @@ Gets or sets the interval between major or minor grid lines. A value that represents the interval between grid lines. By default, the value is not set () for major grid lines. For minor grid lines, the default value is zero (0). - at design time, or by assigning a value of at run time - the actual value of this property is determined by the property of the object to which the chart element, such as a grid line or tick mark, belongs. - - The interval of minor tick marks and grid lines is never affected by the property value. - - The interval is measured in axis units, and determines how often an applicable chart element is drawn. For example, suppose a column chart has an X axis step of 1 (that is, 1, 2, 3, 4, and so forth); if you set the property for the X axis to 2, an axis label will be displayed for every other column. - - The same holds true for all applicable chart elements. In other words, if in the previous example strip lines were being used, with an of 0.5, and their property was 2, a strip line would be displayed at 0.5, 2.5, 4.5, and so on. - - If you set a chart element `Interval` property to zero, an interval will be automatically determined by the control. - + at design time, or by assigning a value of at run time - the actual value of this property is determined by the property of the object to which the chart element, such as a grid line or tick mark, belongs. + + The interval of minor tick marks and grid lines is never affected by the property value. + + The interval is measured in axis units, and determines how often an applicable chart element is drawn. For example, suppose a column chart has an X axis step of 1 (that is, 1, 2, 3, 4, and so forth); if you set the property for the X axis to 2, an axis label will be displayed for every other column. + + The same holds true for all applicable chart elements. In other words, if in the previous example strip lines were being used, with an of 0.5, and their property was 2, a strip line would be displayed at 0.5, 2.5, 4.5, and so on. + + If you set a chart element `Interval` property to zero, an interval will be automatically determined by the control. + ]]> @@ -204,17 +204,17 @@ Gets or sets the offset of grid lines. A value that represents the interval offset. - at run time - the actual value of this property is determined by the property of the object that the chart element, such as a grid line or a tick mark, belongs to. - - The interval offset of minor tick marks and grid lines is never affected by the value of the property of the object. - - The property setting defines the units of measurement of the offset. - - The can be a negative value. - + at run time - the actual value of this property is determined by the property of the object that the chart element, such as a grid line or a tick mark, belongs to. + + The interval offset of minor tick marks and grid lines is never affected by the value of the property of the object. + + The property setting defines the units of measurement of the offset. + + The can be a negative value. + ]]> @@ -256,15 +256,15 @@ Gets or sets the interval offset type of major and minor grid lines. A enumeration value that indicates the interval type. By default it is not set for major grid lines. The default value for minor grid lines is . - at run time - the actual value of this property is determined by the property of the object that the chart element - a grid line or tick mark, for example - belongs to. - - The interval offset type of minor tick marks and grid lines is never affected by the property value. - - If this interval offset type is set to , the property will be used. - + at run time - the actual value of this property is determined by the property of the object that the chart element - a grid line or tick mark, for example - belongs to. + + The interval offset type of minor tick marks and grid lines is never affected by the property value. + + If this interval offset type is set to , the property will be used. + ]]> @@ -306,22 +306,22 @@ Gets or sets the interval type for major or minor grid lines. A enumeration value that indicates the interval type. By default it is not set for axis labels, major tick marks and major grid lines, by using the enumeration value. The default value for minor tick marks and grid lines is . - at run time - the actual value of this property is determined by the property of the object that the chart element - a grid line or tick mark, for example - belongs to. - - The interval type of minor tick marks and grid lines is never affected by the value of the property. - - Interval types can be set to ; the type of interval then depends on either the X-values or Y-values of the plotted objects, depending on which axis the applicable elements belong to. - - Setting the property for a value axis will only have an effect if the values of the data points are or `double` values. Also, the or property of the plotted must be set to or . - - Setting the property for a categorical axis will only have an effect if the property (or property, depending on the axis in question) of the plotted object is either or . - + at run time - the actual value of this property is determined by the property of the object that the chart element - a grid line or tick mark, for example - belongs to. + + The interval type of minor tick marks and grid lines is never affected by the value of the property. + + Interval types can be set to ; the type of interval then depends on either the X-values or Y-values of the plotted objects, depending on which axis the applicable elements belong to. + + Setting the property for a value axis will only have an effect if the values of the data points are or `double` values. Also, the or property of the plotted must be set to or . + + Setting the property for a categorical axis will only have an effect if the property (or property, depending on the axis in question) of the plotted object is either or . + > [!NOTE] -> Sunday is considered the first day of the week. - +> Sunday is considered the first day of the week. + ]]> @@ -375,11 +375,11 @@ Gets or sets the line color of a grid. A object. The default value is . - property is used to specify the color of major and minor tick marks or grids. - + property is used to specify the color of major and minor tick marks or grids. + ]]> @@ -421,11 +421,11 @@ Gets or sets the line style of a grid. A enumeration value. The default is . - property can be used to specify the line style of major and minor tick marks or grids. The line can be solid, dotted, and so forth. - + property can be used to specify the line style of major and minor tick marks or grids. The line can be solid, dotted, and so forth. + ]]> @@ -467,11 +467,11 @@ Gets or sets the line width of major and minor grid lines. An that represents the line width in pixels. The default value is one (1). - property can be used to specify the line width, in pixels, of major and minor tick marks or grids. - + property can be used to specify the line width, in pixels, of major and minor tick marks or grids. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/HitTestResult.xml b/xml/System.Web.UI.DataVisualization.Charting/HitTestResult.xml index 55eada4abc4..091f1e2af7d 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/HitTestResult.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/HitTestResult.xml @@ -16,21 +16,21 @@ Represents the results of a hit test. - class represents the results of a hit test, and is exposed as the return object from a method call. - - A hit test checks a specified point in the chart to determine if a chart element is located at that point. If a chart element is detected, the class is used to obtain information about that chart element. - - If a chart element is found, the property returns a reference to the chart element; the only exception to this being objects, in which case the return value of this property is `null`. - - If a data point is located, you can use the property to get the index of that data point; that is, the zero-based index of the point in the . Use the property to get the associated object for that data point. - - The and properties are used to get the associated chart area and axis of the chart element - if any - returned by the hit test. Note that these properties may be `null` if the returned chart element does not have an associated chart area or axis. - - Use the property to determine the type of the chart element returned by a hit test. - + class represents the results of a hit test, and is exposed as the return object from a method call. + + A hit test checks a specified point in the chart to determine if a chart element is located at that point. If a chart element is detected, the class is used to obtain information about that chart element. + + If a chart element is found, the property returns a reference to the chart element; the only exception to this being objects, in which case the return value of this property is `null`. + + If a data point is located, you can use the property to get the index of that data point; that is, the zero-based index of the point in the . Use the property to get the associated object for that data point. + + The and properties are used to get the associated chart area and axis of the chart element - if any - returned by the hit test. Note that these properties may be `null` if the returned chart element does not have an associated chart area or axis. + + Use the property to determine the type of the chart element returned by a hit test. + ]]> @@ -81,13 +81,13 @@ Gets or sets the object that may be associated with a chart element returned by a hit test. The presence of an associated object depends on whether a chart element was detected at the given location, and the type of chart element returned. An object, otherwise . The default value is . - property will reference the object with which the returned chart object is associated. Otherwise this property will be `null`. - - Note that the method can be called explicitly, in which case a chart element may or may not be at the specified location. - + property will reference the object with which the returned chart object is associated. Otherwise this property will be `null`. + + Note that the method can be called explicitly, in which case a chart element may or may not be at the specified location. + ]]> @@ -121,15 +121,15 @@ Gets or sets the object that may be associated with a chart element returned by a hit test. The presence of a object depends on whether a chart element was detected at the given location, and the type of chart element returned. A object, otherwise . The default value is . - property will reference the object that is associated with the returned chart element. - - If no chart element is returned by the hit test, the value of this property will be `null`. - - **Note** The method can be called explicitly, in which case a chart element may or may not be at the specified location. - + property will reference the object that is associated with the returned chart element. + + If no chart element is returned by the hit test, the value of this property will be `null`. + + **Note** The method can be called explicitly, in which case a chart element may or may not be at the specified location. + ]]> @@ -163,11 +163,11 @@ Gets or sets the type of chart element, if any, returned by a hit test. A enumeration value that indicates the type of chart element returned by a hit test. Defaults to . - @@ -201,14 +201,14 @@ Gets or sets the object, if any, returned by a hit test. An object of type , otherwise . - [!NOTE] -> If a data point is returned by the hit test, this property will still return a `null`. To obtain information about the data point, use the and properties instead. - +> If a data point is returned by the hit test, this property will still return a `null`. To obtain information about the data point, use the and properties instead. + ]]> @@ -242,15 +242,15 @@ Gets or sets the index of a data point, if any, returned by a hit test. An value that represents the index of a data point returned by a hit test. The default value is negative one (-1). - property will return the zero-based index of that data point, otherwise it will return a negative one (-1). - - All data points are stored in a , which is exposed as the collection property of a object; the index of the is zero-based. - - Use the property to determine the series to which the data point belongs. - + property will return the zero-based index of that data point, otherwise it will return a negative one (-1). + + All data points are stored in a , which is exposed as the collection property of a object; the index of the is zero-based. + + Use the property to determine the series to which the data point belongs. + ]]> @@ -284,13 +284,13 @@ Gets or sets the associated series of a data point, if any, returned by a hit test. The that a data point returned by a hit test belongs to. The default value is . - object that the data point belongs to. If no data point is returned by the hit test, the value of this property will be `null`. - - To determine the index of a returned data point, use the property. - + object that the data point belongs to. If no data point is returned by the hit test, the value of this property will be `null`. + + To determine the index of a returned data point, use the property. + ]]> @@ -324,11 +324,11 @@ Gets the sub-object, if any, returned by a hit test. A sub-object of type , otherwise . - object that is displayed inside a object. - + object that is displayed inside a object. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/IDataPointFilter.xml b/xml/System.Web.UI.DataVisualization.Charting/IDataPointFilter.xml index 15314d4db84..ceff48d45cc 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/IDataPointFilter.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/IDataPointFilter.xml @@ -13,21 +13,21 @@ Exposes the method, which allows data to be custom filtered. - interface exposes the method, which takes a specific data point within a series and returns a `Boolean` value that determines whether that data point will be filtered. - - To perform custom filtering: - -- Derive a new or existing class from this interface. - -- Override the method to provide the custom filtering logic. - -- To initiate the filtering operation, call one of the `Filter` methods in the class that takes an object as its first parameter. - - For sample source code, see the method. - + interface exposes the method, which takes a specific data point within a series and returns a `Boolean` value that determines whether that data point will be filtered. + + To perform custom filtering: + +- Derive a new or existing class from this interface. + +- Override the method to provide the custom filtering logic. + +- To initiate the filtering operation, call one of the `Filter` methods in the class that takes an object as its first parameter. + + For sample source code, see the method. + ]]> @@ -60,17 +60,17 @@ if the data point is removed; otherwise, . - interface and then implement this method. Provide custom criteria matching logic, then return `true` or `false` to mark the data points to be filtered. After this method has been implemented, use one of the `Filter` method definitions in the class that takes an object as a parameter to perform the filtering. - - Filtered points, by default, are removed from a series. They can also be displayed as empty points by setting the value of the property to `true`. - - Filtered points can also be marked as filtered if they do not match filtering criteria, as determined by the value. - + interface and then implement this method. Provide custom criteria matching logic, then return `true` or `false` to mark the data points to be filtered. After this method has been implemented, use one of the `Filter` method definitions in the class that takes an object as a parameter to perform the filtering. + + Filtered points, by default, are removed from a series. They can also be displayed as empty points by setting the value of the property to `true`. + + Filtered points can also be marked as filtered if they do not match filtering criteria, as determined by the value. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/Legend.xml b/xml/System.Web.UI.DataVisualization.Charting/Legend.xml index 3dfe99a4c8e..6a6087f3bc7 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/Legend.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/Legend.xml @@ -22,55 +22,55 @@ Represents the legend for the chart image. - class encapsulates all the functionality of the control's legend, and is exposed using the collection property of the root object. - - There can be any number of legends for a chart image. - - Legends can: - -- Be docked and aligned. - -- Be displayed inside or outside the plotted chart areas. - -- Automatically fit their contents. - -- Use a predefined style, such as row, column or table. - -- Use hatching, gradient colors and background images. - -- Be sized and positioned anywhere within the chart image. - - Legend items are represented by the object, and are either default or custom items. Custom items are not associated with data, and can be added, deleted and modified using the property. - - Default items are by default automatically added to the legend, and are the names of the plotted data points for doughnut and pie charts. - - For all other chart types, the default items are the names of the plotted data series. Each series has a property that defines the name of the legend that will be used. A legend item will not be created for a series if the property is set to `false`. The text for these default items can be changed using the property. This property will allow you to specify predefined keywords that will be replaced by their appropriate values at run-time. - - If you have a pie chart and you set the property, it will also set the legend text to the value you set for the labels. If you want to set the text to a different value, you can set the property. In most cases, you would want to set the property to "#AXISLABEL" or "#VALX". - - Legend series symbols are rectangles, dots or lines. The symbol type is set automatically by the chart and depends on the plotted chart type. - - Legend text by default is automatically sized. You can disable automatic sizing of legend text by disabling the property. When this property is set to `false`, the size of the legend text is determined by the Size property of the legend . If the property is enabled, the property determines the minimum font size that a legend item can have when resizing. - - The property defines a limit on the number of characters that can be shown on one line before text is wrapped to another line. If you do not wish to wrap text in the legend, set the value of the property to zero. By default, when the entire legend text does not fit in the legend, the text will be truncated. You can set the on the legend to get the text to wrap instead of being truncated. - - If the contents of the legend cannot fit into the given space, legend entries are truncated. An ellipsis is shown to indicate that there are more entries than the legend has space for. To prevent the legend items from being truncated, set the position and size of the legend using the property. When setting the legend position or size, the chart can no longer automatically position the elements in the chart. In some cases, you many need to manually position other chart elements to achieve the desired appearance. - - Another option would be to define your own cell columns instead of using the default legend settings. - - The object has a CellColumn Collection; each CellColumn object represents a column in the Legend. A cell column has and properties that can be used to adjust the size of the columns. - - When the legend contains many entries, can be used to improve readability. When this property is set to True, it will display a back color that you can set using the property. - - By default, the legend is positioned in the top-right corner of the chart. This position can be modified by using the and properties of the legend. The legend can also be associated with a chart area by use of the property. This property specifies the name of the chart area for which the legend should be docked. In addition, the property can be used to display the legend inside a chart area. - - When is set to False, the property defines the maximum size, in percent, of the legend within the available chart when the legend is automatically positioned. This property should be set if you wish to adjust the width or height of the legend after the docking properties have been set. - - The legend can be modified using the event. - + class encapsulates all the functionality of the control's legend, and is exposed using the collection property of the root object. + + There can be any number of legends for a chart image. + + Legends can: + +- Be docked and aligned. + +- Be displayed inside or outside the plotted chart areas. + +- Automatically fit their contents. + +- Use a predefined style, such as row, column or table. + +- Use hatching, gradient colors and background images. + +- Be sized and positioned anywhere within the chart image. + + Legend items are represented by the object, and are either default or custom items. Custom items are not associated with data, and can be added, deleted and modified using the property. + + Default items are by default automatically added to the legend, and are the names of the plotted data points for doughnut and pie charts. + + For all other chart types, the default items are the names of the plotted data series. Each series has a property that defines the name of the legend that will be used. A legend item will not be created for a series if the property is set to `false`. The text for these default items can be changed using the property. This property will allow you to specify predefined keywords that will be replaced by their appropriate values at run-time. + + If you have a pie chart and you set the property, it will also set the legend text to the value you set for the labels. If you want to set the text to a different value, you can set the property. In most cases, you would want to set the property to "#AXISLABEL" or "#VALX". + + Legend series symbols are rectangles, dots or lines. The symbol type is set automatically by the chart and depends on the plotted chart type. + + Legend text by default is automatically sized. You can disable automatic sizing of legend text by disabling the property. When this property is set to `false`, the size of the legend text is determined by the Size property of the legend . If the property is enabled, the property determines the minimum font size that a legend item can have when resizing. + + The property defines a limit on the number of characters that can be shown on one line before text is wrapped to another line. If you do not wish to wrap text in the legend, set the value of the property to zero. By default, when the entire legend text does not fit in the legend, the text will be truncated. You can set the on the legend to get the text to wrap instead of being truncated. + + If the contents of the legend cannot fit into the given space, legend entries are truncated. An ellipsis is shown to indicate that there are more entries than the legend has space for. To prevent the legend items from being truncated, set the position and size of the legend using the property. When setting the legend position or size, the chart can no longer automatically position the elements in the chart. In some cases, you many need to manually position other chart elements to achieve the desired appearance. + + Another option would be to define your own cell columns instead of using the default legend settings. + + The object has a CellColumn Collection; each CellColumn object represents a column in the Legend. A cell column has and properties that can be used to adjust the size of the columns. + + When the legend contains many entries, can be used to improve readability. When this property is set to True, it will display a back color that you can set using the property. + + By default, the legend is positioned in the top-right corner of the chart. This position can be modified by using the and properties of the legend. The legend can also be associated with a chart area by use of the property. This property specifies the name of the chart area for which the legend should be docked. In addition, the property can be used to display the legend inside a chart area. + + When is set to False, the property defines the maximum size, in percent, of the legend within the available chart when the legend is automatically positioned. This property should be set if you wish to adjust the width or height of the legend after the docking properties have been set. + + The legend can be modified using the event. + ]]> @@ -163,17 +163,17 @@ Gets or sets the alignment of the legend. A .NET Framework enumeration value that represents the alignment of the legend. The default value is . - , or ; its alignment is also affected by the property setting. - - If the legend is docked to the top or bottom, is to the left; if it is docked to the left or right, is at the top. The property setting is just the opposite, and aligns the legend to the right or the bottom, depending on where it is docked. - - always centers the legend, either vertically or horizontally. - - Setting the property will have no effect if the property is not set to . - + , or ; its alignment is also affected by the property setting. + + If the legend is docked to the top or bottom, is to the left; if it is docked to the left or right, is at the top. The property setting is just the opposite, and aligns the legend to the right or the bottom, depending on where it is docked. + + always centers the legend, either vertically or horizontally. + + Setting the property will have no effect if the property is not set to . + ]]> @@ -262,15 +262,15 @@ Gets or sets the background color of a legend. A value that represents the background color of a legend. The default color is . - value will be the first color used if you have specified gradient colors for the background. - - The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the legend. As a result, the background will be transparent. - + value will be the first color used if you have specified gradient colors for the background. + + The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the legend. As a result, the background will be transparent. + ]]> @@ -324,21 +324,21 @@ Gets or sets the orientation for the background gradient of a legend. Also determines whether a gradient is used. A enumeration that represents the orientation for the background gradient of a legend. The default value is . - property to determine whether a legend will display a gradient, and to determine the orientation of the gradient if one is used. - - For a listing of available patterns, refer to the enumeration. - - To use gradient colors: - - Set the primary color of the legend background with the property. - - Set the secondary color of the legend background with the property. - - Set this property to the desired gradient style. - + property to determine whether a legend will display a gradient, and to determine the orientation of the gradient if one is used. + + For a listing of available patterns, refer to the enumeration. + + To use gradient colors: + + Set the primary color of the legend background with the property. + + Set the secondary color of the legend background with the property. + + Set this property to the desired gradient style. + ]]> @@ -392,15 +392,15 @@ Gets or sets the hatching style of a legend. A enumeration that represents the hatching style of a legend. The default value is . - enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. - - For a listing of available hatching styles, refer to the enumeration. - - **Note** The color of hatching lines is determined by the property. - + enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. + + For a listing of available hatching styles, refer to the enumeration. + + **Note** The color of hatching lines is determined by the property. + ]]> @@ -454,19 +454,19 @@ Gets or sets the background image of a legend. A value that represents the URL of an image file. The default value is an empty string. - legend, and can be an absolute or relative URL. - - To position the image, use the and properties. - - You can also specify one of the colors displayed by the image as "transparent", by setting the property. - - An image can originate from any valid graphics file supported by .NET Framework, including icons. - - Background images take precedence over other background properties such as gradient color. - + legend, and can be an absolute or relative URL. + + To position the image, use the and properties. + + You can also specify one of the colors displayed by the image as "transparent", by setting the property. + + An image can originate from any valid graphics file supported by .NET Framework, including icons. + + Background images take precedence over other background properties such as gradient color. + ]]> @@ -512,11 +512,11 @@ Gets or sets the background image alignment used for the drawing mode. A enumeration value that represents the background image alignment. The default value is . - property is set to . - + property is set to . + ]]> @@ -617,17 +617,17 @@ Gets or sets the drawing mode of a legend background image. A enumeration value that represents the drawing mode of a legend background image. The default value is . - property determines how the image is displayed; the image can be tiled, scaled, and so forth. - - If an image is scaled, it will be stretched to fit within the bounds of the legend. If the image is tiled, it is repeatedly drawn, starting from the top-left corner of the legend. - - For more information about the available wrapping modes, see the enumeration topic. - - If the property is set to , the location where the image is drawn is determined by the property setting. - + property determines how the image is displayed; the image can be tiled, scaled, and so forth. + + If an image is scaled, it will be stretched to fit within the bounds of the legend. If the image is tiled, it is repeatedly drawn, starting from the top-left corner of the legend. + + For more information about the available wrapping modes, see the enumeration topic. + + If the property is set to , the location where the image is drawn is determined by the property setting. + ]]> @@ -685,23 +685,23 @@ Gets or sets the secondary color of a legend background. A value used for the secondary color of background with hatching or gradient fill. The default value is . - property determines the secondary background color of many objects, and is used when gradient colors are being applied. - - You can set to any valid ARGB (alpha, red, green, blue) value. - - If hatching is used, the property determines the color of the hatching lines for the legend. - - To use gradient colors for the background of a legend: - -- Set the primary color with the property. - -- Set the secondary color with the property. - -- Set the property to the desired gradient style. - + property determines the secondary background color of many objects, and is used when gradient colors are being applied. + + You can set to any valid ARGB (alpha, red, green, blue) value. + + If hatching is used, the property determines the color of the hatching lines for the legend. + + To use gradient colors for the background of a legend: + +- Set the primary color with the property. + +- Set the secondary color with the property. + +- Set the property to the desired gradient style. + ]]> @@ -759,11 +759,11 @@ Gets or sets the border color of a legend. A value that represents the border color of a legend. The default color is . - @@ -809,13 +809,13 @@ Gets or sets the border style of a legend. A enumeration value that determines the border style of the chart element. - property determines the line style to use for a border. The line can be solid, dotted, and so forth. - - For other border styles, see the enumeration topic. - + property determines the line style to use for a border. The line can be solid, dotted, and so forth. + + For other border styles, see the enumeration topic. + ]]> @@ -861,11 +861,11 @@ Gets or sets the border width of a legend. An value that determines the border width, in pixels, of the legend. - property can also set the width of lines in such elements as line charts, custom legend items displayed with a "line" style, and so forth. - + property can also set the width of lines in such elements as line charts, custom legend items displayed with a "line" style, and so forth. + ]]> @@ -954,15 +954,15 @@ Gets a object used for custom legend items. A object used for custom legend items. - event. - + event. + ]]> @@ -1080,13 +1080,13 @@ Gets or sets a value that determines where the legend is docked. A enumeration value that determines where the legend is docked. The default value is . - can be docked to the top, left, bottom or right of either the entire chart image, or the inside or outside of a chart area. If the property is set to `false`, docking applies to the entire chart image. If the property is set to `true`, docking applies to the object specified by the property - - This property has no effect if the property is not set to . - + can be docked to the top, left, bottom or right of either the entire chart image, or the inside or outside of a chart area. If the property is set to `false`, docking applies to the entire chart image. If the property is set to `true`, docking applies to the object specified by the property + + This property has no effect if the property is not set to . + ]]> @@ -1137,11 +1137,11 @@ if legend is enabled; otherwise, . The default value is . - @@ -1187,14 +1187,14 @@ Gets or sets a object, which is used to set font properties of the legend. A object which is used to set font properties of the legend. - object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. - + object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. + > [!NOTE] -> If you set the Legend.Font.Size property, the property will be set to false. Also, if you set the property to true, this property will be reset to its default, which is 8 points. - +> If you set the Legend.Font.Size property, the property will be set to false. Also, if you set the property to true, this property will be reset to its default, which is 8 points. + ]]> @@ -1252,11 +1252,11 @@ Gets or sets the color of the legend text. A value that represents the color of the legend text. - property is used to set the legend text color. - + property is used to set the legend text color. + ]]> @@ -1415,11 +1415,11 @@ Gets or sets a flag that indicates if legend rows will be drawn with interlaced background color. A value that determines whether alternating rows in the legend are drawn with a specified color. - property can be used to improve readability. When this property is set to `true`, the legend will display a background color for the rows that are interlaced, which can be set using the property. - + property can be used to improve readability. When this property is set to `true`, the legend will display a background color for the rows that are interlaced, which can be set using the property. + ]]> @@ -1465,11 +1465,11 @@ Gets or sets the background color of the legend's interlaced rows. A value that represents the background color of the legend's interlaced rows. - @@ -1516,14 +1516,14 @@ if the legend is docked inside the chart area; if it is docked outside the chart area. The default value is . - property is set to the name of a object. - + property is set to the name of a object. + > [!NOTE] -> If the property is set to any value other than , the property also has no effect. This is because the position of the legend is determined by the property setting. - +> If the property is set to any value other than , the property also has no effect. This is because the position of the legend is determined by the property setting. + ]]> @@ -1719,11 +1719,11 @@ Gets or sets the legend table column spacing. An value that represents the table column spacing. - property value is calculated as a percentage of the legend text font. - + property value is calculated as a percentage of the legend text font. + ]]> @@ -1757,11 +1757,11 @@ Gets or sets a flag that specifies the order in which legend items are displayed. This property only affects legend items automatically added for the chart series; it has no effect on custom legend items. A enumeration value that specifies the order in which legend items are displayed. - property is set to , the legend will automatically be reversed if StackedColumn, StackedColumn100, StackedArea or StackedArea100 chart types are used. - + property is set to , the legend will automatically be reversed if StackedColumn, StackedColumn100, StackedArea or StackedArea100 chart types are used. + ]]> @@ -1811,19 +1811,19 @@ Gets or sets the style of the legend. A enumeration value that determines the legend style. The default value is . - property. When the property is set to , the control will determine whether to draw a wide table or a tall table, depending on the alignment and positioning of the chart. This may cause the legend to be drawn using multiple legend item columns. - - There are three possible styles for a legend: Column, Row and Table. Refer to the table below for a summary of these styles: - -|Style|Description| -|-|-| -|Column|Legend items are displayed in one column, with multiple rows. Most commonly used when the legend is docked to the left or right of the chart.| -|Row|Legend items are displayed in one row, with multiple columns. Most commonly used when the legend is docked to the top or bottom of the chart.| -|Table|Legend items are displayed using multiple columns and rows.| - + property. When the property is set to , the control will determine whether to draw a wide table or a tall table, depending on the alignment and positioning of the chart. This may cause the legend to be drawn using multiple legend item columns. + + There are three possible styles for a legend: Column, Row and Table. Refer to the table below for a summary of these styles: + +|Style|Description| +|-|-| +|Column|Legend items are displayed in one column, with multiple rows. Most commonly used when the legend is docked to the left or right of the chart.| +|Row|Legend items are displayed in one row, with multiple columns. Most commonly used when the legend is docked to the top or bottom of the chart.| +|Table|Legend items are displayed using multiple columns and rows.| + ]]> @@ -1857,11 +1857,11 @@ Gets or sets the maximum size of the legend, measured as a percentage of the chart area. This value is used by the automatic layout algorithm. A value that represents the maximum size of the legend. - @@ -1938,13 +1938,13 @@ Gets or sets an object, which can be used to get or set the position of the legend. An value that represents the position of the legend. The default value is . - property is automatic (that is, Legend.Position.Auto = `true`) the legend position is calculated automatically by the control, taking into account the , and property settings. - - If it is not automatic, the , and properties are ignored, and the legend position is solely determined by the value of the returned object. - + property is automatic (that is, Legend.Position.Auto = `true`) the legend position is calculated automatically by the control, taking into account the , and property settings. + + If it is not automatic, the , and properties are ignored, and the legend position is solely determined by the value of the returned object. + ]]> @@ -2002,15 +2002,15 @@ Gets or sets the shadow color of the legend. A value that represents the shadow color of the legend. The default color is . - property to a value other than zero (0). - + property to a value other than zero (0). + ]]> @@ -2056,11 +2056,11 @@ Gets or sets the shadow offset, in pixels, of the legend. An value that represents the shadow offset, in pixels, of the legend. - @@ -2110,11 +2110,11 @@ Gets or sets the legend table style. A enumeration value that specifies the legend table style. - property is set to . - + property is set to . + ]]> @@ -2148,13 +2148,13 @@ Gets or sets the number of characters that can be sequentially displayed in the legend before the text is wrapped. An value that represents the number of characters that can be placed in the legend sequentially before the text is wrapped. The default value is 25. - property to zero to disable the feature. - + property to zero to disable the feature. + ]]> @@ -2293,13 +2293,13 @@ Gets or sets the font for the legend title. A object that specifies font for the legend title. The default value is "Microsoft Sans Serif, 8pt, Bold". - object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. - + object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/LegendCell.xml b/xml/System.Web.UI.DataVisualization.Charting/LegendCell.xml index ca8e6b339d3..5e951e99bde 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/LegendCell.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/LegendCell.xml @@ -20,11 +20,11 @@ Represents a legend cell in a legend item. - . These legend items consist of individual legend cells, which are in turn represented by the . - + . These legend items consist of individual legend cells, which are in turn represented by the . + ]]> @@ -153,11 +153,11 @@ Gets or sets the alignment of the legend cell contents. A value that represents the alignment of the legend cell contents. The default value is . - property is used to align text, series symbols or images within the legend cell. - + property is used to align text, series symbols or images within the legend cell. + ]]> @@ -203,11 +203,11 @@ Gets or sets the background color of the legend cell. A value used to draw the legend cell's background. - property has the highest priority when setting the background color of any entity in the legend. - + property has the highest priority when setting the background color of any entity in the legend. + ]]> @@ -241,13 +241,13 @@ Gets or sets the number of horizontal cells used to draw the contents of the legend cell. An value that represents the number of horizontal cells used to draw the legend cell contents. The default value is 1. - property to the number of cells required to fit the contents. This property is most often used if you wish to add an extended header or title to the legend. - - When this property is set to a value larger than 1, empty legend cells must be added in order to accommodate the contents of the extended legend cell. - + property to the number of cells required to fit the contents. This property is most often used if you wish to add an extended header or title to the legend. + + When this property is set to a value larger than 1, empty legend cells must be added in order to accommodate the contents of the extended legend cell. + ]]> @@ -285,17 +285,17 @@ Gets or sets the legend cell type. A enumeration value that represents the type that will be used to define the contents of the legend cell. The default value is . - property determines the type of content that will be displayed in each individual legend cell. One of the following cell types must be specified: - -- Text: A string is specified using the property, and will be displayed in the legend cell. - -- SeriesSymbol: A series symbol is defined by the property in the class. It will be displayed for the legend cell. Recall that a series symbol is a visual indicator - a line, rectangle or marker. When is set to , all marker attributes of the custom item apply to the cell. - -- Image: An image is defined using the property and will be displayed in the legend cell. - + property determines the type of content that will be displayed in each individual legend cell. One of the following cell types must be specified: + +- Text: A string is specified using the property, and will be displayed in the legend cell. + +- SeriesSymbol: A series symbol is defined by the property in the class. It will be displayed for the legend cell. Recall that a series symbol is a visual indicator - a line, rectangle or marker. When is set to , all marker attributes of the custom item apply to the cell. + +- Image: An image is defined using the property and will be displayed in the legend cell. + ]]> @@ -354,13 +354,13 @@ Gets or sets the font for the legend cell. A object that represents the font for the legend cell. The default value is "Microsoft Sans Serif, 8pt". - property can be used to set font properties of the legend cell. - - If you attempt to change the properties of this object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. - + property can be used to set font properties of the legend cell. + + If you attempt to change the properties of this object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. + ]]> @@ -406,11 +406,11 @@ Gets or sets the text color of the legend cell. A value used to draw the legend cell text. The default value is . - property is set to . - + property is set to . + ]]> @@ -452,13 +452,13 @@ Gets or sets the name of the image in a legend cell. A value that represents the name of the image to be used in the legend cell. - property is set to . - + property is set to . + ]]> @@ -496,13 +496,13 @@ Gets or sets the size of the image in a legend cell. A value that represents the size of the image. The default value is (0,0), which means the original size of the image will be used. - property is used to explicitly set the width and height of the legend cell image. - - This property is only applicable if the property is set to . - + property is used to explicitly set the width and height of the legend cell image. + + This property is only applicable if the property is set to . + ]]> @@ -548,11 +548,11 @@ Gets or sets a color which will be replaced with a transparent color when the image is drawn. A value that is used as a transparent color in a legend cell image. - property is only applicable if the property is set to . - + property is only applicable if the property is set to . + ]]> @@ -655,19 +655,19 @@ Gets or sets the map area attributes of the legend cell. A value that represents the attributes of the legend cell's corresponding map area. The default value is a zero-length string. - property, a client-side image map will automatically be created. A map area will also be created, with its attribute string appended to the \ tag that corresponds to the relevant legend cell. - - The property can be used in conjunction with the property to specify map area attributes, for example, target= _blank, as well as client-side event handlers, for example, OnClick="MyEvent()". - - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - If the property is set for both a series and a data point of that series, the data point property has precedence. - - Special keywords may be used when setting this property, and each keyword will be replaced with some type of data from the applicable chart element. - + property, a client-side image map will automatically be created. A map area will also be created, with its attribute string appended to the \ tag that corresponds to the relevant legend cell. + + The property can be used in conjunction with the property to specify map area attributes, for example, target= _blank, as well as client-side event handlers, for example, OnClick="MyEvent()". + + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + If the property is set for both a series and a data point of that series, the data point property has precedence. + + Special keywords may be used when setting this property, and each keyword will be replaced with some type of data from the applicable chart element. + ]]> @@ -709,11 +709,11 @@ Gets or sets the margins of the legend cell. A object that represents the top, bottom, left, and right values of the legend cell margins. The default values for top, bottom, left and right are "0,0,15,15". - @@ -737,15 +737,15 @@ Gets or sets the name of the legend cell. A value that represents the text name of the legend cell. - property can be used as the indexer when retrieving a object from the . - - If you set this property to a zero-length string, an exception will be thrown. - + property can be used as the indexer when retrieving a object from the . + + If you set this property to a zero-length string, an exception will be thrown. + ]]> @@ -817,13 +817,13 @@ Gets or sets the size of the series symbol that is displayed in the legend cell. A object that represents the size of the series symbol as a percentage of the legend font size. The default values for the width and height of the symbol are 200 and 70, respectively. - property is only applicable if the property is set to . - + property is only applicable if the property is set to . + ]]> @@ -857,11 +857,11 @@ Gets or sets the legend cell text. A value that represents the text for the legend cell. The default value is a zero-length string. - property is only applicable if the property is set to . - + property is only applicable if the property is set to . + ]]> @@ -902,20 +902,20 @@ Gets or sets the tooltip text for the legend cell. A value that represents the tooltip for the legend cell. The default value is a zero-length string. - property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - If the `ToolTip` property is set for both a legend item and a legend cell, the legend cell property has precedence. - - This property allows you to set special keywords to display different types of chart-related data. - - To create image maps that have user-defined coordinates, use the property of the root object. - + property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + If the `ToolTip` property is set for both a legend item and a legend cell, the legend cell property has precedence. + + This property allows you to set special keywords to display different types of chart-related data. + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]> @@ -964,19 +964,19 @@ Gets or sets the URL target of the legend cell. A value that represents the destination URL or anchor point of the chart element. To use an absolute URL, start the string expression with either "http://" or "www.". If the string does not start with either of these prefixes it will be treated as a relative URL. - property is set to `false`. The default value is `true`. - - Attributes of the map area(s), for example, target=_blank, can be specified by using the property. - - The property allows you to set special keywords to display different types of chart-related data. For more information, see [Keywords](https://msdn.microsoft.com/library/8a19d422-4eee-45ff-a5c3-feff7b76fa8c). - - To create image maps that have user-defined coordinates, use the property of the root object. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). - + property is set to `false`. The default value is `true`. + + Attributes of the map area(s), for example, target=_blank, can be specified by using the property. + + The property allows you to set special keywords to display different types of chart-related data. For more information, see [Keywords](https://msdn.microsoft.com/library/8a19d422-4eee-45ff-a5c3-feff7b76fa8c). + + To create image maps that have user-defined coordinates, use the property of the root object. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/LegendCellColumn.xml b/xml/System.Web.UI.DataVisualization.Charting/LegendCellColumn.xml index 81702e72436..0d947db2be9 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/LegendCellColumn.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/LegendCellColumn.xml @@ -20,13 +20,13 @@ Represents a cell column in a legend, which is used to extend the functionality of the default legend. - @@ -144,11 +144,11 @@ Gets or sets the legend column content alignment. A value that represents the alignment of the legend cell contents. The default value is . - @@ -192,15 +192,15 @@ Gets or sets the background color of the legend cell column. - A value used to draw the legend cell column background. - + A value used to draw the legend cell column background. + The default value is . - property of the legend that the legend cell column belongs to. It also overrides the property of the legend. - + property of the legend that the legend cell column belongs to. It also overrides the property of the legend. + ]]> @@ -238,15 +238,15 @@ Gets or sets the legend cell column type. A enumeration value. This value represents the type that will be used to define the legend cell column contents. The default value is . - value in each cell column. However, you can use the property to set any keyword(s) that will be replaced by a value of the corresponding series. - -- SeriesSymbol: The legend cell will contain a series symbol, such as a rectangle, line, line with marker, or marker, of the same fill color as its corresponding series. - + value in each cell column. However, you can use the property to set any keyword(s) that will be replaced by a value of the corresponding series. + +- SeriesSymbol: The legend cell will contain a series symbol, such as a rectangle, line, line with marker, or marker, of the same fill color as its corresponding series. + ]]> @@ -305,13 +305,13 @@ Gets or sets the font for the legend column text. A object that specifies the font for the legend column text. The default value is . - is set to , and a `string` value is defined for the property. You can use the property to set font properties of the legend cell column. - - If you attempt to change the properties of this object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. - + is set to , and a `string` value is defined for the property. You can use the property to set font properties of the legend cell column. + + If you attempt to change the properties of this object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. + ]]> @@ -357,11 +357,11 @@ Gets or sets the text color of the legend cell column. A value used to draw the legend cell column text. The default value is . - is set to . - + is set to . + ]]> @@ -469,13 +469,13 @@ Gets or sets the font used in the legend column header. A object that specifies the font used in the legend column header. The default value is "Microsoft Sans Serif, 8pt, Bold". - object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. - + object at run time, a compilation error will occur. To set font properties at run time, you must create a new object. + ]]> @@ -672,11 +672,11 @@ Gets or sets the margins of the legend cell column. A object that represents the top, bottom, left, and right values of the legend cell margins. The default values for top, bottom, left and right are "0,0,15,15". - @@ -770,15 +770,15 @@ Gets or sets the name of the legend cell column. A value that represents the text name of the legend cell column. - property can be used as the indexer when retrieving a object from the . - - If you set this property to a zero-length string, an exception will be thrown. - + property can be used as the indexer when retrieving a object from the . + + If you set this property to a zero-length string, an exception will be thrown. + ]]> @@ -850,13 +850,13 @@ Gets or sets the size of the series symbol displayed in a legend cell column. A object that represents the size of the series symbol. The default values for the width and height of the symbol are 200 and 70, respectively. - property is set to . - + property is set to . + ]]> @@ -888,11 +888,11 @@ if the property should be serialized; otherwise, . - @@ -934,11 +934,11 @@ Gets or sets the text of the legend cell column. A value that represents the text for the legend cell column. The default value is a zero-length string. - is set to . - + is set to . + ]]> @@ -987,20 +987,20 @@ Gets or sets the tooltip text for the legend cell column. A value that represents the tooltip for the legend cell column. The default value is a zero-length string. - property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - If the `ToolTip` property is set for both a legend item and a legend cell, the legend cell property has precedence. - - This property allows you to set special keywords to display different types of chart-related data. - - To create image maps that have user-defined coordinates, use the property of the root object. - + property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + If the `ToolTip` property is set for both a legend item and a legend cell, the legend cell property has precedence. + + This property allows you to set special keywords to display different types of chart-related data. + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]> @@ -1049,19 +1049,19 @@ Gets or sets the URL target of the legend cell columns automatically generated from a series or data point. A value that represents the destination URL or anchor point of the chart element. To use an absolute URL start the string expression with either "http://" or "www.". If the string does not start with either of these prefixes it will be treated as a relative URL. The default value is a zero-length string. - property is set to `false`. The default value is `true`. - - Attributes of the map area(s), for example, target=_blank, can be specified by using the property. - - The property allows you to set special keywords to display different types of chart-related data. - - To create image maps that have user-defined coordinates, use the property of the root object. - + property is set to `false`. The default value is `true`. + + Attributes of the map area(s), for example, target=_blank, can be specified by using the property. + + The property allows you to set special keywords to display different types of chart-related data. + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/LegendItem.xml b/xml/System.Web.UI.DataVisualization.Charting/LegendItem.xml index 7465eaa4ac7..f11faf623d8 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/LegendItem.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/LegendItem.xml @@ -26,19 +26,19 @@ Represents a legend item, which is stored in the class. - class represents a legend item, which can be either a default or custom item: - -- Default legend items are automatically inserted into the legend for either data series or data points. Default entries for pie and doughnut charts represent the plotted data points, whereas entries for all other chart types represent the plotted series. By default, these legend entries use the data point or series color for the symbol color, and the name of the series or data point for the legend item text. Default legend items can be customized or deleted at run time by using the event of the control. - -- Custom legend items have user-defined text, symbol color, and so forth. Unlike the default entries, they are not connected with the plotted data. Custom legend items can be added at either design time or run time, using the property of the object. - - Legend symbols can be rectangles, lines or markers, depending on the property setting of a object. - - The text of a custom legend item is determined by the property. - + class represents a legend item, which can be either a default or custom item: + +- Default legend items are automatically inserted into the legend for either data series or data points. Default entries for pie and doughnut charts represent the plotted data points, whereas entries for all other chart types represent the plotted series. By default, these legend entries use the data point or series color for the symbol color, and the name of the series or data point for the legend item text. Default legend items can be customized or deleted at run time by using the event of the control. + +- Custom legend items have user-defined text, symbol color, and so forth. Unlike the default entries, they are not connected with the plotted data. Custom legend items can be added at either design time or run time, using the property of the object. + + Legend symbols can be rectangles, lines or markers, depending on the property setting of a object. + + The text of a custom legend item is determined by the property. + ]]> @@ -67,13 +67,13 @@ Initializes a new instance of the class. - class. - - Note that you can also add custom legend items using the `Add` and `Insert` methods associated with the collection property of the object. - + class. + + Note that you can also add custom legend items using the `Add` and `Insert` methods associated with the collection property of the object. + ]]> @@ -101,11 +101,11 @@ The path of the image to be displayed for the legend item. Initializes a new instance of the class with the specified name, color and image path. - @@ -155,26 +155,26 @@ Gets or sets the orientation for the background gradient of a legend item. Also determines whether a gradient is used. A enumeration. The default value is . - property to determine whether a title will display a gradient, and to determine the orientation of the gradient if one is used. - - This property is only implemented if the property is set to . - - For a listing of available patterns, refer to the enumeration. - - To use gradient colors: - -- Use the property to set the primary color. - -- Use the property to set the secondary color. - -- Use this property to set the desired gradient style. - + property to determine whether a title will display a gradient, and to determine the orientation of the gradient if one is used. + + This property is only implemented if the property is set to . + + For a listing of available patterns, refer to the enumeration. + + To use gradient colors: + +- Use the property to set the primary color. + +- Use the property to set the secondary color. + +- Use this property to set the desired gradient style. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -224,19 +224,19 @@ Gets or sets the hatching style of a legend item. A enumeration. The default value is . - enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. - - For a listing of available hatching styles, refer to the enumeration. - + enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. + + For a listing of available hatching styles, refer to the enumeration. + > [!NOTE] -> The color of hatching lines is determined by the property. - +> The color of hatching lines is determined by the property. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -294,11 +294,11 @@ Gets or sets a color which will be replaced with a transparent color when the background image is drawn. A value that will be displayed as transparent. - objects with a of either or . - + objects with a of either or . + ]]> @@ -352,30 +352,30 @@ Gets or sets the secondary color of a legend item. A value used for the secondary color of background with hatching or gradient fill. The default value is . - property is one of several related properties that determine the secondary background color of many objects; it is used when gradient colors are being applied. - - This property is only implemented if the property is set to . - - You can set to any valid ARGB (alpha, red, green, blue) value. - - If hatching is used, the property determines the color of the hatching lines for the legend item. - - To use gradient colors for a legend cell's background: - - To use gradient colors: - -- Use the property to set the primary color. - -- Use the property to set the secondary color. - -- Use the property to set the desired gradient style. - + property is one of several related properties that determine the secondary background color of many objects; it is used when gradient colors are being applied. + + This property is only implemented if the property is set to . + + You can set to any valid ARGB (alpha, red, green, blue) value. + + If hatching is used, the property determines the color of the hatching lines for the legend item. + + To use gradient colors for a legend cell's background: + + To use gradient colors: + +- Use the property to set the primary color. + +- Use the property to set the secondary color. + +- Use the property to set the desired gradient style. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -429,17 +429,17 @@ Gets or sets the border color of a legend item. A value. The default color is . - [!NOTE] -> If you use a marker for a custom legend item. this property will set the border color of the marker. However, if the property is also set, its value has precedence. - +> If you use a marker for a custom legend item. this property will set the border color of the marker. However, if the property is also set, its value has precedence. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -481,16 +481,16 @@ Gets or sets the border style of a legend item. A enumeration value that determines the border style of the legend item. - enumeration topic. - + enumeration topic. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -532,13 +532,13 @@ Gets or sets the border width of a legend item. An value that determines the width, in pixels, of the legend item border. - property can also be used to set the width of lines when, for example, custom legend items are displayed with a style. - - **Note** This property is applicable only to objects with a of either or . - + property can also be used to set the width of lines when, for example, custom legend items are displayed with a style. + + **Note** This property is applicable only to objects with a of either or . + ]]> @@ -580,14 +580,14 @@ Gets the collection of cells in the legend item. A object. - object and stored in a . - + object and stored in a . + > [!NOTE] -> This property is applicable to the entire . - +> This property is applicable to the entire . + ]]> @@ -645,20 +645,20 @@ Gets or sets the color of a legend item. A value. The default color is . - property is one several related properties that get or set the color of many chart elements; it can be set to any ARGB (alpha, red, green, blue) value. - - If this property is set for both a data point and its series, the data point color will have precedence. The series color will only be used for data points that do not define their own color. - - If a custom legend item uses a marker, this property will determine the marker color. However, if the property is set, its value then has precedence. - - This property will be ignored if the property specifies an image to be used for the legend item symbol. - + property is one several related properties that get or set the color of many chart elements; it can be set to any ARGB (alpha, red, green, blue) value. + + If this property is set for both a data point and its series, the data point color will have precedence. The series color will only be used for data points that do not define their own color. + + If a custom legend item uses a marker, this property will determine the marker color. However, if the property is set, its value then has precedence. + + This property will be ignored if the property specifies an image to be used for the legend item symbol. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -722,11 +722,11 @@ if the legend item is enabled; otherwise, . The default value is . - . - + . + ]]> @@ -780,20 +780,20 @@ Gets or sets the image that will be displayed for a legend item symbol. A value that represents the URL of an image file. The default value is an empty string. - symbol. - - The path can be an absolute or a relative URL. - - If you set a background image, that image will be displayed regardless of the property setting. - - Set the property to enable one color used by the image to appear transparent. - + symbol. + + The path can be an absolute or a relative URL. + + If you set a background image, that image will be displayed regardless of the property setting. + + Set the property to enable one color used by the image to appear transparent. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -839,16 +839,16 @@ Gets or sets the display style of the legend item image. A enumeration value. - style can be combined with a style. To accomplish this, first set the property to . Then use the property to specify a marker image, or the property to specify a marker style. The resulting symbol will be a combination of a line and an image or marker. - + style can be combined with a style. To accomplish this, first set the property to . Then use the property to specify a marker image, or the property to specify a marker style. The resulting symbol will be a combination of a line and an image or marker. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -932,45 +932,45 @@ Gets or sets the map area attributes of a legend item. A value that represents the attributes of corresponding map area for the legend item. - property, a client-side image map will automatically be created. A map area will also be created, with its attribute string appended to the \ tag that corresponds to the chart object for which this property is being set. - - For example, setting the Target attribute using this property and the property of the first data point will result in HTML code that is similar to the following code: - -```html + property, a client-side image map will automatically be created. A map area will also be created, with its attribute string appended to the \ tag that corresponds to the chart object for which this property is being set. + + For example, setting the Target attribute using this property and the property of the first data point will result in HTML code that is similar to the following code: + +```html ... ``` - Because the entire string is appended to the \ tag, multiple attributes should be separated with a space. - - The property can be used in conjunction with the property to specify map area attributes, for example, target= _blank, as well as client-side event handlers, for example, OnClick="MyEvent()". - - Setting this property will have no effect if the property is set to `false`. Its default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). - - Special keywords may be used when setting this property; each keyword will be replaced with some type of data from the applicable chart element. Refer to the following table for a listing of all available keywords: - -|Keyword|Replaced by| -|-------------|-----------------| -|#VALX|X-value of the data point.| -|#VAL, #VALY, #VALY2, #VALY3…|Y-values of the data point.| -|#SER|Series name.| -|#LABEL|Data point label.| -|#INDEX|Data point index.| -|#PERCENT|Percentage of the data point Y-value.| -|#TOTAL|Total of all Y-values in the series.| -|#LEGENDTEXT|Legend text.| - - To create image maps that have user-defined coordinates, use the property of the root object. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). - + Because the entire string is appended to the \ tag, multiple attributes should be separated with a space. + + The property can be used in conjunction with the property to specify map area attributes, for example, target= _blank, as well as client-side event handlers, for example, OnClick="MyEvent()". + + Setting this property will have no effect if the property is set to `false`. Its default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). + + Special keywords may be used when setting this property; each keyword will be replaced with some type of data from the applicable chart element. Refer to the following table for a listing of all available keywords: + +|Keyword|Replaced by| +|-------------|-----------------| +|#VALX|X-value of the data point.| +|#VAL, #VALY, #VALY2, #VALY3…|Y-values of the data point.| +|#SER|Series name.| +|#LABEL|Data point label.| +|#INDEX|Data point index.| +|#PERCENT|Percentage of the data point Y-value.| +|#TOTAL|Total of all Y-values in the series.| +|#LEGENDTEXT|Legend text.| + + To create image maps that have user-defined coordinates, use the property of the root object. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). + > [!NOTE] -> This property is applicable to the entire . - +> This property is applicable to the entire . + ]]> @@ -1028,18 +1028,18 @@ Gets or sets the border color of the markers, if used. A value that represents the ARGB (alpha, red, green, blue) color of a marker border. - property to a value other than . - - Note that markers will not be applied to pie, doughnut, and any stacked chart types. - - For custom legends, the property will also set the border color of markers. The property setting has precedence over the property setting. - + property to a value other than . + + Note that markers will not be applied to pie, doughnut, and any stacked chart types. + + For custom legends, the property will also set the border color of markers. The property setting has precedence over the property setting. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -1077,11 +1077,11 @@ Gets or sets the border width of the markers, if used. Measured in pixels. An value. The default value is one (1) pixel. - objects with a of either or . - + objects with a of either or . + ]]> @@ -1139,11 +1139,11 @@ Gets or sets the color of the markers, if used. A value. The default color is . - objects with a of either or . - + objects with a of either or . + ]]> @@ -1197,22 +1197,22 @@ Gets or sets a marker image. A value that represents the URL of an image file. - property to a value other than . - - The property takes precedence over the property. - - A marker image can be any valid graphics file supported by .NET Framework, including icons. - - To set one color of the marker image to be transparent, use the property. - + property to a value other than . + + The property takes precedence over the property. + + A marker image can be any valid graphics file supported by .NET Framework, including icons. + + To set one color of the marker image to be transparent, use the property. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -1270,16 +1270,16 @@ Gets or sets a color that will be replaced with a transparent color when the marker image is drawn. A value that represents an ARGB (alpha, red, green, blue) color. - property is used to select one color in a marker image that will be displayed as transparent. - - You can set this property to any valid ARGB (alpha, red, green, blue) value. - + property is used to select one color in a marker image that will be displayed as transparent. + + You can set this property to any valid ARGB (alpha, red, green, blue) value. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -1325,16 +1325,16 @@ Gets or sets the size of the legend item markers, if used. An expression that represents the height and width of the plotting area of markers, in pixels. The default value is 5 pixels. - property to a value other than . - - Note that markers will not be applied to data points of pie, doughnut and any stacked chart types. - + property to a value other than . + + Note that markers will not be applied to data points of pie, doughnut and any stacked chart types. + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -1388,14 +1388,14 @@ Gets or sets a legend item marker style. Also used to enable or disable the display of markers. A integer enumeration. The default value is . - . - + . + > [!NOTE] -> This property is applicable only to objects with a of either or . - +> This property is applicable only to objects with a of either or . + ]]> @@ -1518,11 +1518,11 @@ Gets or sets the color of the legend item separator. A value used to draw the color of the legend item separator. The default value is . - . - + . + ]]> @@ -1599,18 +1599,18 @@ Gets or sets the name of the associated with a default legend item. A value that determines the name of the series associated with a default legend item. The default value is a zero-length string. - event, to determine which data series a default legend entry represents. - - The property applies to all charts except pie and sphere charts; their default legend items correspond to plotted data points, and not to plotted series. When you deal with pie and sphere charts, use the property instead. - - This property should not be set by the developer. - + event, to determine which data series a default legend entry represents. + + The property applies to all charts except pie and sphere charts; their default legend items correspond to plotted data points, and not to plotted series. When you deal with pie and sphere charts, use the property instead. + + This property should not be set by the developer. + > [!NOTE] -> This property is applicable to the entire . - +> This property is applicable to the entire . + ]]> @@ -1656,18 +1656,18 @@ Gets or sets the index of a object associated with a default legend item. An value that represents the location of the default legend's associated data point in a zero-based index. All chart types except for pie and doughnut charts will return a negative one (-1). - event to determine the object that is represented by a default pie or sphere chart legend entry. - - Chart types other than pie or sphere charts will return a negative one (-1), because the default legend items correspond to plotted series, and not plotted data points. Use the property for these chart types. - - This property should not be set by the developer. - + event to determine the object that is represented by a default pie or sphere chart legend entry. + + Chart types other than pie or sphere charts will return a negative one (-1), because the default legend items correspond to plotted series, and not plotted data points. Use the property for these chart types. + + This property should not be set by the developer. + > [!NOTE] -> This property is applicable to the entire . - +> This property is applicable to the entire . + ]]> @@ -1721,17 +1721,17 @@ Gets or sets the shadow color of a legend item. A value. The default color is . - property to a value other than zero (0). - - **Note** This property is applicable only to objects with a of either or . - + property to a value other than zero (0). + + **Note** This property is applicable only to objects with a of either or . + ]]> @@ -1773,13 +1773,13 @@ Gets or sets the shadow offset, in pixels, of a legend item. An value that represents the shadow offset, in pixels, of the relevant chart element. - objects with a of either or . - + objects with a of either or . + ]]> @@ -1828,25 +1828,25 @@ Gets or sets the tooltip of the legend item. A value that represents the tooltip for the legend item. - property, a client-side image map will automatically be created. A map area will also be created with its `Title` attribute set to the specified tooltip string. The map area will use the dimensions that correspond to the title. For example, if the property is set for a data point, then HTML code similar to the following will be generated at run time: - - \\\ - - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). - - This property allows you to set special keywords to display different types of chart-related data. For more information, see [Keywords](https://msdn.microsoft.com/library/8a19d422-4eee-45ff-a5c3-feff7b76fa8c). - - To create image maps that have user-defined coordinates, use the property of the root object. - + property, a client-side image map will automatically be created. A map area will also be created with its `Title` attribute set to the specified tooltip string. The map area will use the dimensions that correspond to the title. For example, if the property is set for a data point, then HTML code similar to the following will be generated at run time: + + \\\ + + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). + + This property allows you to set special keywords to display different types of chart-related data. For more information, see [Keywords](https://msdn.microsoft.com/library/8a19d422-4eee-45ff-a5c3-feff7b76fa8c). + + To create image maps that have user-defined coordinates, use the property of the root object. + > [!NOTE] -> This property is applicable to the entire . - +> This property is applicable to the entire . + ]]> @@ -1903,30 +1903,30 @@ Gets or sets the destination URL of a legend item. A value that represents the destination URL of a legend item. To use an absolute URL, start the string expression with either "http://" or "www.". If the string does not start with either of these prefixes it will be treated as a relative URL. - property is set for a data point, then HTML code similar to the following will be generated at run time: - + property is set for a data point, then HTML code similar to the following will be generated at run time: + ```html ... - + ``` - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - Attributes of the map area(s), for example, TARGET=_Blank, can be specified by using the property. - - The property allows you to set special keywords to display different types of chart-related data. For more information, see Keywords (Chart Controls). - - To create image maps that have user-defined coordinates, use the property of the root object. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). - + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + Attributes of the map area(s), for example, TARGET=_Blank, can be specified by using the property. + + The property allows you to set special keywords to display different types of chart-related data. For more information, see Keywords (Chart Controls). + + To create image maps that have user-defined coordinates, use the property of the root object. For more information, see [Chart Image Rendering](https://msdn.microsoft.com/library/82ff568d-838c-408b-bd85-62e424ae0505). + > [!NOTE] -> This property is applicable to the entire . - +> This property is applicable to the entire . + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/LegendItemsCollection.xml b/xml/System.Web.UI.DataVisualization.Charting/LegendItemsCollection.xml index 037b289b147..5bd0f8f201e 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/LegendItemsCollection.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/LegendItemsCollection.xml @@ -19,19 +19,19 @@ Represents a collection of objects. - class represents a collection of objects, which in turn represent items in a legend. - - This collection class is exposed in two ways: - -- As the object property of the object, which can be used to add, delete or modify custom legend items. The term "custom" refers to legend items that have user-defined text, symbol color, and so forth. In comparison, "default" legend items are items that are automatically inserted into the legend and represent a data series or data point. Default legend item entries for pie and doughnut charts represent the plotted data points, whereas item entries for all other chart types represent the plotted series. The property is available at both design time and run time. - -- In the event, as the property of the parameter. The property stores both default legend items and custom legend items that have been added to the control at design time. Legend items can be modified or deleted; in addition, their order can be changed. - - To add legend items to the collection, use one of the overloaded `Add` and `Insert` methods in this class. - + class represents a collection of objects, which in turn represent items in a legend. + + This collection class is exposed in two ways: + +- As the object property of the object, which can be used to add, delete or modify custom legend items. The term "custom" refers to legend items that have user-defined text, symbol color, and so forth. In comparison, "default" legend items are items that are automatically inserted into the legend and represent a data series or data point. Default legend item entries for pie and doughnut charts represent the plotted data points, whereas item entries for all other chart types represent the plotted series. The property is available at both design time and run time. + +- In the event, as the property of the parameter. The property stores both default legend items and custom legend items that have been added to the control at design time. Legend items can be modified or deleted; in addition, their order can be changed. + + To add legend items to the collection, use one of the overloaded `Add` and `Insert` methods in this class. + ]]> @@ -70,15 +70,15 @@ Adds a custom object with the specified text and symbol color to the end of the collection. An that represents the location in the zero-based index where the item was inserted into the collection. - method. - - To insert a custom object into the collection, use one of the `Insert` methods in this class. - + method. + + To insert a custom object into the collection, use one of the `Insert` methods in this class. + ]]> @@ -108,15 +108,15 @@ Adds a custom object with the specified image to the end of the collection. An that represents the location in the zero-based index where the item was inserted into the collection. - method. - - To insert a object into the collection use one of the `Insert` methods in this class. - + method. + + To insert a object into the collection use one of the `Insert` methods in this class. + ]]> @@ -156,15 +156,15 @@ The legend item text. Inserts a object with the specified text and symbol color into the collection at the specified location. - method. - - Use the method to append a object that uses a color for its symbol to the end if the collection. - + method. + + Use the method to append a object that uses a color for its symbol to the end if the collection. + ]]> @@ -195,15 +195,15 @@ The legend item text. Inserts a object with the specified text and symbol image into the collection at the specified location. - method. - - Use the method to append a object with a symbol image to the end if the collection. - + method. + + Use the method to append a object with a symbol image to the end if the collection. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/MapArea.xml b/xml/System.Web.UI.DataVisualization.Charting/MapArea.xml index 14aab345beb..da8852d1607 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/MapArea.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/MapArea.xml @@ -26,30 +26,30 @@ Represents a map area. - class represents a map area of a client-side image map, and corresponds to an HTML \ tag. - - The objects are stored in the class. - - There are two types of objects: - -- Map areas that are automatically created when a chart element - for example, a data point, series, legend item or strip line object - has a non-empty `ToolTip`, `Url` or `MapAreaAttributes` property; note that other HTML elements that are required for a client-side image map are also created. In this case, the dimensions and location of a map area are automatically determined by the chart element. Use the event of the root object to delete or modify these map areas at run time. - -- Custom map areas that have a user-defined shape and coordinates. Use the property of the object to add these custom map areas at design time or run time. - - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map using the previously described objects, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - For custom objects, the property determines the shape, and the property determines the location of the map area. - - Tooltips, hyperlinks, or attributes, such as Target=_Blank or OnClick="javascript:MyJavaScriptFunction()", can be set for all map areas. - - Use the property to determine whether a map area is a custom object; that is, whether it has user-defined shape and coordinates. - + class represents a map area of a client-side image map, and corresponds to an HTML \ tag. + + The objects are stored in the class. + + There are two types of objects: + +- Map areas that are automatically created when a chart element - for example, a data point, series, legend item or strip line object - has a non-empty `ToolTip`, `Url` or `MapAreaAttributes` property; note that other HTML elements that are required for a client-side image map are also created. In this case, the dimensions and location of a map area are automatically determined by the chart element. Use the event of the root object to delete or modify these map areas at run time. + +- Custom map areas that have a user-defined shape and coordinates. Use the property of the object to add these custom map areas at design time or run time. + + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map using the previously described objects, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + For custom objects, the property determines the shape, and the property determines the location of the map area. + + Tooltips, hyperlinks, or attributes, such as Target=_Blank or OnClick="javascript:MyJavaScriptFunction()", can be set for all map areas. + + Use the property to determine whether a map area is a custom object; that is, whether it has user-defined shape and coordinates. + ]]> @@ -78,13 +78,13 @@ Initializes a new instance of the class. - class. - - However, an easier way to create a custom object is to use one of the overloaded `Add` or `Insert` methods of the class. - + class. + + However, an easier way to create a custom object is to use one of the overloaded `Add` or `Insert` methods of the class. + ]]> @@ -300,29 +300,29 @@ Gets or sets the coordinates of a object. An array of coordinates that is dependent on the shape of the map area. - property is usually used to set the coordinates of a custom map area object that has a user-defined shape and coordinates. - - The coordinates that must be specified for a custom map area depend on the shape of the map area: - -- Circle. Three coordinates must be provided: "x1, y1, r", where "x1, y2" are the coordinates of the center of the circle, and "r" is the radius of the circle. - -- Rectangle. Four coordinates must be provided: "x1, y1, x2, y2", where "x1, y1" are the coordinates of the upper-left corner of the rectangle and "x2, y2" are the coordinates of the lower-right corner of the rectangle. - -- Polygon. Two or more x and y pairs must be provided "x1, y1, x2, y2...xn, yn", where each "x, y" pair contains the coordinates of one vertex of the polygon. - - When setting coordinates, use the relative coordinate system of the chart, where the top-left corner of the chart image is "0,0" and the bottom-right corner of the image is "100,100". - - After the shape and coordinates are defined for the map area, the , and/or properties can be used to specify a particular user interaction. - - Note the following: - -- A client-side image map will only be created at run time if the property of the root object is `true`, which is the default. - -- To create an image map by adding a object to the map areas collection, the property of the object must be set to . It is possible to create an image map when using binary streaming, but a special technique must be used. - + property is usually used to set the coordinates of a custom map area object that has a user-defined shape and coordinates. + + The coordinates that must be specified for a custom map area depend on the shape of the map area: + +- Circle. Three coordinates must be provided: "x1, y1, r", where "x1, y2" are the coordinates of the center of the circle, and "r" is the radius of the circle. + +- Rectangle. Four coordinates must be provided: "x1, y1, x2, y2", where "x1, y1" are the coordinates of the upper-left corner of the rectangle and "x2, y2" are the coordinates of the lower-right corner of the rectangle. + +- Polygon. Two or more x and y pairs must be provided "x1, y1, x2, y2...xn, yn", where each "x, y" pair contains the coordinates of one vertex of the polygon. + + When setting coordinates, use the relative coordinate system of the chart, where the top-left corner of the chart image is "0,0" and the bottom-right corner of the image is "100,100". + + After the shape and coordinates are defined for the map area, the , and/or properties can be used to specify a particular user interaction. + + Note the following: + +- A client-side image map will only be created at run time if the property of the root object is `true`, which is the default. + +- To create an image map by adding a object to the map areas collection, the property of the object must be set to . It is possible to create an image map when using binary streaming, but a special technique must be used. + ]]> @@ -415,40 +415,40 @@ Gets or sets the attributes of the map area. A value that represents the attributes of the map area that corresponds to a particular chart element. - tag that corresponds to the object that this property is being set for. For example, setting the Target attribute using this property and setting the `Url` property of the first data point will result in HTML code that is similar to the following: - + tag that corresponds to the object that this property is being set for. For example, setting the Target attribute using this property and setting the `Url` property of the first data point will result in HTML code that is similar to the following: + ```html ... ``` - - Because the entire string is appended to the \ tag, multiple attributes should be separated with a space. - - The property can be used in conjunction with the property to specify map area attributes such as Target= _Blank, as well as client-side event handlers such as OnClick="MyEvent()". - - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - Special keywords can be used when you set this property. Each keyword will be replaced with some type of data from the applicable chart element. Refer to the following table for a list of all available keywords: - -|Keyword|Replaced by| -|-------------|-----------------| -|#VALX|X-value of the data point.| -|#VAL, #VALY, #VALY2, #VALY3…|Y-values of the data point.| -|#SER|Series name.| -|#LABEL|Data point label.| -|#INDEX|Data point index.| -|#PERCENT|Percentage of the data point Y-value.| -|#TOTAL|Total of all Y-values in the series.| -|#LEGENDTEXT|Legend text.| - - To create image maps that have user-defined coordinates, use the property of the root object. - + + Because the entire string is appended to the \ tag, multiple attributes should be separated with a space. + + The property can be used in conjunction with the property to specify map area attributes such as Target= _Blank, as well as client-side event handlers such as OnClick="MyEvent()". + + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + Special keywords can be used when you set this property. Each keyword will be replaced with some type of data from the applicable chart element. Refer to the following table for a list of all available keywords: + +|Keyword|Replaced by| +|-------------|-----------------| +|#VALX|X-value of the data point.| +|#VAL, #VALY, #VALY2, #VALY3…|Y-values of the data point.| +|#SER|Series name.| +|#LABEL|Data point label.| +|#INDEX|Data point index.| +|#PERCENT|Percentage of the data point Y-value.| +|#TOTAL|Total of all Y-values in the series.| +|#LEGENDTEXT|Legend text.| + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]> @@ -567,23 +567,23 @@ Gets or sets the shape of a object. A enumeration value that determines the shape of a map area object. - objects that are stored in the , any shape that is not a rectangle or a circle will be considered a polygon. For example, a custom map area can be added to the map areas collection using a object as a parameter, which allows any type of shape to be used. If the property of this particular object is retrieved, it will return a . - - After the shape and coordinates of a map area are defined, the , and/or properties can be used to specify a particular user interaction. - - Note the following: - -- A client-side image map will only be created at run-time if the IsMapEnabled property of the root Chart object is true, which is the default. - -- To create an image map by adding a MapArea object to the map areas collection the RenderType property of the Chart object MUST be RenderType.ImageTag. It is possible to create an image map when using binary streaming, but a special technique must be used. - + objects that are stored in the , any shape that is not a rectangle or a circle will be considered a polygon. For example, a custom map area can be added to the map areas collection using a object as a parameter, which allows any type of shape to be used. If the property of this particular object is retrieved, it will return a . + + After the shape and coordinates of a map area are defined, the , and/or properties can be used to specify a particular user interaction. + + Note the following: + +- A client-side image map will only be created at run-time if the IsMapEnabled property of the root Chart object is true, which is the default. + +- To create an image map by adding a MapArea object to the map areas collection the RenderType property of the Chart object MUST be RenderType.ImageTag. It is possible to create an image map when using binary streaming, but a special technique must be used. + ]]> @@ -632,22 +632,22 @@ Gets or sets the tooltip for the map area. A value that represents the tooltip of the chart element. - property is set for a data point, then HTML code similar to the following code will be generated at run time: - - \\\ - - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - This property allows you to set special keywords to display different types of chart-related data. - - To create image maps that have user-defined coordinates, use the property of the root object. - + property is set for a data point, then HTML code similar to the following code will be generated at run time: + + \\\ + + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + This property allows you to set special keywords to display different types of chart-related data. + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]> @@ -704,27 +704,27 @@ Gets or sets the destination URL or anchor point of the map area. A value that represents the destination URL or anchor point of the map area. To use an absolute URL, start the string expression with either "http://" or "www.". If the string does not start with either of these prefixes, it will be treated as a relative URL. - -
...


+
...


``` - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - Attributes of the map area(s), such as TARGET=-Blank, can be specified by using the property. - - This property allows you to set special keywords to display different types of chart-related data. - - To create image maps that have user-defined coordinates, use the property of the root object. - + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + Attributes of the map area(s), such as TARGET=-Blank, can be specified by using the property. + + This property allows you to set special keywords to display different types of chart-related data. + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]>
diff --git a/xml/System.Web.UI.DataVisualization.Charting/MapAreasCollection.xml b/xml/System.Web.UI.DataVisualization.Charting/MapAreasCollection.xml index 9512afaf298..7858e1f4cc6 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/MapAreasCollection.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/MapAreasCollection.xml @@ -19,22 +19,22 @@ Represents a collection of objects. - class represents a collection of objects, which in turn represent map areas of a client-side image map, such as HTML \ tags. - - This class is used in two ways: - -- As the property of the root object, which is used for custom map areas. These custom map areas have a user-defined shape and coordinates, and can be added at either design time or at run time using the overloaded `M:System.Web.UI.DataVisualization.MapAreasCollection.Add` or `M:System.Web.UI.DataVisualization.MapAreasCollection.Insert` methods. - -- In the event, as the property of the `CustomizeMapAreasEventArgs` parameter. This property stores objects that have automatically been created for a chart object (map areas are automatically created when an applicable chart element, such as a data point, series, legend item or stripline object, has a non-empty `ToolTip`, `Url` or `MapAreaAttributes` property). In this case the dimensions and location of a map area are determined by the chart element. The property enables you to delete or modify these automatically generated map areas, and can also be used to add custom map areas. - - A client-side image map will only be created at run time if the property of the root object is `true`. This is the default. - - > [!IMPORTANT] - > To create an image map using the previously described objects, the property of the object must be set to . It is possible to create an image map when using binary streaming, but a special technique must be used. - + class represents a collection of objects, which in turn represent map areas of a client-side image map, such as HTML \ tags. + + This class is used in two ways: + +- As the property of the root object, which is used for custom map areas. These custom map areas have a user-defined shape and coordinates, and can be added at either design time or at run time using the overloaded `M:System.Web.UI.DataVisualization.MapAreasCollection.Add` or `M:System.Web.UI.DataVisualization.MapAreasCollection.Insert` methods. + +- In the event, as the property of the `CustomizeMapAreasEventArgs` parameter. This property stores objects that have automatically been created for a chart object (map areas are automatically created when an applicable chart element, such as a data point, series, legend item or stripline object, has a non-empty `ToolTip`, `Url` or `MapAreaAttributes` property). In this case the dimensions and location of a map area are determined by the chart element. The property enables you to delete or modify these automatically generated map areas, and can also be used to add custom map areas. + + A client-side image map will only be created at run time if the property of the root object is `true`. This is the default. + + > [!IMPORTANT] + > To create an image map using the previously described objects, the property of the object must be set to . It is possible to create an image map when using binary streaming, but a special technique must be used. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/Series.xml b/xml/System.Web.UI.DataVisualization.Charting/Series.xml index 38b6fb14526..9f048e1b614 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/Series.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/Series.xml @@ -22,23 +22,23 @@ Stores data points and series attributes. - object represents a data series and is stored in the class. - - A stores objects using the class. It also stores attributes of the data series. For example, a data series has a color attribute, background image attribute, background gradient attribute, and so forth. - - The objects that belong to a series also have their own attributes. Normally, if the same attribute is set for a data point and the series to which it belongs, the data point attribute has precedence. - - A series is not necessarily plotted on a chart; it can store data point values that are used to perform a calculation from which another series is created and then plotted. For example, Series A, which is plotted, may be the result of adding Series B and Series C data points together, though neither of these series is plotted. In order to draw a object, the property must be set to the name of the object used to plot the series. - - When a series is created, it is automatically assigned to the object named "Default", or to the first available chart area in the chart area collection if the "Default" object does not exist. - - To disable the display of a series, set its property to a zero-length string. - - The property determines the type of chart that will be used to plot this series, if it is drawn. - + object represents a data series and is stored in the class. + + A stores objects using the class. It also stores attributes of the data series. For example, a data series has a color attribute, background image attribute, background gradient attribute, and so forth. + + The objects that belong to a series also have their own attributes. Normally, if the same attribute is set for a data point and the series to which it belongs, the data point attribute has precedence. + + A series is not necessarily plotted on a chart; it can store data point values that are used to perform a calculation from which another series is created and then plotted. For example, Series A, which is plotted, may be the result of adding Series B and Series C data points together, though neither of these series is plotted. In order to draw a object, the property must be set to the name of the object used to plot the series. + + When a series is created, it is automatically assigned to the object named "Default", or to the first available chart area in the chart area collection if the "Default" object does not exist. + + To disable the display of a series, set its property to a zero-length string. + + The property determines the type of chart that will be used to plot this series, if it is drawn. + ]]> @@ -88,16 +88,16 @@ The name of the object that will be created. This must be a unique name, otherwise an exception will be thrown. Initializes a new instance of the class with the specified series name. - class. - + class. + > [!NOTE] -> This series is only capable of storing objects that have one Y-value. If a data point that has multiple Y-values is added to this series, an exception will be thrown. - - To create a series at run time, use the method. - +> This series is only capable of storing objects that have one Y-value. If a data point that has multiple Y-values is added to this series, an exception will be thrown. + + To create a series at run time, use the method. + ]]> @@ -123,16 +123,16 @@ The maximum number of Y-values allowed for the objects that belong to this series. Initializes a new instance of the class with the specified name and maximum number of Y values. - class. - + class. + > [!IMPORTANT] -> This series will only be able to store objects that do not have more Y-values than the maximum set by the `yValues` parameter. If you add a data point that has more Y-values than the set maximum, an exception will be thrown. - - To create a object at run time, the `Add` and `Insert` methods of the Series collection property can also be used. - +> This series will only be able to store objects that do not have more Y-values than the maximum set by the `yValues` parameter. If you add a data point that has more Y-values than the set maximum, an exception will be thrown. + + To create a object at run time, the `Add` and `Insert` methods of the Series collection property can also be used. + ]]> @@ -213,42 +213,42 @@ Gets or sets the name of the object used to plot the data series, if any. A value that represents a object, which is used to plot the series. - object, or the first available chart area in the if "Default" does not exist. - - Set this property to a zero-length string if you do not want the series to be plotted. - - - -## Examples - -```vb -' Create a new legend and associate three series with the legend. -Public Sub CreateSecondLegend() - ' Attach the first series to a chart area. - Chart1.Series["Series1"].ChartArea = "Chart Area 1"; - - ' Attach the second series to a chart area. - Chart1.Series["Series2"].ChartArea = "Chart Area 2"; - -End Sub 'CreateSecondLegend -``` - -```csharp -// Create a new legend and associate three series with the legend. -public void CreateSecondLegend() -{ - // Attach the first series to a chart area. - Chart1.Series["Series1"].ChartArea = "Chart Area 1"; - - // Attach the second series to a chart area. - Chart1.Series["Series2"].ChartArea = "Chart Area 2"; - -} -``` - + object, or the first available chart area in the if "Default" does not exist. + + Set this property to a zero-length string if you do not want the series to be plotted. + + + +## Examples + +```vb +' Create a new legend and associate three series with the legend. +Public Sub CreateSecondLegend() + ' Attach the first series to a chart area. + Chart1.Series["Series1"].ChartArea = "Chart Area 1"; + + ' Attach the second series to a chart area. + Chart1.Series["Series2"].ChartArea = "Chart Area 2"; + +End Sub 'CreateSecondLegend +``` + +```csharp +// Create a new legend and associate three series with the legend. +public void CreateSecondLegend() +{ + // Attach the first series to a chart area. + Chart1.Series["Series1"].ChartArea = "Chart Area 1"; + + // Attach the second series to a chart area. + Chart1.Series["Series2"].ChartArea = "Chart Area 2"; + +} +``` + ]]> @@ -294,11 +294,11 @@ public void CreateSecondLegend() Gets or sets the chart type of a series. A enumeration value that indicates the chart type that will be used to represent the series. The default value is . - object; the value is case-sensitive. See the enumeration for a list of all possible chart types for a series. - + object; the value is case-sensitive. See the enumeration for a list of all possible chart types for a series. + ]]> @@ -424,22 +424,22 @@ public void CreateSecondLegend() Gets or sets the drawing style of points marked as empty. A object. - property determines the drawing style of points marked as empty, for example, in the border color, in the marker images, background color or images, and so forth. - - Certain properties are only applicable for specific chart types. For example, the property does not apply to line charts, but does apply to an area chart. - - To display an image that indicates an empty point, use the and properties, and not the property. - - The property determines the axis label for empty points. Note that for stacked chart types, the axis label is determined by the property of the first plotted series that has this property set. - - Data points can be manually marked as an empty by setting the property to `true`. Alternatively, one of the `InsertEmptyPoints` methods in the class can be used to check for missing data and insert empty points if a data point is missing. - + property determines the drawing style of points marked as empty, for example, in the border color, in the marker images, background color or images, and so forth. + + Certain properties are only applicable for specific chart types. For example, the property does not apply to line charts, but does apply to an area chart. + + To display an image that indicates an empty point, use the and properties, and not the property. + + The property determines the axis label for empty points. Note that for stacked chart types, the axis label is determined by the property of the first plotted series that has this property set. + + Data points can be manually marked as an empty by setting the property to `true`. Alternatively, one of the `InsertEmptyPoints` methods in the class can be used to check for missing data and insert empty points if a data point is missing. + > [!NOTE] -> In the case of line-type charts, the line color for lines that connect to an empty point is determined by the property setting. - +> In the case of line-type charts, the line color for lines that connect to an empty point is determined by the property setting. + ]]> @@ -490,11 +490,11 @@ public void CreateSecondLegend() if the series will be visible on the rendered chart; otherwise, . The default value is . - . - + . + ]]> @@ -537,18 +537,18 @@ public void CreateSecondLegend() if the indices of data points that belong to the series will be used for X-values; if they will not. The default value is . - [!IMPORTANT] -> If you are displaying multiple series and at least one series uses indexed X-values, then all series must be aligned - that is, have the same number of data points - and the corresponding points must have the same X-values. - +> If you are displaying multiple series and at least one series uses indexed X-values, then all series must be aligned - that is, have the same number of data points - and the corresponding points must have the same X-values. + ]]> @@ -590,13 +590,13 @@ public void CreateSecondLegend() Gets or sets the name of the series associated with the object. A value that represents the name of a object. - object. - - If you do not want the series shown in a legend, set this property to a zero-length string, or set the property to `false`. - + object. + + If you do not want the series shown in a legend, set this property to a zero-length string, or set the property to `false`. + ]]> @@ -634,13 +634,13 @@ public void CreateSecondLegend() Gets or sets a value that determines how often to display data point markers. An value that determines how often to display data point markers. The default value is one (1). - property specifies the frequency with which markers are displayed. For example, if you set this property to two (2), every other data point will use a marker. - - This property is only used if markers are enabled using the property. - + property specifies the frequency with which markers are displayed. For example, if you set this property to two (2), every other data point will use a marker. + + This property is only used if markers are enabled using the property. + ]]> @@ -674,15 +674,15 @@ public void CreateSecondLegend() Gets or sets the unique name of a object. A value that represents the unique name of the data series. - object from the object. - - If this property is set to a zero-length string, an exception will be thrown. - + object from the object. + + If this property is set to a zero-length string, an exception will be thrown. + ]]> @@ -728,24 +728,24 @@ public void CreateSecondLegend() Gets or sets the color palette of a object. An enumeration value that determines the palette for the data series. - object that the data points belong to also does not have an assigned color. - - If no series or data point colors are explicitly specified, the colors used depend on the chart type and the Chart control palette or Series palette, if one is specified. See the table below for further details: - -|Chart Type|Series Palette Used?|Colors Displayed by Data Points| -|----------------|--------------------------|-------------------------------------| -|Any shape chart (for example, Pie and Doughnut charts)|No|First available colors used from control palette. One color per data point.| -|All charts except shape charts|No|First available colors from control palette. One color per data series.| -|Any shape chart (for example, Pie and Doughnut charts)|Yes|First available colors used from palette. One color per data point.| -|All charts except shape charts|Yes|First available colors used from palette. One color per data series.| - - This property has precedence over the property of the root object, with respect to the display of data. - - NOTE: If the `Palette` property for both the and objects is set to None, and no color is assigned to the relevant data series/data points, the default palette "BrightPastel" or is used. - + object that the data points belong to also does not have an assigned color. + + If no series or data point colors are explicitly specified, the colors used depend on the chart type and the Chart control palette or Series palette, if one is specified. See the table below for further details: + +|Chart Type|Series Palette Used?|Colors Displayed by Data Points| +|----------------|--------------------------|-------------------------------------| +|Any shape chart (for example, Pie and Doughnut charts)|No|First available colors used from control palette. One color per data point.| +|All charts except shape charts|No|First available colors from control palette. One color per data series.| +|Any shape chart (for example, Pie and Doughnut charts)|Yes|First available colors used from palette. One color per data point.| +|All charts except shape charts|Yes|First available colors used from palette. One color per data series.| + + This property has precedence over the property of the root object, with respect to the display of data. + + NOTE: If the `Palette` property for both the and objects is set to None, and no color is assigned to the relevant data series/data points, the default palette "BrightPastel" or is used. + ]]> @@ -795,11 +795,11 @@ public void CreateSecondLegend() Gets a object. A object that represents a collection of objects. - collection property allows you to add and remove data points to a series. This property also provides methods and properties that can be used to manipulate this collection, such as finding data points, performing data-binding, and so forth. - + collection property allows you to add and remove data points to a series. This property also provides methods and properties that can be used to manipulate this collection, such as finding data points, performing data-binding, and so forth. + ]]> @@ -841,36 +841,36 @@ public void CreateSecondLegend() Gets or sets the shadow color of a series. A value. The default color is . - property to a value other than zero (0). - - - -## Examples - -``` -' Set series shadow color and offset -Public Sub SetSeriesShadow() - Chart1.Series("Default"}.ShadowColor = Color.Blue - Chart1.Series("Default"}.ShadowOffset = 2 -End Sub 'SetSeriesShadow -``` - -```csharp -// Set series shadow color and offset -public void SetSeriesShadow() -{ - Chart1.Series("Default"}.ShadowColor = Color.Blue; - Chart1.Series["Default"].ShadowOffset = 2; -} -``` - + property to a value other than zero (0). + + + +## Examples + +``` +' Set series shadow color and offset +Public Sub SetSeriesShadow() + Chart1.Series("Default"}.ShadowColor = Color.Blue + Chart1.Series("Default"}.ShadowOffset = 2 +End Sub 'SetSeriesShadow +``` + +```csharp +// Set series shadow color and offset +public void SetSeriesShadow() +{ + Chart1.Series("Default"}.ShadowColor = Color.Blue; + Chart1.Series["Default"].ShadowOffset = 2; +} +``` + ]]> @@ -908,31 +908,31 @@ public void SetSeriesShadow() Gets or sets the shadow offset, in pixels, of a series. An value that represents the shadow offset of the series, in pixels. - @@ -1098,13 +1098,13 @@ public void SetSeriesShadowOffset () Gets or sets the X-axis type of the series. A enumeration value that determines if the series uses the primary or secondary X-axis. - property to set axis properties, and not the property. - + property to set axis properties, and not the property. + ]]> @@ -1146,11 +1146,11 @@ public void SetSeriesShadowOffset () Gets or sets the member column of the chart data source used to data bind to the X-value of the series. A value. - @@ -1192,20 +1192,20 @@ public void SetSeriesShadowOffset () Gets or sets the value types plotted along the X-axis. A enumeration value that determines the type of X-value data stored by the series. The default value is . - property determines the type of data stored by the series. - - Set this property to to allow the X-value to be entered as a value, and not as a . Date and time values are internally stored by .NET Framework as values. The same holds true for the and properties of objects. - - The `IntervalType` property found in axis label, tick mark, and grid classes determines the interval type. - + property determines the type of data stored by the series. + + Set this property to to allow the X-value to be entered as a value, and not as a . Date and time values are internally stored by .NET Framework as values. The same holds true for the and properties of objects. + + The `IntervalType` property found in axis label, tick mark, and grid classes determines the interval type. + > [!NOTE] -> To correctly apply a format to axis labels that are generated from data point X-values, using the property, this property must be set to . - - This property can also be used to determine the data type to which the X-values are bound. - +> To correctly apply a format to axis labels that are generated from data point X-values, using the property, this property must be set to . + + This property can also be used to determine the data type to which the X-values are bound. + ]]> @@ -1243,15 +1243,15 @@ public void SetSeriesShadowOffset () Gets or sets the Y-axis type of a series. An enumeration value that determines if a series uses the primary or secondary Y-axis. - property determines if a series is plotted using the primary or secondary Y-axis. - - For all chart types except pie, doughnut, range bar, bar and stacked bar charts, the primary Y-axis is the left vertical axis, and the secondary axis is the right vertical axis. For bar and stacked bar charts, the primary axis is the lower horizontal axis, and the secondary Y-axis is the upper horizontal axis. - - When data is plotted using the secondary Y-axis, you must use the property to set axis properties, and not the property. - + property determines if a series is plotted using the primary or secondary Y-axis. + + For all chart types except pie, doughnut, range bar, bar and stacked bar charts, the primary Y-axis is the left vertical axis, and the secondary axis is the right vertical axis. For bar and stacked bar charts, the primary axis is the lower horizontal axis, and the secondary Y-axis is the upper horizontal axis. + + When data is plotted using the secondary Y-axis, you must use the property to set axis properties, and not the property. + ]]> @@ -1301,11 +1301,11 @@ public void SetSeriesShadowOffset () Gets or sets member columns of the chart data source used to bind data to the Y-values of the series. A value. - @@ -1343,13 +1343,13 @@ public void SetSeriesShadowOffset () Gets or sets the maximum number of Y-values that objects in a are allowed to have. An value that represents the maximum number of Y-values that the data points in a series are allowed to have. The default value to one (1). - object that has more Y-values than this property specifies, the excess Y-values will be ignored. - - The number of Y-values that are required to properly display a chart depends on the chart type selected. - + object that has more Y-values than this property specifies, the excess Y-values will be ignored. + + The number of Y-values that are required to properly display a chart depends on the chart type selected. + ]]> @@ -1395,17 +1395,17 @@ public void SetSeriesShadowOffset () Gets or sets the type of Y-value data in the data points stored by a series. A enumeration value that determines the type of Y-value data stored by the series. The default value is . - property determines the type of data stored by the series. The value of this property is normally set to either or . - - The `IntervalType` property found in axis label, tick mark, and grid classes determines the interval type. - - This property can also be used to determine the data type to which the Y-values are bound. - - It is possible to plot date expressions as the values of data points, though this is rarely done. If you set this property to , the Y-value can then entered as a value, and not as a . Date and time values are internally stored by .NET Framework as values. - + property determines the type of data stored by the series. The value of this property is normally set to either or . + + The `IntervalType` property found in axis label, tick mark, and grid classes determines the interval type. + + This property can also be used to determine the data type to which the Y-values are bound. + + It is possible to plot date expressions as the values of data points, though this is rarely done. If you set this property to , the Y-value can then entered as a value, and not as a . Date and time values are internally stored by .NET Framework as values. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/SmartLabelStyle.xml b/xml/System.Web.UI.DataVisualization.Charting/SmartLabelStyle.xml index da870d53c46..d8b6b58316e 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/SmartLabelStyle.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/SmartLabelStyle.xml @@ -26,87 +26,87 @@ Provides methods and properties used to perform intelligent, rule-based data point label positioning to resolve overlapping data point label issues. - and properties control the embellishments, such as arrowheads, that appear at the end of the callout line. - - The property can be set to any object. If you set the color of the callout line, you will also automatically set the color of the and the embellishment defined by the . - - The property controls the pixel width of the callout line. Use of this property will also scale the embellishments of the and the . - - The movement of smart labels can be controlled through the use of several motion-related properties. These define the rules of movement for the direction, distance and whether the data point label is allowed to leave the plotting area. The default movement rules will normally resolve most issues. The defines a value that specifies the maximum distance in pixels from the data point that data point labels are allowed to be moved in case of overlapping. The property defines a value that specifies the minimum distance in pixels from the data point that data point labels will be moved in case of overlapping. When a data point label needs to be repositioned, the label will be moved by at least the number of pixels specified. - - The property indicates whether the labels are hidden when overlapping issues cannot be resolved. If the property is `true`, and the data point cannot be drawn within the area specified by and in the directions allowed by , the data point label will not be drawn. - - The property defines the direction(s) in which the data point label can be moved. This property accepts one value or a bitwise-OR of multiple values. The default is the bitwise-OR of all values, to allow repositioning in all possible directions except to the center of the data point. - - Smart labels are not supported for the following chart types: - -- Bar charts: bar and hundred-percent-stacked bar charts. - -- Shape charts: pie, doughnut, polar and radar charts. - -- Range charts: range, range column and range bar charts. - -- Stacked area charts: stacked area and hundred-percent-stacked area charts. - - - -## Examples - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Private Function SetSmartLabelsOptions() - - ' Enabling the SmartLabels™ attribute. - Chart1.Series("Series1").SmartLabels.Enabled = true - - ' Set the callout style. - Chart1.Series("Series1").SmartLabels.CalloutStyle = LabelCalloutStyle.Underlined - - ' Set the callout line color. - Chart1.Series("Series1").SmartLabels.CalloutLineColor = Color.Goldenrod; - - ' Set the callout line style. - Chart1.Series("Series1").SmartLabels.CalloutLineStyle = ChartDashStyle.Dash - - ' Set the callout line width. - Chart1.Series("Series1").SmartLabels.CalloutLineWidth = 3 - - ' Set the callout line anchor cap. - Chart1.Series("Series1").SmartLabels.CalloutLineAnchorCap = LineAnchorCap.Arrow -End Function -``` - -```csharp -using System.Web.UI.DataVisualization.Charting - -private void SetSmartLabelsOptions() -{ - // Enabling the SmartLabels™ attribute. - Chart1.Series["Series1"].SmartLabels.Enabled = true; - - // Set the callout style. - Chart1.Series["Series1"].SmartLabels.CalloutStyle = LabelCalloutStyle.Underlined; - - // Set the callout line color. - Chart1.Series["Series1"].SmartLabels.CalloutLineColor = Color.Goldenrod; - - // Set the callout line style. - Chart1.Series["Series1"].SmartLabels.CalloutLineStyle = ChartDashStyle.Dash; - - // Set the callout line width. - Chart1.Series["Series1"].SmartLabels.CalloutLineWidth = 3; - - // Set the callout line anchor cap. - Chart1.Series["Series1"].SmartLabels.CalloutLineAnchorCap = LineAnchorCap.Arrow; -} -``` - + and properties control the embellishments, such as arrowheads, that appear at the end of the callout line. + + The property can be set to any object. If you set the color of the callout line, you will also automatically set the color of the and the embellishment defined by the . + + The property controls the pixel width of the callout line. Use of this property will also scale the embellishments of the and the . + + The movement of smart labels can be controlled through the use of several motion-related properties. These define the rules of movement for the direction, distance and whether the data point label is allowed to leave the plotting area. The default movement rules will normally resolve most issues. The defines a value that specifies the maximum distance in pixels from the data point that data point labels are allowed to be moved in case of overlapping. The property defines a value that specifies the minimum distance in pixels from the data point that data point labels will be moved in case of overlapping. When a data point label needs to be repositioned, the label will be moved by at least the number of pixels specified. + + The property indicates whether the labels are hidden when overlapping issues cannot be resolved. If the property is `true`, and the data point cannot be drawn within the area specified by and in the directions allowed by , the data point label will not be drawn. + + The property defines the direction(s) in which the data point label can be moved. This property accepts one value or a bitwise-OR of multiple values. The default is the bitwise-OR of all values, to allow repositioning in all possible directions except to the center of the data point. + + Smart labels are not supported for the following chart types: + +- Bar charts: bar and hundred-percent-stacked bar charts. + +- Shape charts: pie, doughnut, polar and radar charts. + +- Range charts: range, range column and range bar charts. + +- Stacked area charts: stacked area and hundred-percent-stacked area charts. + + + +## Examples + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Private Function SetSmartLabelsOptions() + + ' Enabling the SmartLabels™ attribute. + Chart1.Series("Series1").SmartLabels.Enabled = true + + ' Set the callout style. + Chart1.Series("Series1").SmartLabels.CalloutStyle = LabelCalloutStyle.Underlined + + ' Set the callout line color. + Chart1.Series("Series1").SmartLabels.CalloutLineColor = Color.Goldenrod; + + ' Set the callout line style. + Chart1.Series("Series1").SmartLabels.CalloutLineStyle = ChartDashStyle.Dash + + ' Set the callout line width. + Chart1.Series("Series1").SmartLabels.CalloutLineWidth = 3 + + ' Set the callout line anchor cap. + Chart1.Series("Series1").SmartLabels.CalloutLineAnchorCap = LineAnchorCap.Arrow +End Function +``` + +```csharp +using System.Web.UI.DataVisualization.Charting + +private void SetSmartLabelsOptions() +{ + // Enabling the SmartLabels™ attribute. + Chart1.Series["Series1"].SmartLabels.Enabled = true; + + // Set the callout style. + Chart1.Series["Series1"].SmartLabels.CalloutStyle = LabelCalloutStyle.Underlined; + + // Set the callout line color. + Chart1.Series["Series1"].SmartLabels.CalloutLineColor = Color.Goldenrod; + + // Set the callout line style. + Chart1.Series["Series1"].SmartLabels.CalloutLineStyle = ChartDashStyle.Dash; + + // Set the callout line width. + Chart1.Series["Series1"].SmartLabels.CalloutLineWidth = 3; + + // Set the callout line anchor cap. + Chart1.Series["Series1"].SmartLabels.CalloutLineAnchorCap = LineAnchorCap.Arrow; +} +``` + ]]> @@ -208,11 +208,11 @@ private void SetSmartLabelsOptions() Gets or sets the background color of the label callout. A value. - property is set to a value of . - + property is set to a value of . + ]]> @@ -518,14 +518,14 @@ private void SetSmartLabelsOptions() if labels will be hidden if they overlap. if overlapped labels will not be hidden. The default value is . - and , in the directions allowed by the , property, and this property is `true`, the data point label will not be drawn. - + and , in the directions allowed by the , property, and this property is `true`, the data point label will not be drawn. + > [!NOTE] -> Smart labels only work when the property is set to zero. - +> Smart labels only work when the property is set to zero. + ]]> @@ -563,11 +563,11 @@ private void SetSmartLabelsOptions() Gets or sets the maximum distance, in pixels, that the overlapped object can be moved from the marker. A value. - @@ -605,11 +605,11 @@ private void SetSmartLabelsOptions() Gets or sets the minimum distance, in pixels, that the overlapped object can be moved from the marker. A value. - diff --git a/xml/System.Web.UI.DataVisualization.Charting/StripLine.xml b/xml/System.Web.UI.DataVisualization.Charting/StripLine.xml index abec2da7ed6..8fd92c90a44 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/StripLine.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/StripLine.xml @@ -26,231 +26,231 @@ Represents the strip lines on a chart. - object can either be drawn once, or repeatedly, for a given interval. This action is controlled by the property. When a value of -1 is assigned to the property, one strip line will be drawn. When a non-zero value is assigned to the property, a strip line will be drawn repeatedly at each given interval. The location where a strip line is drawn is also affected by the and properties of the strip line. - - Strip lines are always associated with an object. They can be added at both design time and run time. - - To add a horizontal or vertical line to display a threshold, set the property to a value of 0.0. This will result in a line being drawn. You can use the , and properties for the color, width and style of the line. No chart background properties (`Back*`) are used when the property is set to 0.0. - - Use the property of the strip line to associate text with a strip line. The placement and orientation of this text can be controlled by the property. - - When multiple strip lines are defined for the same axis, it is possible that the strip lines will overlap. The Z-order of objects is determined by their order of occurrence in the object. This means that the first occurrence is drawn first; the second occurrence is drawn second, and so on. - - Strip lines are not supported for the following chart types: Pie, Doughnut, Funnel, Pyramid, Kagi, ThreeLineBreak, PointAndFigure, Polar and Radar. - - - -## Examples - The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Public Partial Class StripLines - Inherits System.Web.UI.Page - Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) - - ' Add chart data before adding strip lines. - AddChartData() - - ' Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines() - - ' Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines() - - ' Adds a threshold line using strip lines. - AddThresholdStripLine() - End Sub - - ' Adds a week of data with values between 20 and 35. - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ' Adds repeating horizontal strip lines at intervals of 5. - Private Sub AddHorizRepeatingStripLines() - ' Instantiate new strip line - Dim stripLine1 As New StripLine() - stripLine1.StripWidth = 2.5 - stripLine1.Interval = 5 - - ' Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red) - - ' Add the strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) - End Sub - - ' Adds strip lines to highlight weekend values. - Private Sub HighlightWeekendsWithStripLines() - ' Set strip line to highlight weekends - Dim stripLine2 As New StripLine() - stripLine2.BackColor = Color.FromArgb(120, Color.Gold) - stripLine2.IntervalOffset = -1.5 - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days - stripLine2.Interval = 1 - stripLine2.IntervalType = DateTimeIntervalType.Weeks - stripLine2.StripWidth = 2 - stripLine2.StripWidthType = DateTimeIntervalType.Days - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) - - ' Set the axis label to show the name of the day - ' This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" - End Sub - - ' Adds a horizontal threshold strip line at the mean value of the first series. - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines(); - - // Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds repeating horizontal strip lines at intervals of 5. - /// - private void AddHorizRepeatingStripLines() - { - // Instantiate new strip line - StripLine stripLine1 = new StripLine(); - stripLine1.StripWidth = 0; - stripLine1.BorderColor = Color.Black; - stripLine1.BorderWidth = 3; - stripLine1.Interval = 5; - - // Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red); - - stripLine1.BackSecondaryColor = Color.Black; - stripLine1.BackGradientStyle = GradientStyle.LeftRight; - - // Add the strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); - } - - /// - /// Adds strip lines to highlight weekend values. - /// - private void HighlightWeekendsWithStripLines() - { - // Set strip line to highlight weekends - StripLine stripLine2 = new StripLine(); - stripLine2.BackColor = Color.FromArgb(120, Color.Gold); - stripLine2.IntervalOffset = -1.5; - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; - stripLine2.Interval = 1; - stripLine2.IntervalType = DateTimeIntervalType.Weeks; - stripLine2.StripWidth = 2; - stripLine2.StripWidthType = DateTimeIntervalType.Days; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); - - // Set the axis label to show the name of the day - // This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + object can either be drawn once, or repeatedly, for a given interval. This action is controlled by the property. When a value of -1 is assigned to the property, one strip line will be drawn. When a non-zero value is assigned to the property, a strip line will be drawn repeatedly at each given interval. The location where a strip line is drawn is also affected by the and properties of the strip line. + + Strip lines are always associated with an object. They can be added at both design time and run time. + + To add a horizontal or vertical line to display a threshold, set the property to a value of 0.0. This will result in a line being drawn. You can use the , and properties for the color, width and style of the line. No chart background properties (`Back*`) are used when the property is set to 0.0. + + Use the property of the strip line to associate text with a strip line. The placement and orientation of this text can be controlled by the property. + + When multiple strip lines are defined for the same axis, it is possible that the strip lines will overlap. The Z-order of objects is determined by their order of occurrence in the object. This means that the first occurrence is drawn first; the second occurrence is drawn second, and so on. + + Strip lines are not supported for the following chart types: Pie, Doughnut, Funnel, Pyramid, Kagi, ThreeLineBreak, PointAndFigure, Polar and Radar. + + + +## Examples + The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Public Partial Class StripLines + Inherits System.Web.UI.Page + Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) + + ' Add chart data before adding strip lines. + AddChartData() + + ' Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines() + + ' Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines() + + ' Adds a threshold line using strip lines. + AddThresholdStripLine() + End Sub + + ' Adds a week of data with values between 20 and 35. + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ' Adds repeating horizontal strip lines at intervals of 5. + Private Sub AddHorizRepeatingStripLines() + ' Instantiate new strip line + Dim stripLine1 As New StripLine() + stripLine1.StripWidth = 2.5 + stripLine1.Interval = 5 + + ' Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red) + + ' Add the strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) + End Sub + + ' Adds strip lines to highlight weekend values. + Private Sub HighlightWeekendsWithStripLines() + ' Set strip line to highlight weekends + Dim stripLine2 As New StripLine() + stripLine2.BackColor = Color.FromArgb(120, Color.Gold) + stripLine2.IntervalOffset = -1.5 + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days + stripLine2.Interval = 1 + stripLine2.IntervalType = DateTimeIntervalType.Weeks + stripLine2.StripWidth = 2 + stripLine2.StripWidthType = DateTimeIntervalType.Days + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) + + ' Set the axis label to show the name of the day + ' This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" + End Sub + + ' Adds a horizontal threshold strip line at the mean value of the first series. + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines(); + + // Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds repeating horizontal strip lines at intervals of 5. + /// + private void AddHorizRepeatingStripLines() + { + // Instantiate new strip line + StripLine stripLine1 = new StripLine(); + stripLine1.StripWidth = 0; + stripLine1.BorderColor = Color.Black; + stripLine1.BorderWidth = 3; + stripLine1.Interval = 5; + + // Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red); + + stripLine1.BackSecondaryColor = Color.Black; + stripLine1.BackGradientStyle = GradientStyle.LeftRight; + + // Add the strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); + } + + /// + /// Adds strip lines to highlight weekend values. + /// + private void HighlightWeekendsWithStripLines() + { + // Set strip line to highlight weekends + StripLine stripLine2 = new StripLine(); + stripLine2.BackColor = Color.FromArgb(120, Color.Gold); + stripLine2.IntervalOffset = -1.5; + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; + stripLine2.Interval = 1; + stripLine2.IntervalType = DateTimeIntervalType.Weeks; + stripLine2.StripWidth = 2; + stripLine2.StripWidthType = DateTimeIntervalType.Days; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); + + // Set the axis label to show the name of the day + // This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -321,224 +321,224 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the background color of the strip line. A structure. The default color is . - and properties. - - If you set this color to "transparent" - in other words, set the alpha value to 0 - no color will be assigned to the background of the element. As a result, the background will be transparent. - - If the property is set to 0.0, a line will be drawn and the property will determine the color of the line, not this property. - - - -## Examples - The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Public Partial Class StripLines - Inherits System.Web.UI.Page - Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) - - ' Add chart data before adding strip lines. - AddChartData() - - ' Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines() - - ' Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines() - - ' Adds a threshold line using strip lines. - AddThresholdStripLine() - End Sub - - ''' - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds repeating horizontal strip lines at intervals of 5. - ''' - Private Sub AddHorizRepeatingStripLines() - ' Instantiate new strip line - Dim stripLine1 As New StripLine() - stripLine1.StripWidth = 2.5 - stripLine1.Interval = 5 - - ' Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red) - - ' Add the strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) - End Sub - - ''' - ''' Adds strip lines to highlight weekend values. - ''' - Private Sub HighlightWeekendsWithStripLines() - ' Set strip line to highlight weekends - Dim stripLine2 As New StripLine() - stripLine2.BackColor = Color.FromArgb(120, Color.Gold) - stripLine2.IntervalOffset = -1.5 - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days - stripLine2.Interval = 1 - stripLine2.IntervalType = DateTimeIntervalType.Weeks - stripLine2.StripWidth = 2 - stripLine2.StripWidthType = DateTimeIntervalType.Days - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) - - ' Set the axis label to show the name of the day - ' This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines(); - - // Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds repeating horizontal strip lines at intervals of 5. - /// - private void AddHorizRepeatingStripLines() - { - // Instantiate new strip line - StripLine stripLine1 = new StripLine(); - stripLine1.StripWidth = 0; - stripLine1.BorderColor = Color.Black; - stripLine1.BorderWidth = 3; - stripLine1.Interval = 5; - - // Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red); - - stripLine1.BackSecondaryColor = Color.Black; - stripLine1.BackGradientStyle = GradientStyle.LeftRight; - - // Add the strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); - } - - /// - /// Adds strip lines to highlight weekend values. - /// - private void HighlightWeekendsWithStripLines() - { - // Set strip line to highlight weekends - StripLine stripLine2 = new StripLine(); - stripLine2.BackColor = Color.FromArgb(120, Color.Gold); - stripLine2.IntervalOffset = -1.5; - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; - stripLine2.Interval = 1; - stripLine2.IntervalType = DateTimeIntervalType.Weeks; - stripLine2.StripWidth = 2; - stripLine2.StripWidthType = DateTimeIntervalType.Days; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); - - // Set the axis label to show the name of the day - // This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + and properties. + + If you set this color to "transparent" - in other words, set the alpha value to 0 - no color will be assigned to the background of the element. As a result, the background will be transparent. + + If the property is set to 0.0, a line will be drawn and the property will determine the color of the line, not this property. + + + +## Examples + The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Public Partial Class StripLines + Inherits System.Web.UI.Page + Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) + + ' Add chart data before adding strip lines. + AddChartData() + + ' Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines() + + ' Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines() + + ' Adds a threshold line using strip lines. + AddThresholdStripLine() + End Sub + + ''' + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds repeating horizontal strip lines at intervals of 5. + ''' + Private Sub AddHorizRepeatingStripLines() + ' Instantiate new strip line + Dim stripLine1 As New StripLine() + stripLine1.StripWidth = 2.5 + stripLine1.Interval = 5 + + ' Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red) + + ' Add the strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) + End Sub + + ''' + ''' Adds strip lines to highlight weekend values. + ''' + Private Sub HighlightWeekendsWithStripLines() + ' Set strip line to highlight weekends + Dim stripLine2 As New StripLine() + stripLine2.BackColor = Color.FromArgb(120, Color.Gold) + stripLine2.IntervalOffset = -1.5 + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days + stripLine2.Interval = 1 + stripLine2.IntervalType = DateTimeIntervalType.Weeks + stripLine2.StripWidth = 2 + stripLine2.StripWidthType = DateTimeIntervalType.Days + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) + + ' Set the axis label to show the name of the day + ' This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines(); + + // Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds repeating horizontal strip lines at intervals of 5. + /// + private void AddHorizRepeatingStripLines() + { + // Instantiate new strip line + StripLine stripLine1 = new StripLine(); + stripLine1.StripWidth = 0; + stripLine1.BorderColor = Color.Black; + stripLine1.BorderWidth = 3; + stripLine1.Interval = 5; + + // Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red); + + stripLine1.BackSecondaryColor = Color.Black; + stripLine1.BackGradientStyle = GradientStyle.LeftRight; + + // Add the strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); + } + + /// + /// Adds strip lines to highlight weekend values. + /// + private void HighlightWeekendsWithStripLines() + { + // Set strip line to highlight weekends + StripLine stripLine2 = new StripLine(); + stripLine2.BackColor = Color.FromArgb(120, Color.Gold); + stripLine2.IntervalOffset = -1.5; + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; + stripLine2.Interval = 1; + stripLine2.IntervalType = DateTimeIntervalType.Weeks; + stripLine2.StripWidth = 2; + stripLine2.StripWidthType = DateTimeIntervalType.Days; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); + + // Set the axis label to show the name of the day + // This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -588,21 +588,21 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the gradient style of the strip line. A enumeration. The default value is . - property determines whether a chart element will display a gradient, as well as the orientation of the gradient, if used. - - To use gradient colors: - -- Use the property to set the primary color. - -- Use the property to set the secondary color. - -- Set this property of the chart element to the desired gradient style. - - This property is not applicable if the property is set to a value of 0.0. - + property determines whether a chart element will display a gradient, as well as the orientation of the gradient, if used. + + To use gradient colors: + +- Use the property to set the primary color. + +- Use the property to set the secondary color. + +- Set this property of the chart element to the desired gradient style. + + This property is not applicable if the property is set to a value of 0.0. + ]]> @@ -652,11 +652,11 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the hatching style of the strip line. A enumeration. The default value is . - and properties. This property is not applicable if the property is set to a value of 0.0. - + and properties. This property is not applicable if the property is set to a value of 0.0. + ]]> @@ -710,21 +710,21 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the background image of the strip line. A value that represents an image file URL. The default is an empty string. - property defines a path to a background image for many chart elements, and is an absolute or relative URL. - - To position this image, use the and properties. - - You can also specify that one color will be displayed by the image as "transparent" by setting the property. - - An image can be any valid graphics file supported by .NET Framework, including icons. - - This property is not applicable if the property is set to a value of 0.0. - - Background images take precedence over other background properties, such as gradient colors. - + property defines a path to a background image for many chart elements, and is an absolute or relative URL. + + To position this image, use the and properties. + + You can also specify that one color will be displayed by the image as "transparent" by setting the property. + + An image can be any valid graphics file supported by .NET Framework, including icons. + + This property is not applicable if the property is set to a value of 0.0. + + Background images take precedence over other background properties, such as gradient colors. + ]]> @@ -770,13 +770,13 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the background image alignment. A enumeration value. The default value is . - property is set to . - - For more information about available alignments, see the enumeration topic. - + property is set to . + + For more information about available alignments, see the enumeration topic. + ]]> @@ -834,11 +834,11 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the color of a strip line background image that will be implemented as transparent. A value that will be displayed as transparent. - property is set to a value of 0.0. - + property is set to a value of 0.0. + ]]> @@ -884,19 +884,19 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the drawing mode of the background image of the strip line. A integer enumeration. The default is . - enumeration topic. - - If the property is set to , the location where the image is drawn will be determined by the property setting. - - This property is not applicable if is set to a value of 0.0. - + enumeration topic. + + If the property is set to , the location where the image is drawn will be determined by the property setting. + + This property is not applicable if is set to a value of 0.0. + ]]> @@ -950,25 +950,25 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the secondary color of the strip line background. A value used for the secondary color of a background with hatching or gradient fill. The default color is . - property determines the color of the hatching lines. - - To use gradient colors for the background of a chart element: - -- Use the property to set the primary color. - -- Use this property to set the secondary color. - -- Set the property to the desired gradient style. - - This property is not applicable if the property is set to a value of 0.0. - + property determines the color of the hatching lines. + + To use gradient colors for the background of a chart element: + +- Use the property to set the primary color. + +- Use this property to set the secondary color. + +- Set the property to the desired gradient style. + + This property is not applicable if the property is set to a value of 0.0. + ]]> @@ -1022,13 +1022,13 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the border color of a strip line. A value. The default color is . - property of a object is set to 0.0, a line will be drawn, and it is this property and not the property setting that will determine the color of the line. - + property of a object is set to 0.0, a line will be drawn, and it is this property and not the property setting that will determine the color of the line. + ]]> @@ -1070,11 +1070,11 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the border style of the strip line. A enumeration value that determines the border style of the strip line. - @@ -1116,11 +1116,11 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the border width of the strip line. An value that determines the width of the strip line's border, in pixels. - @@ -1246,11 +1246,11 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the color of the strip line text. A value that represents the text color of a strip line. The default value is . - @@ -1296,218 +1296,218 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the interval for a strip line, and determines if the strip line is drawn once or repeatedly. A value that represents the interval between strip lines. The default value is 0.0. - property to a value of zero (0.0), one strip line will be displayed, with a width specified by the property. When you set to a value of other than zero, multiple strip lines will be shown. The unit that is used for the property is defined by the property. - - - -## Examples - The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Public Partial Class StripLines - Inherits System.Web.UI.Page - Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) - - ' Add chart data before adding strip lines. - AddChartData() - - ' Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines() - - ' Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines() - - ' Adds a threshold line using strip lines. - AddThresholdStripLine() - End Sub - - ''' - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds repeating horizontal strip lines at intervals of 5. - ''' - Private Sub AddHorizRepeatingStripLines() - ' Instantiate new strip line - Dim stripLine1 As New StripLine() - stripLine1.StripWidth = 2.5 - stripLine1.Interval = 5 - - ' Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red) - - ' Add the strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) - End Sub - - ''' - ''' Adds strip lines to highlight weekend values. - ''' - Private Sub HighlightWeekendsWithStripLines() - ' Set strip line to highlight weekends - Dim stripLine2 As New StripLine() - stripLine2.BackColor = Color.FromArgb(120, Color.Gold) - stripLine2.IntervalOffset = -1.5 - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days - stripLine2.Interval = 1 - stripLine2.IntervalType = DateTimeIntervalType.Weeks - stripLine2.StripWidth = 2 - stripLine2.StripWidthType = DateTimeIntervalType.Days - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) - - ' Set the axis label to show the name of the day - ' This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines(); - - // Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds repeating horizontal strip lines at intervals of 5. - /// - private void AddHorizRepeatingStripLines() - { - // Instantiate new strip line - StripLine stripLine1 = new StripLine(); - stripLine1.StripWidth = 0; - stripLine1.BorderColor = Color.Black; - stripLine1.BorderWidth = 3; - stripLine1.Interval = 5; - - // Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red); - - stripLine1.BackSecondaryColor = Color.Black; - stripLine1.BackGradientStyle = GradientStyle.LeftRight; - - // Add the strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); - } - - /// - /// Adds strip lines to highlight weekend values. - /// - private void HighlightWeekendsWithStripLines() - { - // Set strip line to highlight weekends - StripLine stripLine2 = new StripLine(); - stripLine2.BackColor = Color.FromArgb(120, Color.Gold); - stripLine2.IntervalOffset = -1.5; - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; - stripLine2.Interval = 1; - stripLine2.IntervalType = DateTimeIntervalType.Weeks; - stripLine2.StripWidth = 2; - stripLine2.StripWidthType = DateTimeIntervalType.Days; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); - - // Set the axis label to show the name of the day - // This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + property to a value of zero (0.0), one strip line will be displayed, with a width specified by the property. When you set to a value of other than zero, multiple strip lines will be shown. The unit that is used for the property is defined by the property. + + + +## Examples + The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Public Partial Class StripLines + Inherits System.Web.UI.Page + Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) + + ' Add chart data before adding strip lines. + AddChartData() + + ' Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines() + + ' Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines() + + ' Adds a threshold line using strip lines. + AddThresholdStripLine() + End Sub + + ''' + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds repeating horizontal strip lines at intervals of 5. + ''' + Private Sub AddHorizRepeatingStripLines() + ' Instantiate new strip line + Dim stripLine1 As New StripLine() + stripLine1.StripWidth = 2.5 + stripLine1.Interval = 5 + + ' Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red) + + ' Add the strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) + End Sub + + ''' + ''' Adds strip lines to highlight weekend values. + ''' + Private Sub HighlightWeekendsWithStripLines() + ' Set strip line to highlight weekends + Dim stripLine2 As New StripLine() + stripLine2.BackColor = Color.FromArgb(120, Color.Gold) + stripLine2.IntervalOffset = -1.5 + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days + stripLine2.Interval = 1 + stripLine2.IntervalType = DateTimeIntervalType.Weeks + stripLine2.StripWidth = 2 + stripLine2.StripWidthType = DateTimeIntervalType.Days + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) + + ' Set the axis label to show the name of the day + ' This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines(); + + // Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds repeating horizontal strip lines at intervals of 5. + /// + private void AddHorizRepeatingStripLines() + { + // Instantiate new strip line + StripLine stripLine1 = new StripLine(); + stripLine1.StripWidth = 0; + stripLine1.BorderColor = Color.Black; + stripLine1.BorderWidth = 3; + stripLine1.Interval = 5; + + // Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red); + + stripLine1.BackSecondaryColor = Color.Black; + stripLine1.BackGradientStyle = GradientStyle.LeftRight; + + // Add the strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); + } + + /// + /// Adds strip lines to highlight weekend values. + /// + private void HighlightWeekendsWithStripLines() + { + // Set strip line to highlight weekends + StripLine stripLine2 = new StripLine(); + stripLine2.BackColor = Color.FromArgb(120, Color.Gold); + stripLine2.IntervalOffset = -1.5; + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; + stripLine2.Interval = 1; + stripLine2.IntervalType = DateTimeIntervalType.Weeks; + stripLine2.StripWidth = 2; + stripLine2.StripWidthType = DateTimeIntervalType.Days; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); + + // Set the axis label to show the name of the day + // This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -1553,224 +1553,224 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the offset of grid lines, tick marks, strip lines and axis labels. A value that represents the interval offset. - property of the object. - - The property setting defines the units of measurement of the offset. - - The can be a negative value. - - The default value is `Auto` (`0`). - - - -## Examples - The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Public Partial Class StripLines - Inherits System.Web.UI.Page - Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) - - ' Add chart data before adding strip lines. - AddChartData() - - ' Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines() - - ' Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines() - - ' Adds a threshold line using strip lines. - AddThresholdStripLine() - End Sub - - ''' - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds repeating horizontal strip lines at intervals of 5. - ''' - Private Sub AddHorizRepeatingStripLines() - ' Instantiate new strip line - Dim stripLine1 As New StripLine() - stripLine1.StripWidth = 2.5 - stripLine1.Interval = 5 - - ' Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red) - - ' Add the strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) - End Sub - - ''' - ''' Adds strip lines to highlight weekend values. - ''' - Private Sub HighlightWeekendsWithStripLines() - ' Set strip line to highlight weekends - Dim stripLine2 As New StripLine() - stripLine2.BackColor = Color.FromArgb(120, Color.Gold) - stripLine2.IntervalOffset = -1.5 - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days - stripLine2.Interval = 1 - stripLine2.IntervalType = DateTimeIntervalType.Weeks - stripLine2.StripWidth = 2 - stripLine2.StripWidthType = DateTimeIntervalType.Days - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) - - ' Set the axis label to show the name of the day - ' This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines(); - - // Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds repeating horizontal strip lines at intervals of 5. - /// - private void AddHorizRepeatingStripLines() - { - // Instantiate new strip line - StripLine stripLine1 = new StripLine(); - stripLine1.StripWidth = 0; - stripLine1.BorderColor = Color.Black; - stripLine1.BorderWidth = 3; - stripLine1.Interval = 5; - - // Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red); - - stripLine1.BackSecondaryColor = Color.Black; - stripLine1.BackGradientStyle = GradientStyle.LeftRight; - - // Add the strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); - } - - /// - /// Adds strip lines to highlight weekend values. - /// - private void HighlightWeekendsWithStripLines() - { - // Set strip line to highlight weekends - StripLine stripLine2 = new StripLine(); - stripLine2.BackColor = Color.FromArgb(120, Color.Gold); - stripLine2.IntervalOffset = -1.5; - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; - stripLine2.Interval = 1; - stripLine2.IntervalType = DateTimeIntervalType.Weeks; - stripLine2.StripWidth = 2; - stripLine2.StripWidthType = DateTimeIntervalType.Days; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); - - // Set the axis label to show the name of the day - // This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + property of the object. + + The property setting defines the units of measurement of the offset. + + The can be a negative value. + + The default value is `Auto` (`0`). + + + +## Examples + The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Public Partial Class StripLines + Inherits System.Web.UI.Page + Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) + + ' Add chart data before adding strip lines. + AddChartData() + + ' Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines() + + ' Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines() + + ' Adds a threshold line using strip lines. + AddThresholdStripLine() + End Sub + + ''' + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds repeating horizontal strip lines at intervals of 5. + ''' + Private Sub AddHorizRepeatingStripLines() + ' Instantiate new strip line + Dim stripLine1 As New StripLine() + stripLine1.StripWidth = 2.5 + stripLine1.Interval = 5 + + ' Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red) + + ' Add the strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) + End Sub + + ''' + ''' Adds strip lines to highlight weekend values. + ''' + Private Sub HighlightWeekendsWithStripLines() + ' Set strip line to highlight weekends + Dim stripLine2 As New StripLine() + stripLine2.BackColor = Color.FromArgb(120, Color.Gold) + stripLine2.IntervalOffset = -1.5 + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days + stripLine2.Interval = 1 + stripLine2.IntervalType = DateTimeIntervalType.Weeks + stripLine2.StripWidth = 2 + stripLine2.StripWidthType = DateTimeIntervalType.Days + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) + + ' Set the axis label to show the name of the day + ' This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines(); + + // Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds repeating horizontal strip lines at intervals of 5. + /// + private void AddHorizRepeatingStripLines() + { + // Instantiate new strip line + StripLine stripLine1 = new StripLine(); + stripLine1.StripWidth = 0; + stripLine1.BorderColor = Color.Black; + stripLine1.BorderWidth = 3; + stripLine1.Interval = 5; + + // Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red); + + stripLine1.BackSecondaryColor = Color.Black; + stripLine1.BackGradientStyle = GradientStyle.LeftRight; + + // Add the strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); + } + + /// + /// Adds strip lines to highlight weekend values. + /// + private void HighlightWeekendsWithStripLines() + { + // Set strip line to highlight weekends + StripLine stripLine2 = new StripLine(); + stripLine2.BackColor = Color.FromArgb(120, Color.Gold); + stripLine2.IntervalOffset = -1.5; + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; + stripLine2.Interval = 1; + stripLine2.IntervalType = DateTimeIntervalType.Weeks; + stripLine2.StripWidth = 2; + stripLine2.StripWidthType = DateTimeIntervalType.Days; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); + + // Set the axis label to show the name of the day + // This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -1816,218 +1816,218 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the interval offset type of the strip line. A enumeration value that indicates the interval type. The default value is . - ; the actual value of this property is determined by the property. - - - -## Examples - The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Public Partial Class StripLines - Inherits System.Web.UI.Page - Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) - - ' Add chart data before adding strip lines. - AddChartData() - - ' Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines() - - ' Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines() - - ' Adds a threshold line using strip lines. - AddThresholdStripLine() - End Sub - - ''' - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds repeating horizontal strip lines at intervals of 5. - ''' - Private Sub AddHorizRepeatingStripLines() - ' Instantiate new strip line - Dim stripLine1 As New StripLine() - stripLine1.StripWidth = 2.5 - stripLine1.Interval = 5 - - ' Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red) - - ' Add the strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) - End Sub - - ''' - ''' Adds strip lines to highlight weekend values. - ''' - Private Sub HighlightWeekendsWithStripLines() - ' Set strip line to highlight weekends - Dim stripLine2 As New StripLine() - stripLine2.BackColor = Color.FromArgb(120, Color.Gold) - stripLine2.IntervalOffset = -1.5 - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days - stripLine2.Interval = 1 - stripLine2.IntervalType = DateTimeIntervalType.Weeks - stripLine2.StripWidth = 2 - stripLine2.StripWidthType = DateTimeIntervalType.Days - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) - - ' Set the axis label to show the name of the day - ' This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines(); - - // Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds repeating horizontal strip lines at intervals of 5. - /// - private void AddHorizRepeatingStripLines() - { - // Instantiate new strip line - StripLine stripLine1 = new StripLine(); - stripLine1.StripWidth = 0; - stripLine1.BorderColor = Color.Black; - stripLine1.BorderWidth = 3; - stripLine1.Interval = 5; - - // Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red); - - stripLine1.BackSecondaryColor = Color.Black; - stripLine1.BackGradientStyle = GradientStyle.LeftRight; - - // Add the strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); - } - - /// - /// Adds strip lines to highlight weekend values. - /// - private void HighlightWeekendsWithStripLines() - { - // Set strip line to highlight weekends - StripLine stripLine2 = new StripLine(); - stripLine2.BackColor = Color.FromArgb(120, Color.Gold); - stripLine2.IntervalOffset = -1.5; - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; - stripLine2.Interval = 1; - stripLine2.IntervalType = DateTimeIntervalType.Weeks; - stripLine2.StripWidth = 2; - stripLine2.StripWidthType = DateTimeIntervalType.Days; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); - - // Set the axis label to show the name of the day - // This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + ; the actual value of this property is determined by the property. + + + +## Examples + The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Public Partial Class StripLines + Inherits System.Web.UI.Page + Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) + + ' Add chart data before adding strip lines. + AddChartData() + + ' Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines() + + ' Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines() + + ' Adds a threshold line using strip lines. + AddThresholdStripLine() + End Sub + + ''' + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds repeating horizontal strip lines at intervals of 5. + ''' + Private Sub AddHorizRepeatingStripLines() + ' Instantiate new strip line + Dim stripLine1 As New StripLine() + stripLine1.StripWidth = 2.5 + stripLine1.Interval = 5 + + ' Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red) + + ' Add the strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) + End Sub + + ''' + ''' Adds strip lines to highlight weekend values. + ''' + Private Sub HighlightWeekendsWithStripLines() + ' Set strip line to highlight weekends + Dim stripLine2 As New StripLine() + stripLine2.BackColor = Color.FromArgb(120, Color.Gold) + stripLine2.IntervalOffset = -1.5 + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days + stripLine2.Interval = 1 + stripLine2.IntervalType = DateTimeIntervalType.Weeks + stripLine2.StripWidth = 2 + stripLine2.StripWidthType = DateTimeIntervalType.Days + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) + + ' Set the axis label to show the name of the day + ' This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines(); + + // Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds repeating horizontal strip lines at intervals of 5. + /// + private void AddHorizRepeatingStripLines() + { + // Instantiate new strip line + StripLine stripLine1 = new StripLine(); + stripLine1.StripWidth = 0; + stripLine1.BorderColor = Color.Black; + stripLine1.BorderWidth = 3; + stripLine1.Interval = 5; + + // Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red); + + stripLine1.BackSecondaryColor = Color.Black; + stripLine1.BackGradientStyle = GradientStyle.LeftRight; + + // Add the strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); + } + + /// + /// Adds strip lines to highlight weekend values. + /// + private void HighlightWeekendsWithStripLines() + { + // Set strip line to highlight weekends + StripLine stripLine2 = new StripLine(); + stripLine2.BackColor = Color.FromArgb(120, Color.Gold); + stripLine2.IntervalOffset = -1.5; + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; + stripLine2.Interval = 1; + stripLine2.IntervalType = DateTimeIntervalType.Weeks; + stripLine2.StripWidth = 2; + stripLine2.StripWidthType = DateTimeIntervalType.Days; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); + + // Set the axis label to show the name of the day + // This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -2073,220 +2073,220 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the interval type of a object. A enumeration value that indicates the interval type. The default value is . - , in which case the type depends on: the X-value or Y-value types of the plotted objects - depending on which axis the objects belong to - and the axis scale. - - The property determines how often a strip or line is drawn. - - - -## Examples - The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Public Partial Class StripLines - Inherits System.Web.UI.Page - Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) - - ' Add chart data before adding strip lines. - AddChartData() - - ' Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines() - - ' Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines() - - ' Adds a threshold line using strip lines. - AddThresholdStripLine() - End Sub - - ''' - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds repeating horizontal strip lines at intervals of 5. - ''' - Private Sub AddHorizRepeatingStripLines() - ' Instantiate new strip line - Dim stripLine1 As New StripLine() - stripLine1.StripWidth = 2.5 - stripLine1.Interval = 5 - - ' Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red) - - ' Add the strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) - End Sub - - ''' - ''' Adds strip lines to highlight weekend values. - ''' - Private Sub HighlightWeekendsWithStripLines() - ' Set strip line to highlight weekends - Dim stripLine2 As New StripLine() - stripLine2.BackColor = Color.FromArgb(120, Color.Gold) - stripLine2.IntervalOffset = -1.5 - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days - stripLine2.Interval = 1 - stripLine2.IntervalType = DateTimeIntervalType.Weeks - stripLine2.StripWidth = 2 - stripLine2.StripWidthType = DateTimeIntervalType.Days - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) - - ' Set the axis label to show the name of the day - ' This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds repeating horizontal strip lines. - AddHorizRepeatingStripLines(); - - // Highlights weekend points using strip lines. - HighlightWeekendsWithStripLines(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds repeating horizontal strip lines at intervals of 5. - /// - private void AddHorizRepeatingStripLines() - { - // Instantiate new strip line - StripLine stripLine1 = new StripLine(); - stripLine1.StripWidth = 0; - stripLine1.BorderColor = Color.Black; - stripLine1.BorderWidth = 3; - stripLine1.Interval = 5; - - // Consider adding transparency so that the strip lines are lighter - stripLine1.BackColor = Color.FromArgb(120, Color.Red); - - stripLine1.BackSecondaryColor = Color.Black; - stripLine1.BackGradientStyle = GradientStyle.LeftRight; - - // Add the strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); - } - - /// - /// Adds strip lines to highlight weekend values. - /// - private void HighlightWeekendsWithStripLines() - { - // Set strip line to highlight weekends - StripLine stripLine2 = new StripLine(); - stripLine2.BackColor = Color.FromArgb(120, Color.Gold); - stripLine2.IntervalOffset = -1.5; - stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; - stripLine2.Interval = 1; - stripLine2.IntervalType = DateTimeIntervalType.Weeks; - stripLine2.StripWidth = 2; - stripLine2.StripWidthType = DateTimeIntervalType.Days; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); - - // Set the axis label to show the name of the day - // This is done in order to demonstrate that weekends are highlighted - chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + , in which case the type depends on: the X-value or Y-value types of the plotted objects - depending on which axis the objects belong to - and the axis scale. + + The property determines how often a strip or line is drawn. + + + +## Examples + The following code example demonstrates three applications of strip lines. First, horizontal strip lines are added at recurring intervals. Second, vertical strip lines are added to highlight weekend data points. Lastly, a non-recurring strip line is added to denote the mean of the data points in the first series of the chart. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Public Partial Class StripLines + Inherits System.Web.UI.Page + Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) + + ' Add chart data before adding strip lines. + AddChartData() + + ' Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines() + + ' Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines() + + ' Adds a threshold line using strip lines. + AddThresholdStripLine() + End Sub + + ''' + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds repeating horizontal strip lines at intervals of 5. + ''' + Private Sub AddHorizRepeatingStripLines() + ' Instantiate new strip line + Dim stripLine1 As New StripLine() + stripLine1.StripWidth = 2.5 + stripLine1.Interval = 5 + + ' Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red) + + ' Add the strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine1) + End Sub + + ''' + ''' Adds strip lines to highlight weekend values. + ''' + Private Sub HighlightWeekendsWithStripLines() + ' Set strip line to highlight weekends + Dim stripLine2 As New StripLine() + stripLine2.BackColor = Color.FromArgb(120, Color.Gold) + stripLine2.IntervalOffset = -1.5 + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days + stripLine2.Interval = 1 + stripLine2.IntervalType = DateTimeIntervalType.Weeks + stripLine2.StripWidth = 2 + stripLine2.StripWidthType = DateTimeIntervalType.Days + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisX.StripLines.Add(stripLine2) + + ' Set the axis label to show the name of the day + ' This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas(0).AxisX.LabelStyle.Format = "ddd" + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds repeating horizontal strip lines. + AddHorizRepeatingStripLines(); + + // Highlights weekend points using strip lines. + HighlightWeekendsWithStripLines(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds repeating horizontal strip lines at intervals of 5. + /// + private void AddHorizRepeatingStripLines() + { + // Instantiate new strip line + StripLine stripLine1 = new StripLine(); + stripLine1.StripWidth = 0; + stripLine1.BorderColor = Color.Black; + stripLine1.BorderWidth = 3; + stripLine1.Interval = 5; + + // Consider adding transparency so that the strip lines are lighter + stripLine1.BackColor = Color.FromArgb(120, Color.Red); + + stripLine1.BackSecondaryColor = Color.Black; + stripLine1.BackGradientStyle = GradientStyle.LeftRight; + + // Add the strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine1); + } + + /// + /// Adds strip lines to highlight weekend values. + /// + private void HighlightWeekendsWithStripLines() + { + // Set strip line to highlight weekends + StripLine stripLine2 = new StripLine(); + stripLine2.BackColor = Color.FromArgb(120, Color.Gold); + stripLine2.IntervalOffset = -1.5; + stripLine2.IntervalOffsetType = DateTimeIntervalType.Days; + stripLine2.Interval = 1; + stripLine2.IntervalType = DateTimeIntervalType.Weeks; + stripLine2.StripWidth = 2; + stripLine2.StripWidthType = DateTimeIntervalType.Days; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisX.StripLines.Add(stripLine2); + + // Set the axis label to show the name of the day + // This is done in order to demonstrate that weekends are highlighted + chart1.ChartAreas[0].AxisX.LabelStyle.Format = "ddd"; + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -2451,17 +2451,17 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the width of a strip line. A value that determines whether a strip or a line is drawn. The default value is 0.0. - , and property settings for its color, width and style. None of the `Back*` properties in this class are utilized when the value of is 0.0. - - If you set the property to a value greater than 0.0, a strip will be created. The , and properties only apply to the border of the strip; all of the `Back*` properties are then used for the background properties of the strip. - - If the value of the property is greater than 0.0, the units are determined by the relevant axis scale. - + , and property settings for its color, width and style. None of the `Back*` properties in this class are utilized when the value of is 0.0. + + If you set the property to a value greater than 0.0, a strip will be created. The , and properties only apply to the border of the strip; all of the `Back*` properties are then used for the background properties of the strip. + + If the value of the property is greater than 0.0, the units are determined by the relevant axis scale. + ]]> @@ -2507,13 +2507,13 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the unit of measurement for the property. A enumeration value that indicates the width type. The default value is . - property. For example, to set a strip line to represent "one week", you could set this property to and set the property to one (1.0). - - You can change the value of this property from to a value when the relevant axis scale uses a value. - + property. For example, to set a strip line to represent "one week", you could set this property to and set the property to one (1.0). + + You can change the value of this property from to a value when the relevant axis scale uses a value. + ]]> @@ -2559,123 +2559,123 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the text for the strip line. A value that represents the text of a strip line. - - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -2721,124 +2721,124 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the text alignment of the strip line. A value that represents the alignment of the strip line text. - - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - stripLine3.TextAlignment = StringAlignment.Near - stripLine3.TextLineAlignment = StringAlignment.Near - stripLine3.TextOrientation = TextOrientation.Auto - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - stripLine3.TextAlignment = StringAlignment.Near; - stripLine3.TextLineAlignment = StringAlignment.Near; - stripLine3.TextOrientation = TextOrientation.Auto; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + stripLine3.TextAlignment = StringAlignment.Near + stripLine3.TextLineAlignment = StringAlignment.Near + stripLine3.TextOrientation = TextOrientation.Auto + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + stripLine3.TextAlignment = StringAlignment.Near; + stripLine3.TextLineAlignment = StringAlignment.Near; + stripLine3.TextOrientation = TextOrientation.Auto; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -2884,124 +2884,124 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the text line alignment of strip line text. A value that represents the alignment of the text line. - - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - stripLine3.TextAlignment = StringAlignment.Near - stripLine3.TextLineAlignment = StringAlignment.Near - stripLine3.TextOrientation = TextOrientation.Auto - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - stripLine3.TextAlignment = StringAlignment.Near; - stripLine3.TextLineAlignment = StringAlignment.Near; - stripLine3.TextOrientation = TextOrientation.Auto; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + stripLine3.TextAlignment = StringAlignment.Near + stripLine3.TextLineAlignment = StringAlignment.Near + stripLine3.TextOrientation = TextOrientation.Auto + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + stripLine3.TextAlignment = StringAlignment.Near; + stripLine3.TextLineAlignment = StringAlignment.Near; + stripLine3.TextOrientation = TextOrientation.Auto; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -3047,128 +3047,128 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the text orientation. A value that represents the alignment of the text orientation. - , the text is oriented based on the chart type. For all X-Y chart types other than Bar, X-axis strip line text is oriented horizontally from left to right on the bottom of the strip line. For Bar charts, X-axis strip line text is oriented vertically from top to bottom to the right of the strip line. - - - -## Examples - The following code example demonstrates how to add a threshold line after the chart control has been added to the design surface. The chart uses a non-recurring strip line to show a calculation of the mean of all data points in a series. - -```vb -Imports System.Web.UI.DataVisualization.Charting - -Public Partial Class StripLines - Inherits System.Web.UI.Page - Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) - ' Add chart data before adding strip lines. - AddChartData() - - ' Adds a threshold line using strip lines. - AddThresholdStripLine() - End Sub - - ''' - ''' Adds a week of data with values between 20 and 35. - ''' - Private Sub AddChartData() - ' Declare new random variable - Dim rand As New Random() - For i As Integer = 0 To 6 - - ' Add a week of data - chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) - Next - End Sub - - ''' - ''' Adds a horizontal threshold strip line at the calculated mean - ''' value of all data points in the first series of the chart. - ''' - Private Sub AddThresholdStripLine() - Dim stripLine3 As New StripLine() - - ' Set threshold line so that it is only shown once - stripLine3.Interval = 0 - - ' Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) - - stripLine3.BackColor = Color.DarkGreen - stripLine3.StripWidth = 0.25 - - ' Set text properties for the threshold line - stripLine3.Text = "Mean" - stripLine3.ForeColor = Color.Black - stripLine3.TextAlignment = StringAlignment.Near - stripLine3.TextLineAlignment = StringAlignment.Near - stripLine3.TextOrientation = TextOrientation.Auto - - ' Add strip line to the chart - chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) - End Sub -End Class -``` - -```csharp -public partial class StripLines : System.Web.UI.Page - { - protected void Page_Load(object sender, EventArgs e) - { - // Add chart data - AddChartData(); - - // Adds a threshold line using strip lines. - AddThresholdStripLine(); - } - - /// - /// Adds a week of data with values between 20 and 35. - /// - private void AddChartData() - { - // Declare new random variable - Random rand = new Random(); - - // Add a week of data - for (int i = 0; i < 7; i++) - { - chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); - } - } - - /// - /// Adds a horizontal threshold strip line at the calculated mean - /// value of all data points in the first series of the chart. - /// - private void AddThresholdStripLine() - { - StripLine stripLine3 = new StripLine(); - - // Set threshold line so that it is only shown once - stripLine3.Interval = 0; - - // Set the threshold line to be drawn at the calculated mean of the first series - stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); - - stripLine3.BackColor = Color.DarkGreen; - stripLine3.StripWidth = 0.25; - - // Set text properties for the threshold line - stripLine3.Text = "Mean"; - stripLine3.ForeColor = Color.Black; - stripLine3.TextAlignment = StringAlignment.Near; - stripLine3.TextLineAlignment = StringAlignment.Near; - stripLine3.TextOrientation = TextOrientation.Auto; - - // Add strip line to the chart - chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); - } - } -``` - + , the text is oriented based on the chart type. For all X-Y chart types other than Bar, X-axis strip line text is oriented horizontally from left to right on the bottom of the strip line. For Bar charts, X-axis strip line text is oriented vertically from top to bottom to the right of the strip line. + + + +## Examples + The following code example demonstrates how to add a threshold line after the chart control has been added to the design surface. The chart uses a non-recurring strip line to show a calculation of the mean of all data points in a series. + +```vb +Imports System.Web.UI.DataVisualization.Charting + +Public Partial Class StripLines + Inherits System.Web.UI.Page + Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) + ' Add chart data before adding strip lines. + AddChartData() + + ' Adds a threshold line using strip lines. + AddThresholdStripLine() + End Sub + + ''' + ''' Adds a week of data with values between 20 and 35. + ''' + Private Sub AddChartData() + ' Declare new random variable + Dim rand As New Random() + For i As Integer = 0 To 6 + + ' Add a week of data + chart1.Series(0).Points.AddXY(DateTime.Now.AddDays(i), rand.[Next](20, 35)) + Next + End Sub + + ''' + ''' Adds a horizontal threshold strip line at the calculated mean + ''' value of all data points in the first series of the chart. + ''' + Private Sub AddThresholdStripLine() + Dim stripLine3 As New StripLine() + + ' Set threshold line so that it is only shown once + stripLine3.Interval = 0 + + ' Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series(0).Name) + + stripLine3.BackColor = Color.DarkGreen + stripLine3.StripWidth = 0.25 + + ' Set text properties for the threshold line + stripLine3.Text = "Mean" + stripLine3.ForeColor = Color.Black + stripLine3.TextAlignment = StringAlignment.Near + stripLine3.TextLineAlignment = StringAlignment.Near + stripLine3.TextOrientation = TextOrientation.Auto + + ' Add strip line to the chart + chart1.ChartAreas(0).AxisY.StripLines.Add(stripLine3) + End Sub +End Class +``` + +```csharp +public partial class StripLines : System.Web.UI.Page + { + protected void Page_Load(object sender, EventArgs e) + { + // Add chart data + AddChartData(); + + // Adds a threshold line using strip lines. + AddThresholdStripLine(); + } + + /// + /// Adds a week of data with values between 20 and 35. + /// + private void AddChartData() + { + // Declare new random variable + Random rand = new Random(); + + // Add a week of data + for (int i = 0; i < 7; i++) + { + chart1.Series[0].Points.AddXY(DateTime.Now.AddDays(i), rand.Next(20,35)); + } + } + + /// + /// Adds a horizontal threshold strip line at the calculated mean + /// value of all data points in the first series of the chart. + /// + private void AddThresholdStripLine() + { + StripLine stripLine3 = new StripLine(); + + // Set threshold line so that it is only shown once + stripLine3.Interval = 0; + + // Set the threshold line to be drawn at the calculated mean of the first series + stripLine3.IntervalOffset = chart1.DataManipulator.Statistics.Mean(chart1.Series[0].Name); + + stripLine3.BackColor = Color.DarkGreen; + stripLine3.StripWidth = 0.25; + + // Set text properties for the threshold line + stripLine3.Text = "Mean"; + stripLine3.ForeColor = Color.Black; + stripLine3.TextAlignment = StringAlignment.Near; + stripLine3.TextLineAlignment = StringAlignment.Near; + stripLine3.TextOrientation = TextOrientation.Auto; + + // Add strip line to the chart + chart1.ChartAreas[0].AxisY.StripLines.Add(stripLine3); + } + } +``` + ]]> @@ -3213,13 +3213,13 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the tooltip of a strip line. A value that represents the tooltip of the strip line. - property is set to `false`. The default value is true. - + property is set to `false`. The default value is true. + ]]> @@ -3272,11 +3272,11 @@ public partial class StripLines : System.Web.UI.Page Gets or sets the destination URL or anchor point of the strip line. A value that represents the destination URL or anchor point of the strip line. - diff --git a/xml/System.Web.UI.DataVisualization.Charting/TickMark.xml b/xml/System.Web.UI.DataVisualization.Charting/TickMark.xml index dfb0b72e046..8e20bd78023 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/TickMark.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/TickMark.xml @@ -22,27 +22,27 @@ Represents the major and minor tick marks along an axis. - class encapsulates the functionality for all chart tick marks. - - The class is exposed as the and properties of objects. - - By default, major tick marks are displayed at the major grid lines, whereas minor tick marks must be explicitly displayed. - - MajorTickMark.Interval is not set (`Double.NaN`) by default, and the tick marks are drawn according to . MinorTickMark.Interval is set to `Auto` (`0`) by default, and the Chart control automatically determines the interval. - - A developer can use this class to: - -- Enable or disable tick marks. - -- Set the color, width, length and line style of tick marks. - -- Specify a style that determines whether tick marks are displayed outside the axis, inside the axis or across the axis. - -- Specify the starting point - where the first tick mark is drawn - as well as the tick mark interval, which correlates to their frequency. - + class encapsulates the functionality for all chart tick marks. + + The class is exposed as the and properties of objects. + + By default, major tick marks are displayed at the major grid lines, whereas minor tick marks must be explicitly displayed. + + MajorTickMark.Interval is not set (`Double.NaN`) by default, and the tick marks are drawn according to . MinorTickMark.Interval is set to `Auto` (`0`) by default, and the Chart control automatically determines the interval. + + A developer can use this class to: + +- Enable or disable tick marks. + +- Set the color, width, length and line style of tick marks. + +- Specify a style that determines whether tick marks are displayed outside the axis, inside the axis or across the axis. + +- Specify the starting point - where the first tick mark is drawn - as well as the tick mark interval, which correlates to their frequency. + ]]> @@ -101,17 +101,17 @@ Gets or sets the length of tick marks. The length is measured in units that represent a percentage of the height or width of the chart image, depending on the axis. A value that represents the size, or length, of tick marks. The default value is 1.0 percent. - property to and specify a tick mark size of zero (0) using the property. - + property to and specify a tick mark size of zero (0) using the property. + ]]> @@ -153,17 +153,17 @@ Gets or sets the tick mark style. A enumeration value. The default value is . - property determines the style of tick marks. - - Tick marks can be drawn inside the chart area, outside the chart area, across an axis line, or can be disabled. - - To display tick marks for three-dimensional (3D) charts, so that they are just drawn for the width of a wall, set the property to . Then specify a tick mark size of zero (0) using the property. - - If the property is set to , tick marks are not displayed. Tick marks can also be toggled on or off by setting the [Tickmark.Enabled]() property to `true` or `false`. - + property determines the style of tick marks. + + Tick marks can be drawn inside the chart area, outside the chart area, across an axis line, or can be disabled. + + To display tick marks for three-dimensional (3D) charts, so that they are just drawn for the width of a wall, set the property to . Then specify a tick mark size of zero (0) using the property. + + If the property is set to , tick marks are not displayed. Tick marks can also be toggled on or off by setting the [Tickmark.Enabled]() property to `true` or `false`. + ]]> diff --git a/xml/System.Web.UI.DataVisualization.Charting/Title.xml b/xml/System.Web.UI.DataVisualization.Charting/Title.xml index 032652850a9..ad0f7d89d5e 100644 --- a/xml/System.Web.UI.DataVisualization.Charting/Title.xml +++ b/xml/System.Web.UI.DataVisualization.Charting/Title.xml @@ -23,25 +23,25 @@ Represents a title for the entire chart image. - class encapsulates all the functionality of a title for the control. This class is exposed using the collection property of the root object. - - There can be any number of titles for an entire chart image. - - Titles are able to: - -- Be docked and aligned or custom-positioned. - -- Be displayed inside or outside the plotted chart areas. - -- Use a predefined such as or . - -- Use hatching, gradient colors and background images. - -- Be sized and positioned anywhere within the chart image. - + class encapsulates all the functionality of a title for the control. This class is exposed using the collection property of the root object. + + There can be any number of titles for an entire chart image. + + Titles are able to: + +- Be docked and aligned or custom-positioned. + +- Be displayed inside or outside the plotted chart areas. + +- Use a predefined such as or . + +- Use hatching, gradient colors and background images. + +- Be sized and positioned anywhere within the chart image. + ]]> @@ -184,11 +184,11 @@ Gets or sets the alignment of the title. A enumeration value that represents the title alignment within the text drawing area. The default value is . - property has no effect on alignment if the property is not set to . - + property has no effect on alignment if the property is not set to . + ]]> @@ -246,15 +246,15 @@ Gets or sets the background color of the title. A value that represents the background color of the title. The default color is . - value will be the first color used if you have specified gradient colors for the background. - - The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the title. As a result, the background will be transparent. - + value will be the first color used if you have specified gradient colors for the background. + + The alpha value controls the opacity of a color. If you set this color to "transparent" - that is, if you use an alpha value of 0 - no color will be assigned to the background of the title. As a result, the background will be transparent. + ]]> @@ -308,21 +308,21 @@ Gets or sets the orientation for the background gradient of a title. Also determines whether a gradient is used. A enumeration that represents the orientation for the background gradient of a title. The default value is . - property to determine whether a title will display a gradient, and to determine the orientation of the gradient if one is used. - - For a listing of available patterns, refer to the enumeration. - - To use gradient colors: - - Set the primary color of the title background with the property. - - Set the secondary color of the title background with the property. - - Set this property to the desired gradient style. - + property to determine whether a title will display a gradient, and to determine the orientation of the gradient if one is used. + + For a listing of available patterns, refer to the enumeration. + + To use gradient colors: + + Set the primary color of the title background with the property. + + Set the secondary color of the title background with the property. + + Set this property to the desired gradient style. + ]]> @@ -376,15 +376,15 @@ Gets or sets the hatching style for the title. A enumeration that represents the hatching style for the title. The default value is . - enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. - - For a listing of available hatching styles, refer to the enumeration. - - **Note** The color of hatching lines is determined by the property. - + enumeration specifies the hatch pattern used by a brush of type . The hatch pattern consists of a solid background color and lines drawn over the background. + + For a listing of available hatching styles, refer to the enumeration. + + **Note** The color of hatching lines is determined by the property. + ]]> @@ -438,19 +438,19 @@ Gets or sets the background image of the title. A value that represents the URL of an image file. The default is an empty string. - title, and can be an absolute or relative URL. - - To position the image, use the and properties. - - You can also specify one of the colors displayed by the image as "transparent", by setting the property. - - An image be any valid graphics file supported by .NET Framework, including icons. - - Background images take precedence over other background properties such as gradient color. - + title, and can be an absolute or relative URL. + + To position the image, use the and properties. + + You can also specify one of the colors displayed by the image as "transparent", by setting the property. + + An image be any valid graphics file supported by .NET Framework, including icons. + + Background images take precedence over other background properties such as gradient color. + ]]> @@ -496,11 +496,11 @@ Gets or sets the alignment of the title background image. A enumeration value that represents the alignment of the title background image. The default value is . - property is set to . - + property is set to . + ]]> @@ -558,11 +558,11 @@ Gets or sets a color that will be drawn as transparent when the background image is drawn. A value that will be drawn as transparent when the background image is drawn. The default value is . - @@ -608,17 +608,17 @@ Gets or sets the drawing mode for the background image of the title. A enumeration value that represents the drawing mode for the background image of the title. The default value is . - property determines how the image is displayed; the image can be tiled, scaled, and so forth. - - If an image is scaled, it will be stretched to fit within the bounds of the title. If the image is tiled, it is repeatedly drawn, starting from the top-left corner of the title. - - For more information about the available wrapping modes, see the enumeration topic. - - If the property is set to , the location where the image is drawn is determined by the property setting. - + property determines how the image is displayed; the image can be tiled, scaled, and so forth. + + If an image is scaled, it will be stretched to fit within the bounds of the title. If the image is tiled, it is repeatedly drawn, starting from the top-left corner of the title. + + For more information about the available wrapping modes, see the enumeration topic. + + If the property is set to , the location where the image is drawn is determined by the property setting. + ]]> @@ -676,23 +676,23 @@ Gets or sets the secondary color of the title background. A value used for the secondary color of a background with hatching or gradient fill. The default value is . - property is one of several related properties that determine the secondary background color of objects, and is used when gradient colors are being applied. - - You can set to any valid ARGB (alpha, red, green, blue) value. - - If hatching is used, the property determines the color of the hatching lines for the title. - - To use gradient colors for the background of a title: - -- Set the primary color with the property. - -- Set the secondary color with the property. - -- Set the property to the desired gradient style. - + property is one of several related properties that determine the secondary background color of objects, and is used when gradient colors are being applied. + + You can set to any valid ARGB (alpha, red, green, blue) value. + + If hatching is used, the property determines the color of the hatching lines for the title. + + To use gradient colors for the background of a title: + +- Set the primary color with the property. + +- Set the secondary color with the property. + +- Set the property to the desired gradient style. + ]]> @@ -750,11 +750,11 @@ Gets or sets the border color of the title. A value used to draw the border color of the title. The default color is . - property to any valid ARGB (alpha, red, green, blue) value. - + property to any valid ARGB (alpha, red, green, blue) value. + ]]> @@ -800,13 +800,13 @@ Gets or sets the border style of the title. A enumeration value that determines the border style of the title. - property determines the line style to use for a border. The line can be solid, dotted, and so forth. - - For other border styles, see the enumeration topic. - + property determines the line style to use for a border. The line can be solid, dotted, and so forth. + + For other border styles, see the enumeration topic. + ]]> @@ -967,13 +967,13 @@ Gets or sets a value that determines where the title is docked. A enumeration value that specifies the docking location of the title. The default value is . - can be docked to the top, left, bottom or right of either the entire chart image, or the inside or outside of a chart area. If the property is set to `false`, docking applies to the entire chart image. If the property is set to `true`, docking applies to the object specified by the property - - This property has no effect if the property is not set to . - + can be docked to the top, left, bottom or right of either the entire chart image, or the inside or outside of a chart area. If the property is set to `false`, docking applies to the entire chart image. If the property is set to `true`, docking applies to the object specified by the property + + This property has no effect if the property is not set to . + ]]> @@ -1062,11 +1062,11 @@ Gets or sets the font for the title. A object that specifies the font for the title. Defaults to "Microsoft Sans Serif, 8pt". - object when setting this property. Assign the entire object to the property. - + object when setting this property. Assign the entire object to the property. + ]]> @@ -1124,11 +1124,11 @@ Gets or sets the color of the title text. A value that specifies the color of the title text. - property is used to set the title text color. - + property is used to set the title text color. + ]]> @@ -1175,13 +1175,13 @@ if the title will be docked within a chart area; if the title will be docked outside the chart area. The default value is . - property is set to `false`, the title is docked to the outside edge of the plotted chart areas; if this property is set to `true`, the title will be docked to the inside edge of the chart area. This property will have no effect if the name of a object is not assigned to the property. - - **Note** This behavior only applies if the property is set to . If this is not the case, setting the property has no effect, because the position of the title is then determined by the property value. - + property is set to `false`, the title is docked to the outside edge of the plotted chart areas; if this property is set to `true`, the title will be docked to the inside edge of the chart area. This property will have no effect if the name of a object is not assigned to the property. + + **Note** This behavior only applies if the property is set to . If this is not the case, setting the property has no effect, because the position of the title is then determined by the property value. + ]]> @@ -1230,35 +1230,35 @@ Gets or sets the map area attributes of the title. A value that represents the map area attributes of the title. The default is a zero-length string. - property, a client-side image map will automatically be created. A map area will also be created, with its attribute string appended to the \ tag that corresponds to the chart object for which this property is being set. - - Because the entire attribute string is appended to the \ tag, multiple attributes should be separated with a space. - - The property can be used in conjunction with the property to specify map area attributes, for example, Target= _Blank, as well as client-side event handlers, for example, OnClick="MyEvent()". - - Setting this property will have no effect if the property is set to `false`. Its default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - Special keywords may be used when setting this property; each keyword will be replaced with some type of data from the applicable chart element. Refer to the following table for a listing of all available keywords: - -|Keyword|Replaced by| -|-------------|-----------------| -|#VALX|X-value of the data point.| -|#VAL, #VALY, #VALY2, #VALY3…|Y-values of the data point.| -|#SER|Series name.| -|#LABEL|Data point label.| -|#INDEX|Data point index.| -|#PERCENT|Percentage of the data point Y-value.| -|#TOTAL|Total of all Y-values in the series.| -|#LEGENDTEXT|Legend text.| - - To create image maps that have user-defined coordinates, use the property of the root object. - + property, a client-side image map will automatically be created. A map area will also be created, with its attribute string appended to the \ tag that corresponds to the chart object for which this property is being set. + + Because the entire attribute string is appended to the \ tag, multiple attributes should be separated with a space. + + The property can be used in conjunction with the property to specify map area attributes, for example, Target= _Blank, as well as client-side event handlers, for example, OnClick="MyEvent()". + + Setting this property will have no effect if the property is set to `false`. Its default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + Special keywords may be used when setting this property; each keyword will be replaced with some type of data from the applicable chart element. Refer to the following table for a listing of all available keywords: + +|Keyword|Replaced by| +|-------------|-----------------| +|#VALX|X-value of the data point.| +|#VAL, #VALY, #VALY2, #VALY3…|Y-values of the data point.| +|#SER|Series name.| +|#LABEL|Data point label.| +|#INDEX|Data point index.| +|#PERCENT|Percentage of the data point Y-value.| +|#TOTAL|Total of all Y-values in the series.| +|#LEGENDTEXT|Legend text.| + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]> @@ -1296,15 +1296,15 @@ Gets or sets the unique name of a object. A value that represents the unique name of the title object. - object from the object. - - If this property is set to a zero-length string, an exception will be thrown. - + object from the object. + + If this property is set to a zero-length string, an exception will be thrown. + ]]> @@ -1346,13 +1346,13 @@ Gets or sets an object, which can be used to get or set the position of the title. An value that represents the position of the title. The default value is . - property is automatic (that is, Title.Position.Auto = `true`) the title position is calculated automatically by the control, taking into account the , and property settings. - - If it is not automatic, the , and properties are ignored, and the title position is solely determined by the value of the returned object. - + property is automatic (that is, Title.Position.Auto = `true`) the title position is calculated automatically by the control, taking into account the , and property settings. + + If it is not automatic, the , and properties are ignored, and the title position is solely determined by the value of the returned object. + ]]> @@ -1448,15 +1448,15 @@ Gets or sets the shadow color for the title. A value for the title. The default color is . - property to a value other than zero (0). - + property to a value other than zero (0). + ]]> @@ -1502,11 +1502,11 @@ Gets or sets the shadow offset, in pixels, of the title. An value that represents the shadow offset, in pixels, of the title. - @@ -1642,19 +1642,19 @@ Gets or sets the style of the text for the title. A enumeration value that determines the style of the text for the title. The default value is . - , , , , and . Refer to the table below for a summary of these styles: - -|Style|Description| -|-----------|-----------------| -|Default|Text is displayed using the desired font and color, with no additional effects.| -|Shadow|Text is displayed using the desired font and color with an added shadow effect on the text.| -|Emboss|Text is displayed using the desired font and color but drawn with an embossing effect.| -|Embed|Text is displayed using the desired font and color but drawn with an embedding effect.| -|Frame|Text is displayed using the desired font and color but drawn as an outline of the text, that is, with no fill.| - + , , , , and . Refer to the table below for a summary of these styles: + +|Style|Description| +|-----------|-----------------| +|Default|Text is displayed using the desired font and color, with no additional effects.| +|Shadow|Text is displayed using the desired font and color with an added shadow effect on the text.| +|Emboss|Text is displayed using the desired font and color but drawn with an embossing effect.| +|Embed|Text is displayed using the desired font and color but drawn with an embedding effect.| +|Frame|Text is displayed using the desired font and color but drawn as an outline of the text, that is, with no fill.| + ]]> @@ -1703,16 +1703,16 @@ Gets or sets the tooltip for the title. A value that represents the tooltip for the title. - property, a client-side image map will automatically be created. A map area will also be created with its Title attribute set to the specified tooltip string. The map area will use the dimensions that correspond to the title. - - Setting this property will have no effect if the property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - + property, a client-side image map will automatically be created. A map area will also be created with its Title attribute set to the specified tooltip string. The map area will use the dimensions that correspond to the title. + + Setting this property will have no effect if the property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + ]]> @@ -1769,22 +1769,22 @@ Gets or sets the target URL of the hyperlink for the title. A value that represents the target URL of the hyperlink for the title. The default value is a zero-length string. - property is set to `false`. The default value is `true`. - - > [!IMPORTANT] - > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. - - Attributes of the map area(s), for example, TARGET=_Blank, can be specified by using the property. - - The property allows you to set special keywords to display different types of chart-related data. - - To create image maps that have user-defined coordinates, use the property of the root object. - + property is set to `false`. The default value is `true`. + + > [!IMPORTANT] + > To create an image map in this manner, the property of the object must be set to . It is possible to create an image map when using binary streaming, but another technique must be used. + + Attributes of the map area(s), for example, TARGET=_Blank, can be specified by using the property. + + The property allows you to set special keywords to display different types of chart-related data. + + To create image maps that have user-defined coordinates, use the property of the root object. + ]]> @@ -1823,11 +1823,11 @@ if the title visible; otherwise, . - diff --git a/xml/System.Web.UI.Design.MobileControls.Converters/DataFieldConverter.xml b/xml/System.Web.UI.Design.MobileControls.Converters/DataFieldConverter.xml index 33fc8ee1a90..b1be0e95e95 100644 --- a/xml/System.Web.UI.Design.MobileControls.Converters/DataFieldConverter.xml +++ b/xml/System.Web.UI.Design.MobileControls.Converters/DataFieldConverter.xml @@ -24,14 +24,14 @@ Provides a design-time type converter for a component's data field properties. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. - class is a object that is typically referenced by the attribute. - + class is a object that is typically referenced by the attribute. + > [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -56,13 +56,13 @@ Instantiates a new instance of the class. This API is obsolete. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -97,13 +97,13 @@ if is a string; otherwise . - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -139,13 +139,13 @@ Converts the specified object to a string. This API is obsolete. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. A string containing the converted object. - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -179,13 +179,13 @@ Gets a list of fields in the selected data source if information about them is available, using the provided context. This API is obsolete. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. A object containing a list of the names of fields available in the data source. - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -218,14 +218,14 @@ . - method is called by the designer host before the host calls . - + method is called by the designer host before the host calls . + > [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -258,13 +258,13 @@ if the context is not null and can be cast to an ; otherwise . - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> diff --git a/xml/System.Web.UI.Design.MobileControls.Converters/DataMemberConverter.xml b/xml/System.Web.UI.Design.MobileControls.Converters/DataMemberConverter.xml index 7d2f783cdd8..7b2407dca37 100644 --- a/xml/System.Web.UI.Design.MobileControls.Converters/DataMemberConverter.xml +++ b/xml/System.Web.UI.Design.MobileControls.Converters/DataMemberConverter.xml @@ -24,13 +24,13 @@ Provides a type converter for a property representing a data member in a data source. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -55,13 +55,13 @@ Instantiates a new instance of the class. This API is obsolete. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -96,13 +96,13 @@ if the is ; otherwise . - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data bound control at design time, and instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data bound control at design time, and instantiated with a on a property. + ]]> @@ -138,13 +138,13 @@ Converts the specified object to the type of the associated control property using the specified context. This API is obsolete. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. A string containing the if is not and contains a string; otherwise, an empty string (""). - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -178,13 +178,13 @@ Returns a list of values that can be assigned to a control property using the specified context. This API is obsolete. For information about how to develop ASP.NET mobile applications, see Mobile Apps & Sites with ASP.NET. A object containing the names of available data views in the data source. - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -217,14 +217,14 @@ . - method is called by the designer host before calling . - + method is called by the designer host before calling . + > [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> @@ -257,13 +257,13 @@ if the context is not null and can be cast to an ; otherwise . - [!NOTE] -> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. - +> You typically do not access a type converter directly. This implementation of is intended for use by a data-bound control at design time, and is instantiated with a on a property. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls.WebParts/ToolZoneDesigner.xml b/xml/System.Web.UI.Design.WebControls.WebParts/ToolZoneDesigner.xml index 639d5a06aae..4a9aed6df38 100644 --- a/xml/System.Web.UI.Design.WebControls.WebParts/ToolZoneDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls.WebParts/ToolZoneDesigner.xml @@ -17,17 +17,17 @@ Provides design-time support in a visual designer for a Web Parts zone. - control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. - - The properties of the class provide the following functionality: - -- The property returns a object, which typically contains all the items in a smart tag panel. - -- The property indicates whether the zone is displayed when the user is in browse mode. - + control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. + + The properties of the class provide the following functionality: + +- The property returns a object, which typically contains all the items in a smart tag panel. + +- The property indicates whether the zone is displayed when the user is in browse mode. + ]]> @@ -76,11 +76,11 @@ Gets the action list collection for the zone designer. The associated with this designer. - property contains a collection that represents the aggregation of all the items in a smart tag panel. The class contains zero or more objects. Each of these lists contains zero or more objects that represent the actual items in the panel and are derived from the class. - + property contains a collection that represents the aggregation of all the items in a smart tag panel. The class contains zero or more objects. Each of these lists contains zero or more objects that represent the actual items in the panel and are derived from the class. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/BaseDataListDesigner.xml b/xml/System.Web.UI.Design.WebControls/BaseDataListDesigner.xml index f786458d5f4..a1ae00d214b 100644 --- a/xml/System.Web.UI.Design.WebControls/BaseDataListDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/BaseDataListDesigner.xml @@ -30,29 +30,29 @@ Provides a base class for components that provide design-time support in a designer host for Web server controls that are derived from the class. - abstract class is parsed and a design-time version of the control is created on the design surface. When the user switches back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The abstract class serves as a base class for components that provide design-time support for controls that are derived from the in a designer host. - - The class properties provide the following functionality: - - The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. - -- The , , , and properties provide access to the corresponding properties of the associated control. - -- The property provides access to the designer of the data source of the associated control. The property gets the default view of the data source. - - The class methods provide the following functionality: - -- The method prepares the designer to view, edit, and design the associated control. The method invokes a component editor for the control. The method is used to add, remove, or shadow design-time properties of the associated control. - -- The method generates an object that can be used as a data source at design time. The method gets the data source from the container of the associated control. The method gets the data source from the control container, resolved to a specific data member. The method gets the data source of the template container. - -- The method is called when there is a change to the associated control. The method is called when the associated control data source has changed. The method is called when the schema of the associated control data source changes. The method is called when an automatic formatting scheme has been applied. - -- The and methods can be overridden to implement functionality that should occur when an associated control style has changed or when the designer template-editing verbs have changed, respectively. The method handles the property-builder event. - + abstract class is parsed and a design-time version of the control is created on the design surface. When the user switches back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The abstract class serves as a base class for components that provide design-time support for controls that are derived from the in a designer host. + + The class properties provide the following functionality: + + The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. + +- The , , , and properties provide access to the corresponding properties of the associated control. + +- The property provides access to the designer of the data source of the associated control. The property gets the default view of the data source. + + The class methods provide the following functionality: + +- The method prepares the designer to view, edit, and design the associated control. The method invokes a component editor for the control. The method is used to add, remove, or shadow design-time properties of the associated control. + +- The method generates an object that can be used as a data source at design time. The method gets the data source from the container of the associated control. The method gets the data source from the control container, resolved to a specific data member. The method gets the data source of the template container. + +- The method is called when there is a change to the associated control. The method is called when the associated control data source has changed. The method is called when the schema of the associated control data source changes. The method is called when an automatic formatting scheme has been applied. + +- The and methods can be overridden to implement functionality that should occur when an associated control style has changed or when the designer template-editing verbs have changed, respectively. The method handles the property-builder event. + ]]> @@ -89,11 +89,11 @@ Initializes a new instance of the class. - class when it creates the associated control that is derived from the class or a copy of that control on the design surface. - + class when it creates the associated control that is derived from the class or a copy of that control on the design surface. + ]]> @@ -125,11 +125,11 @@ Gets the designer action list collection for this designer. The associated with this designer. - property creates an empty object and adds the that is returned by the base property to this object. Then it adds it to the object, and then returns this object. - + property creates an empty object and adds the that is returned by the base property to this object. Then it adds it to the object, and then returns this object. + ]]> @@ -159,11 +159,11 @@ Gets or sets the value of the data key field of the associated control. The value of the associated control. - property provides access from the designer to the property of the associated control that is derived from the class. The indicates the primary key of the data source that is bound to the associated control. - + property provides access from the designer to the property of the associated control that is derived from the class. The indicates the primary key of the data source that is bound to the associated control. + ]]> @@ -191,11 +191,11 @@ Gets or sets the value of the data member field of the associated control. The value of the associated control. - property provides access from the designer to the property of the associated control that is derived from the class. The indicates the table or element of the data source that is bound to the associated control. - + property provides access from the designer to the property of the associated control that is derived from the class. The indicates the table or element of the data source that is bound to the associated control. + ]]> @@ -223,11 +223,11 @@ Gets or sets the value of the data source property of the associated control. The value of the associated control. - property provides access from the designer to the property of the associated control that is derived from the class. - + property provides access from the designer to the property of the associated control that is derived from the class. + ]]> @@ -261,11 +261,11 @@ Gets the designer of the data source, when one is selected for data binding. The designer for the data source of the associated control. - property returns the designer for the data source of the associated control that is derived from the class. The designer object implements the interface. - + property returns the designer for the data source of the associated control that is derived from the class. The designer object implements the interface. + ]]> @@ -293,11 +293,11 @@ Gets or sets the designer's version of the data source ID property and is used to shadow the corresponding property of the associated control. A that is the data source ID of the associated control. - property causes the property of the associated control to be set. If the is set to a , indicating a new data source is to be defined, a **Create Data Source** dialog box is displayed. If the is set to a indicating there is no data source, the is set to an empty string (""). - + property causes the property of the associated control to be set. If the is set to a , indicating a new data source is to be defined, a **Create Data Source** dialog box is displayed. If the is set to a indicating there is no data source, the is set to an empty string (""). + ]]> @@ -326,11 +326,11 @@ Gets the default view of the data source that is bound to the associated control. The representing the default view of the data source. - property gets the default view of the data source that is bound to the associated control by passing the property to the method of the object. If no view is returned or the property is not set, the method of the is used to get the view names and the first view name is used to get the default view. - + property gets the default view of the data source that is bound to the associated control by passing the property to the method of the object. If no view is returned or the property is not set, the method of the is used to get the view names and the first view name is used to get the default view. + ]]> @@ -362,7 +362,7 @@ property is non-empty. ]]> @@ -396,13 +396,13 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the to release both managed and unmanaged resources; to release only unmanaged resources. Releases the unmanaged resources that are used by the designer and optionally releases the managed resources. - class has a property that implements the interface, the method disconnects the event of the object. - - If the implements the method, the disconnects the , , and events. The also disconnects the and events of the object. It finally calls the base method. - + class has a property that implements the interface, the method disconnects the event of the object. + + If the implements the method, the disconnects the , , and events. The also disconnects the and events of the object. It finally calls the base method. + ]]> @@ -452,11 +452,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Generates an object that can be used as a data source at design time. An object implementing an interface that serves as a data source for use at design time. - method attempts to construct a object from the data source that is defined by the and properties. If this is not possible, it creates a from dummy data. - + method attempts to construct a object from the data source that is defined by the and properties. If this is not possible, it creates a from dummy data. + ]]> @@ -496,11 +496,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Generates an object that can be used as a data source at design time. An object implementing an interface that serves as a data source for use at design time. - method attempts to construct a object from the data source that is specified by the `selectedDataSource` parameter. If this is not possible, it creates a from dummy data. - + method attempts to construct a object from the data source that is specified by the `selectedDataSource` parameter. If this is not possible, it creates a from dummy data. + ]]> @@ -533,11 +533,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Gets the data source component from the associated control container, resolved to a specific data member. An object implementing an interface containing the design-time of the associated control, resolved to the parameter; otherwise, if a data source is not found. - method uses the method to construct a data source from the object that is specified by the and properties of the associated control derived from the class. - + method uses the method to construct a data source from the object that is specified by the and properties of the associated control derived from the class. + ]]> @@ -574,11 +574,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Gets the data source component from the associated control container. An object implementing an interface containing the design-time property of the associated control; otherwise, if a data source is not found. - method uses the method to construct a data source from the object that is specified by the property of the associated control derived from the class. - + method uses the method to construct a data source from the object that is specified by the property of the associated control derived from the class. + ]]> @@ -624,11 +624,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Gets the data source of the template's container. An object that implements an interface containing a design-time property. - method calls the method to construct a data source from the object that is specified by the and properties of the associated control derived from class. - + method calls the method to construct a data source from the object that is specified by the and properties of the associated control derived from class. + ]]> @@ -665,15 +665,15 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the A control derived from the , which implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control that is derived from the class. The method and its base methods configure properties and connect to events that are necessary for the operation of the designer. - - The connects to the design-time data source and updates the design-time markup. If the property implements the interface, the connects the , , and events. - - The `component` parameter is the control, derived from the , that is associated with this designer, or a copy of that control. - + method when it is ready to use the designer to render the control that is derived from the class. The method and its base methods configure properties and connect to events that are necessary for the operation of the designer. + + The connects to the design-time data source and updates the design-time markup. If the property implements the interface, the connects the , , and events. + + The `component` parameter is the control, derived from the , that is associated with this designer, or a copy of that control. + ]]> @@ -708,11 +708,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the The index of the page with which to initialize the component editor. Invokes a component editor for the associated control. - method creates a or object, and then invokes the method of the component editor. - + method creates a or object, and then invokes the method of the component editor. + ]]> @@ -753,11 +753,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the An object that contains the event data. Handles the event. - method is obsolete and has no functionality. - + method is obsolete and has no functionality. + ]]> @@ -787,13 +787,13 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the A object that defines a style. Called when an automatic formatting scheme has been applied to the associated control. - method is called when a object is applied to the associated control that is derived from the class. A object defines a object that is applied to the control. - - A designer can override the to inspect properties of the control or to take some other action. - + method is called when a object is applied to the associated control that is derived from the class. A object defines a object that is applied to the control. + + A designer can override the to inspect properties of the control or to take some other action. + ]]> @@ -828,11 +828,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the A that contains the event data. Called when there is a change to the associated control. - method is called when the event of a control that is derived from the class executes. Typically, this is in response to a property change on the control (for example, a **Properties** grid change). If the object to which the control is bound is changed, the control is redrawn on the design surface. - + method is called when the event of a control that is derived from the class executes. Typically, this is in response to a property change on the control (for example, a **Properties** grid change). If the object to which the control is bound is changed, the control is redrawn on the design surface. + ]]> @@ -863,11 +863,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Called when the data source for the associated control has changed. - base method connects the associated control that is derived from the class to the current data source, and if that is different from the data source to which the control was connected, the method updates the design-time markup. - + base method connects the associated control that is derived from the class to the current data source, and if that is different from the data source to which the control was connected, the method updates the design-time markup. + ]]> @@ -907,11 +907,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the An object that contains the event data. Represents the method that handles the property-builder event. - method invokes a component editor for the associated control that is derived from the class. It creates a or object, and then invokes the method of the component editor. - + method invokes a component editor for the associated control that is derived from the class. It creates a or object, and then invokes the method of the component editor. + ]]> @@ -940,11 +940,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Called when the schema of the data source for the associated control changes. - method calls the method, which in turn calls the method to update the control to reflect the data source change. - + method calls the method, which in turn calls the method to update the control to reflect the data source change. + ]]> @@ -979,11 +979,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Can be overridden to implement functionality that should occur when a style of the associated control has changed. - method can serve as notification that a style of the associated control that is derived from the class has changed. - + method can serve as notification that a style of the associated control that is derived from the class has changed. + ]]> @@ -1011,11 +1011,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the Can be overridden to implement functionality that should occur when the designer template-editing verbs have changed. - method can be implemented to perform additional processing, such recording that a change has occurred, when the template-editing verbs change. - + method can be implemented to perform additional processing, such recording that a change has occurred, when the template-editing verbs change. + ]]> @@ -1050,13 +1050,13 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the A collection implementing an interface of the added and shadowed properties. Used by the designer to remove properties from or add additional properties to the display in the **Properties** grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. - - For controls that are derived from the class, the creates design-time properties to shadow the , , , and properties. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. + + For controls that are derived from the class, the creates design-time properties to shadow the , , , and properties. + ]]> @@ -1092,11 +1092,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the if the schema can be refreshed; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1131,11 +1131,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the to disable data-binding events until after the schema has been refreshed; to enable the events. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1166,11 +1166,11 @@ The `DesignTimeHtmlRequiresLoadComplete` property returns `true` if the For a description of this member, see . An object. - instance is cast to an interface. - + instance is cast to an interface. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/DataGridDesigner.xml b/xml/System.Web.UI.Design.WebControls/DataGridDesigner.xml index 17191677023..380b6c39850 100644 --- a/xml/System.Web.UI.Design.WebControls/DataGridDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/DataGridDesigner.xml @@ -233,11 +233,11 @@ The code uses `Try...Catch...Finally` syntax to do the following: -- The `Try` section changes the values of the properties of the data grid control. +- The `Try` section changes the values of the properties of the data grid control. -- The `Catch` section catches any exceptions and sends them to the method. +- The `Catch` section catches any exceptions and sends them to the method. -- The `Finally` section sets the properties to their original values. +- The `Finally` section sets the properties to their original values. This example is part of a larger example provided for the class. diff --git a/xml/System.Web.UI.Design.WebControls/DataListDesigner.xml b/xml/System.Web.UI.Design.WebControls/DataListDesigner.xml index c7a3660519b..1d3839b54bf 100644 --- a/xml/System.Web.UI.Design.WebControls/DataListDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/DataListDesigner.xml @@ -275,11 +275,11 @@ The code uses `Try...Catch...Finally` syntax to do the following: -- The `Try` section changes the values of the properties of the control. +- The `Try` section changes the values of the properties of the control. -- The `Catch` section catches any exceptions and sends them to the method. +- The `Catch` section catches any exceptions and sends them to the method. -- The `Finally` section sets the properties to their original values. +- The `Finally` section sets the properties to their original values. This code example is part of a larger example provided for the class. diff --git a/xml/System.Web.UI.Design.WebControls/DataPagerDesigner.xml b/xml/System.Web.UI.Design.WebControls/DataPagerDesigner.xml index ca2e7bc416f..efb8a55309c 100644 --- a/xml/System.Web.UI.Design.WebControls/DataPagerDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/DataPagerDesigner.xml @@ -17,29 +17,29 @@ Provides design-time support in a visual designer for the control. - control is parsed. A design-time version of the control is then created on the design surface. When you switch to source view, the design-time control is persisted as markup for the Web page. - - The properties of the class provide the following functionality: - -- The property returns the list of items that are used to create a smart tag panel. - -- The property is used as the designer (shadowed) version of the property. - -- The property returns a collection of template groups for the templated pager fields of the associated control. - -- The property always returns `true`, which indicates that the designer creates a temporary copy of the associated control in order to generate the design-time markup. - - The methods of the class provide the following functionality: - -- The and methods return the HTML markup that is used to render the associated at design time. - -- The method prepares the designer to view, edit, and design the associated control. - -- The method is used to add or remove properties from the properties grid for the control. - + control is parsed. A design-time version of the control is then created on the design surface. When you switch to source view, the design-time control is persisted as markup for the Web page. + + The properties of the class provide the following functionality: + +- The property returns the list of items that are used to create a smart tag panel. + +- The property is used as the designer (shadowed) version of the property. + +- The property returns a collection of template groups for the templated pager fields of the associated control. + +- The property always returns `true`, which indicates that the designer creates a temporary copy of the associated control in order to generate the design-time markup. + + The methods of the class provide the following functionality: + +- The and methods return the HTML markup that is used to render the associated at design time. + +- The method prepares the designer to view, edit, and design the associated control. + +- The method is used to add or remove properties from the properties grid for the control. + ]]> @@ -69,11 +69,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -125,11 +125,11 @@ Generates the HTML markup that is used to render the associated control at design time. The HTML markup that is used to render the associated control at design time. - collection is not empty, the method refreshes the object to force the method to be called and then calls its base implementation. If the collection is empty, the method invokes the method to generate the markup. - + collection is not empty, the method refreshes the object to force the method to be called and then calls its base implementation. If the collection is empty, the method invokes the method to generate the markup. + ]]> @@ -161,11 +161,11 @@ Generates the HTML markup that represents a control at design time that has no visual representation at run time. The HTML markup that represents an empty control at design time. - method is used by the designer to render the control at design time if the collection is empty. The method calls the method to create a placeholder that displays the type and the ID of the control, and additional instructions for the user. - + method is used by the designer to render the control at design time if the collection is empty. The method calls the method to create a placeholder that displays the type and the ID of the control, and additional instructions for the user. + ]]> @@ -196,13 +196,13 @@ The control being designed. Initializes the control designer and loads the specified control. - method when it is ready to use the designer to render the control. The method and its base methods configure properties and connect to events that are required for the designer. - - The `component` parameter is the control that is associated with this designer, or a copy of the control. - + method when it is ready to use the designer to render the control. The method and its base methods configure properties and connect to events that are required for the designer. + + The `component` parameter is the control that is associated with this designer, or a copy of the control. + ]]> @@ -257,11 +257,11 @@ A collection that contains the properties that are exposed in the property grid for the control at design time. Adds or removes properties from the property grid for the control. - method adds a new property to the property grid of the control that corresponds to the property. If the property is set to `true`, the method also sets the attribute of the property to `BrowsableAttribute.No`. This prevents pager fields from being deleted by using the `Fields` dialog box when a templated pager field is in template mode. - + method adds a new property to the property grid of the control that corresponds to the property. If the property is set to `true`, the method also sets the attribute of the property to `BrowsableAttribute.No`. This prevents pager fields from being deleted by using the `Fields` dialog box when a templated pager field is in template mode. + ]]> @@ -294,11 +294,11 @@ Gets a collection of template groups for the templated pager fields of the associated control. A collection of template groups for the templated pager fields of the associated control. - property creates a collection of objects that represent the template elements in a control at design time. It adds one element to the collection for each object in the collection of the associated control. - + property creates a collection of objects that represent the template elements in a control at design time. It adds one element to the collection for each object in the collection of the associated control. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/DetailsViewDesigner.xml b/xml/System.Web.UI.Design.WebControls/DetailsViewDesigner.xml index c2d51c95ad3..2b9395d40c1 100644 --- a/xml/System.Web.UI.Design.WebControls/DetailsViewDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/DetailsViewDesigner.xml @@ -17,49 +17,49 @@ Provides design-time support in a visual designer for the control. - control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. - - The properties of the class provide the following functionality: - -- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. - -- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. - -- The property returns a collection of template groups for the fields of the associated control and the top level templates. - -- The property always returns `true`, indicating that the designer creates a temporary copy of the associated control to generate the design-time markup. - - The class methods provide the following functionality: - -- The method binds the associated control to a design-time data source. - -- The method returns the markup that is used to render the associated at design time. - -- The method prepares the designer to view, edit, and design the associated . - -- The method is called when a region of the design-time view of the associated is clicked. - -- The method is called when the schema of the data source of the associated changes. - -- The method is used to remove or add additional properties or to shadow properties of the associated . - - Design-time editable regions are not supported in the control, so the and methods have no functionality. - - - -## Examples - The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. - - The example derives the `MyDetailsView` control from the . The `MyDetailsView` is simply a copy of the control. The example also derives the `MyDetailsViewDesigner` class from and places a object for `MyDetailsViewDesigner` on the `MyDetailsView` control. - - `The MyDetailsViewDesigner` overrides the property to specify that the pager row of the design-time view of the `MyDetailsView` contain five page links. It overrides the method to make the property visible in the **Property** grid at design time. It overrides the method to include the property, if it is specified, as a new first row in the `MyDetailsView` grid at design time. If the property of the `MyDetailsView` is the or value, the draws a blue dashed border around the control to make its extent more visible. - + control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. + + The properties of the class provide the following functionality: + +- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. + +- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. + +- The property returns a collection of template groups for the fields of the associated control and the top level templates. + +- The property always returns `true`, indicating that the designer creates a temporary copy of the associated control to generate the design-time markup. + + The class methods provide the following functionality: + +- The method binds the associated control to a design-time data source. + +- The method returns the markup that is used to render the associated at design time. + +- The method prepares the designer to view, edit, and design the associated . + +- The method is called when a region of the design-time view of the associated is clicked. + +- The method is called when the schema of the data source of the associated changes. + +- The method is used to remove or add additional properties or to shadow properties of the associated . + + Design-time editable regions are not supported in the control, so the and methods have no functionality. + + + +## Examples + The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. + + The example derives the `MyDetailsView` control from the . The `MyDetailsView` is simply a copy of the control. The example also derives the `MyDetailsViewDesigner` class from and places a object for `MyDetailsViewDesigner` on the `MyDetailsView` control. + + `The MyDetailsViewDesigner` overrides the property to specify that the pager row of the design-time view of the `MyDetailsView` contain five page links. It overrides the method to make the property visible in the **Property** grid at design time. It overrides the method to include the property, if it is specified, as a new first row in the `MyDetailsView` grid at design time. If the property of the `MyDetailsView` is the or value, the draws a blue dashed border around the control to make its extent more visible. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/CS/detailsviewdesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet1"::: + ]]> @@ -90,11 +90,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -152,11 +152,11 @@ Gets the collection of automatic formatting schemes to display in the **Auto Format** dialog box. A that contains the predefined schemes for the . - is populated from an XML-encoded member of an internal class. - + is populated from an XML-encoded member of an internal class. + ]]> @@ -187,13 +187,13 @@ The control to bind to the design-time data source. Binds the associated control to the design-time data source. - method binds the associated control to the design-time data source and calculates the number of pager and automatically generated rows that are required, based on features that are specified for the . - - The `dataBoundControl` parameter represents the control that is associated with this designer, or a copy of that control. - + method binds the associated control to the design-time data source and calculates the number of pager and automatically generated rows that are required, based on features that are specified for the . + + The `dataBoundControl` parameter represents the control that is associated with this designer, or a copy of that control. + ]]> @@ -232,19 +232,19 @@ Gets the markup that is used to render the associated control at design time. A containing the markup used to render the at design time. - method sets the property of the control to `true`, if the collection is empty. The then sets the collection of the control to an empty array if the schema of the data source cannot be obtained. It refreshes the object to force the method to be called. It then calls the base method to generate the markup. - - - -## Examples - The following code example shows how to override the method in a class inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from is the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. - + method sets the property of the control to `true`, if the collection is empty. The then sets the collection of the control to an empty array if the schema of the data source cannot be obtained. It refreshes the object to force the method to be called. It then calls the base method to generate the markup. + + + +## Examples + The following code example shows how to override the method in a class inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from is the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/CS/detailsviewdesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet4"::: + ]]> @@ -280,21 +280,21 @@ Gets the markup that is used to render the associated control at design time and populates a collection of designer regions. A containing the markup used to render the at design time. - method calls the method to generate the markup for the design-time rendering of the control. The method also populates `regions` with a object for each clickable or selectable region of the design-time rendering. - - For the , the first cell in each row is selectable; all the cells in the rows are clickable. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the is the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. - + method calls the method to generate the markup for the design-time rendering of the control. The method also populates `regions` with a object for each clickable or selectable region of the design-time rendering. + + For the , the first cell in each row is selectable; all the cells in the rows are clickable. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the is the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/CS/detailsviewdesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet4"::: + ]]> @@ -329,11 +329,11 @@ Returns the content for an editable region of the design-time view of the associated control. The content for an editable region of the design-time view of the associated control. - @@ -362,13 +362,13 @@ A , control which implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. - - The `component` parameter represents the control that is associated with this designer or a copy of that control. - + method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. + + The `component` parameter represents the control that is associated with this designer or a copy of that control. + ]]> @@ -401,11 +401,11 @@ A that defines the clicked region of the control. Called when a region of the design-time view for the associated control is clicked. - method saves the selected region index and updates the markup that renders the control on the design surface. - + method saves the selected region index and updates the markup that renders the control on the design surface. + ]]> @@ -434,11 +434,11 @@ Called when the schema of the data source for the associated control changes. - method calls the method, which in turn calls the method to update the control to reflect the data source change. - + method calls the method, which in turn calls the method to update the control to reflect the data source change. + ]]> @@ -469,21 +469,21 @@ A collection implementing the of the added and shadowed properties. Used by the designer to remove properties from or add properties to the display in the grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the `Properties` grid. - - For the control, the method sets the object of the property to `false` when the control is in template mode. This ensures that a column that is in template mode cannot be deleted using the `Fields` dialog box. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the `Properties` grid of the control at design time. The example makes the property visible in the `Properties` grid. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the `Properties` grid. + + For the control, the method sets the object of the property to `false` when the control is in template mode. This ensures that a column that is in template mode cannot be deleted using the `Fields` dialog box. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the `Properties` grid of the control at design time. The example makes the property visible in the `Properties` grid. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/CS/detailsviewdesigner.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet3"::: + ]]> @@ -518,19 +518,19 @@ Gets the number of sample rows for the associated control to display. The number of sample rows to show. - property always returns the number `2`. This causes two page links to be displayed in the pager row of the control at design time. - - - -## Examples - The following code example shows how to override the property in a class inherited from the class to change the number of page links appearing in the pager row of the control at design time. The example causes five page links to be displayed. - + property always returns the number `2`. This causes two page links to be displayed in the pager row of the control at design time. + + + +## Examples + The following code example shows how to override the property in a class inherited from the class to change the number of page links appearing in the pager row of the control at design time. The example causes five page links to be displayed. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/CS/detailsviewdesigner.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.DetailsViewDesigner/VB/detailsviewdesigner.vb" id="Snippet2"::: + ]]> @@ -562,11 +562,11 @@ A to write to . Specifies content for an editable region of the design-time view of the associated control. - method has no functionality; there is no support for editable regions in the design-time view of the control. - + method has no functionality; there is no support for editable regions in the design-time view of the control. + ]]> @@ -592,11 +592,11 @@ Gets a collection of template groups for the fields of the associated control. A containing an element for each templated field in the control. - property constructs a collection of objects, one for each templated data field and one for each control field (such as header, footer, and pager) in the associated control. The data field elements have a object for each of the predefined row template types. The control field elements contain a single . - + property constructs a collection of objects, one for each templated data field and one for each control field (such as header, footer, and pager) in the associated control. The data field elements have a object for each of the predefined row template types. The control field elements contain a single . + ]]> @@ -626,11 +626,11 @@ Gets a value indicating whether the designer should use a temporary copy, rather than the actual control associated with the designer, to generate the design-time markup. Always . - property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . If the property has been overridden to return `false`, the designer will use the associated control itself to generate the design-time markup. - + property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . If the property has been overridden to return `false`, the designer will use the associated control itself to generate the design-time markup. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/FormViewDesigner.xml b/xml/System.Web.UI.Design.WebControls/FormViewDesigner.xml index 8f55cfebd37..b6f983f5d09 100644 --- a/xml/System.Web.UI.Design.WebControls/FormViewDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/FormViewDesigner.xml @@ -17,45 +17,45 @@ Provides design-time support in a visual designer for the control. - control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. - - The properties of the class provide the following functionality: - -- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. - -- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. - -- The property returns a collection of template groups for the templates of the associated . - -- The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. - - The class methods provide the following functionality: - -- The method returns the markup that is used to render the associated at design time. - -- The method prepares the designer to view, edit, and design the associated . - -- The method is called when the schema of the data source for the associated changes. - - - -## Examples - The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. - - The example derives the `MyFormView` control from the control. The `MyFormView` is simply a copy of the . The example also derives the `MyFormViewDesigner` class from the and places a object for the `MyFormViewDesigner` on the `MyFormView` control. - - The `MyFormViewDesigner` overrides the following items: - -- The property to specify that the pager row for the design-time view of the `MyFormView` contain four page links. - -- The method to include the property, if it is specified, as a new first row in the `MyFormView` grid at design time. If the property of the `MyFormView` is the or value, the draws a blue dashed border around the control to make its extent more visible. - + control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. + + The properties of the class provide the following functionality: + +- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. + +- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. + +- The property returns a collection of template groups for the templates of the associated . + +- The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. + + The class methods provide the following functionality: + +- The method returns the markup that is used to render the associated at design time. + +- The method prepares the designer to view, edit, and design the associated . + +- The method is called when the schema of the data source for the associated changes. + + + +## Examples + The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. + + The example derives the `MyFormView` control from the control. The `MyFormView` is simply a copy of the . The example also derives the `MyFormViewDesigner` class from the and places a object for the `MyFormViewDesigner` on the `MyFormView` control. + + The `MyFormViewDesigner` overrides the following items: + +- The property to specify that the pager row for the design-time view of the `MyFormView` contain four page links. + +- The method to include the property, if it is specified, as a new first row in the `MyFormView` grid at design time. If the property of the `MyFormView` is the or value, the draws a blue dashed border around the control to make its extent more visible. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/CS/formviewdesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/VB/formviewdesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/VB/formviewdesigner.vb" id="Snippet1"::: + ]]> @@ -86,11 +86,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of the control on the design surface. - + class when it creates the associated control or a copy of the control on the design surface. + ]]> @@ -150,11 +150,11 @@ Gets the collection of automatic formatting schemes for display in the **Auto Format** dialog box. A that contains the predefined schemes for the . - object is populated from an XML-encoded member of an internal class. - + object is populated from an XML-encoded member of an internal class. + ]]> @@ -184,21 +184,21 @@ Gets the markup that is used to render the associated control at design time. A containing the markup used to render the at design time. - control, the method sets the collection of the control to an empty array if the schema for the data source cannot be obtained. The refreshes the object to force a call to the method. The then calls the base method to generate the markup. - - If no item template has been defined for the control, the calls the method to generate markup that renders to a placeholder. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the is the or value, the draws a blue dashed border around the control to make its extent more visible. The example does not change the run-time appearance of the control. - + control, the method sets the collection of the control to an empty array if the schema for the data source cannot be obtained. The refreshes the object to force a call to the method. The then calls the base method to generate the markup. + + If no item template has been defined for the control, the calls the method to generate markup that renders to a placeholder. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the is the or value, the draws a blue dashed border around the control to make its extent more visible. The example does not change the run-time appearance of the control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/CS/formviewdesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/VB/formviewdesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/VB/formviewdesigner.vb" id="Snippet4"::: + ]]> @@ -235,11 +235,11 @@ Gets the markup text that is used to render a placeholder for the associated control at design time. A containing markup text that renders to a placeholder on the design surface. - control does not include one of the item templates, the method calls the method, which generates the markup for a placeholder that contains instructions on how to edit template content and a message that an item template is required. - + control does not include one of the item templates, the method calls the method, which generates the markup for a placeholder that contains instructions on how to edit template content and a message that an item template is required. + ]]> @@ -272,13 +272,13 @@ A , which implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control. The and its base methods configure properties and connect to events that are necessary for the operation of the designer. - - The `component` parameter is the control that is associated with this designer or a copy of the control. - + method when it is ready to use the designer to render the control. The and its base methods configure properties and connect to events that are necessary for the operation of the designer. + + The `component` parameter is the control that is associated with this designer or a copy of the control. + ]]> @@ -309,11 +309,11 @@ Called when the schema of the data source for the associated control changes. - method calls the method, which in turn calls the method to update the control to reflect the data source change. - + method calls the method, which in turn calls the method to update the control to reflect the data source change. + ]]> @@ -366,11 +366,11 @@ if the control uses an outer table container to apply inline CSS style rules; otherwise, . The default is - control uses an outer table container to apply inline style rule in the markup. You can remove the outer table container by setting this property to `true`. This provides flexibility in applying CSS style rules in the control markup. - + control uses an outer table container to apply inline style rule in the markup. You can remove the outer table container by setting this property to `true`. This provides flexibility in applying CSS style rules in the control markup. + ]]> @@ -395,19 +395,19 @@ Gets the number of sample rows for the associated control to display. The number of sample rows. - always returns `2`. This causes two page links to be displayed in the pager row of the control at design time, if the mode is numeric. - - - -## Examples - The following code example shows how to override the property in a class that is inherited from the class to change the number of page links appearing in the pager row of the control at design time. The example causes four page links to display. - + always returns `2`. This causes two page links to be displayed in the pager row of the control at design time, if the mode is numeric. + + + +## Examples + The following code example shows how to override the property in a class that is inherited from the class to change the number of page links appearing in the pager row of the control at design time. The example causes four page links to display. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/CS/formviewdesigner.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/VB/formviewdesigner.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.FormViewDesigner/VB/formviewdesigner.vb" id="Snippet2"::: + ]]> @@ -437,11 +437,11 @@ Gets a collection of template groups for the fields of the associated control. A containing an element for each templated field in the . - property constructs a collection of objects, one for each control template in the associated control. The control templates are the header, footer, pager, item, edit item, insert item, and empty data. The control template elements contain a single object. - + property constructs a collection of objects, one for each control template in the associated control. The control templates are the header, footer, pager, item, edit item, insert item, and empty data. The control template elements contain a single object. + ]]> @@ -472,11 +472,11 @@ Gets a value indicating whether the designer should use a temporary copy rather than the actual control that is associated with the designer to generate the design-time markup. Always returns . - property is always true, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . If the property has been overridden to return `false`, the designer will use the associated itself to generate the design-time markup. - + property is always true, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . If the property has been overridden to return `false`, the designer will use the associated itself to generate the design-time markup. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/GridViewDesigner.xml b/xml/System.Web.UI.Design.WebControls/GridViewDesigner.xml index d7772cfa424..859a12a8de5 100644 --- a/xml/System.Web.UI.Design.WebControls/GridViewDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/GridViewDesigner.xml @@ -17,49 +17,49 @@ Provides design-time support in a visual designer for the control. - control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. - - The properties of the class provide the following functionality: - -- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. - -- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. - -- The property returns a collection of template groups for the fields of the associated control and the top-level templates. - -- The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. - - The methods of the class provide the following functionality: - -- The method binds the associated control to a design-time data source. - -- The method returns the markup that is used to render the associated at design time. - -- The method prepares the designer to view, edit, and design the associated . - -- The method is called when a region of the design-time view of the associated is clicked. - -- The method is called when the schema of the data source of the associated changes. - -- The method is used to remove or add properties or to shadow properties of the associated . - - Design-time editable regions are not supported in the control, so the and methods have no functionality. - - - -## Examples - The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. - - The example derives the `MyGridView` control from the . The `MyGridView` is simply a copy of the . The example also derives the `MyGridViewDesigner` class from the class and places a object for the `MyGridViewDesigner` on the `MyGridView` control. - - The `MyGridViewDesigner` overrides the method to make the property visible in the **Properties** grid at design time. It overrides the method to include the property, if it is specified, as a new first row in the `MyGridView` control at design time. If the property of the `MyGridView` control has the or value, the draws a blue dashed border around the control to make its extent more visible. - + control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. + + The properties of the class provide the following functionality: + +- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. + +- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. + +- The property returns a collection of template groups for the fields of the associated control and the top-level templates. + +- The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. + + The methods of the class provide the following functionality: + +- The method binds the associated control to a design-time data source. + +- The method returns the markup that is used to render the associated at design time. + +- The method prepares the designer to view, edit, and design the associated . + +- The method is called when a region of the design-time view of the associated is clicked. + +- The method is called when the schema of the data source of the associated changes. + +- The method is used to remove or add properties or to shadow properties of the associated . + + Design-time editable regions are not supported in the control, so the and methods have no functionality. + + + +## Examples + The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. + + The example derives the `MyGridView` control from the . The `MyGridView` is simply a copy of the . The example also derives the `MyGridViewDesigner` class from the class and places a object for the `MyGridViewDesigner` on the `MyGridView` control. + + The `MyGridViewDesigner` overrides the method to make the property visible in the **Properties** grid at design time. It overrides the method to include the property, if it is specified, as a new first row in the `MyGridView` control at design time. If the property of the `MyGridView` control has the or value, the draws a blue dashed border around the control to make its extent more visible. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/CS/gridviewdesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet1"::: + ]]> @@ -90,11 +90,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -152,11 +152,11 @@ Gets or sets the collection of predefined formatting schemes to display in the **Auto Format** dialog box. A that contains the predefined schemes for the . - object is populated from an XML-encoded member of an internal class. - + object is populated from an XML-encoded member of an internal class. + ]]> @@ -187,13 +187,13 @@ The to bind to the design-time data source. Binds the associated control to the design-time data source. - method binds the associated control to the design-time data source and assigns a unique value to the field of each cell of the control's design-time rendering. - - The `dataBoundControl` parameter is the control that is associated with this designer, or a copy of that control. - + method binds the associated control to the design-time data source and assigns a unique value to the field of each cell of the control's design-time rendering. + + The `dataBoundControl` parameter is the control that is associated with this designer, or a copy of that control. + ]]> @@ -232,27 +232,27 @@ Gets the markup that is used to render the associated control at design time. A containing the markup used to render the at design time. - method does the following: - -1. Sets the property of the control to `true`, if the property is empty. - -2. Sets the property of the control to `null`, if the schema of the data source cannot be obtained. - -3. Refreshes the object to force the method to be called. - -4. Calls the base method to generate the markup. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the class has the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. - + method does the following: + +1. Sets the property of the control to `true`, if the property is empty. + +2. Sets the property of the control to `null`, if the schema of the data source cannot be obtained. + +3. Refreshes the object to force the method to be called. + +4. Calls the base method to generate the markup. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the class has the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/CS/gridviewdesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet4"::: + ]]> @@ -288,21 +288,21 @@ Gets the markup that is used to render the associated control at design time and populates a collection of designer regions. A containing the markup used to render the at design time. - method calls the method to generate the markup for the design-time rendering of the control. The also populates `regions` with a object for each clickable or selectable region of the design-time rendering. - - For the , the first cell in each row is selectable; all the cells in the rows are clickable. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the class has the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. - + method calls the method to generate the markup for the design-time rendering of the control. The also populates `regions` with a object for each clickable or selectable region of the design-time rendering. + + For the , the first cell in each row is selectable; all the cells in the rows are clickable. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of the control at design time. The example adds a new first row to the grid to contain the property, if the is defined. If the property of the control that is derived from the class has the or value, the draws a blue dashed border around the control to make its extent more visible. It does not change the run-time appearance of the control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/CS/gridviewdesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet4"::: + ]]> @@ -338,11 +338,11 @@ . - @@ -371,13 +371,13 @@ A , which implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. - - The `component` parameter is the control that is associated with this designer, or a copy of the control. - + method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. + + The `component` parameter is the control that is associated with this designer, or a copy of the control. + ]]> @@ -410,11 +410,11 @@ A that defines the clicked region of the control. Called when a region of the design-time view of the associated control is clicked. - method saves the selected region index and updates the markup that renders the control on the design surface. - + method saves the selected region index and updates the markup that renders the control on the design surface. + ]]> @@ -443,11 +443,11 @@ Called when the schema of the data source for the associated control changes. - method calls the method, which in turn calls the method to update the control to reflect the data source change. - + method calls the method, which in turn calls the method to update the control to reflect the data source change. + ]]> @@ -478,21 +478,21 @@ A collection implementing the of the added and shadowed properties. Used by the designer to remove properties from or add additional properties to the display in the **Properties** grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. - - For the control, the method sets the object of the property to `false` when the control is in template mode. This is so a column that is in template mode cannot be deleted using the **Fields** dialog box. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the to change the **Properties** grid of the control at design time. The example makes the property visible in the **Properties** grid. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. + + For the control, the method sets the object of the property to `false` when the control is in template mode. This is so a column that is in template mode cannot be deleted using the **Fields** dialog box. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the to change the **Properties** grid of the control at design time. The example makes the property visible in the **Properties** grid. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/CS/gridviewdesigner.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.GridViewDesigner/VB/gridviewdesigner.vb" id="Snippet3"::: + ]]> @@ -527,11 +527,11 @@ Gets or sets the number of sample rows for the associated control to display. The number of sample rows. - control allows paging and the property is greater than 0, the property returns the plus 1 (but not greater than 100). If the does not allow paging or the is 0, returns `5`. - + control allows paging and the property is greater than 0, the property returns the plus 1 (but not greater than 100). If the does not allow paging or the is 0, returns `5`. + ]]> @@ -563,11 +563,11 @@ A to write to . Specifies content for an editable region of the design-time view for the associated control. - method has no functionality; there is no support for editable regions in the design-time view of the control. - + method has no functionality; there is no support for editable regions in the design-time view of the control. + ]]> @@ -593,11 +593,11 @@ Gets or sets a collection of template groups for the fields of the associated control. A containing an element for each templated field in the . - property constructs a collection of objects, one for each templated data field and one for each control template (pager and empty data) in the associated control. The data field elements have a object for each of the predefined row template types. The control template elements contain a single . - + property constructs a collection of objects, one for each templated data field and one for each control template (pager and empty data) in the associated control. The data field elements have a object for each of the predefined row template types. The control template elements contain a single . + ]]> @@ -628,13 +628,13 @@ if the designer should use a temporary copy rather than the actual control associated with the designer to generate the design-time markup; otherwise, . - property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . - - If the property has been overridden to return `false`, the designer will use the associated itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. - + property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . + + If the property has been overridden to return `false`, the designer will use the associated itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/HierarchicalDataBoundControlDesigner.xml b/xml/System.Web.UI.Design.WebControls/HierarchicalDataBoundControlDesigner.xml index 0b394723055..eeb05e7c6ce 100644 --- a/xml/System.Web.UI.Design.WebControls/HierarchicalDataBoundControlDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/HierarchicalDataBoundControlDesigner.xml @@ -17,49 +17,49 @@ Provides design-time support in a designer host for the control. - abstract class is parsed and a design-time version of the control is created on the design surface. When the user switches back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The class provides design-time support for controls that are derived from the in a designer host. - - The class properties provide the following functionality: - -- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. - -- The property provides access to the designer of the data source, if one is defined. - -- The property gets the default view of the data source that is bound to the associated control. - -- The property determines whether the control should render its default action lists for choosing and creating data sources. - - The class methods provide the following functionality: - -- The method performs the actions that are necessary to connect to the current data source. - -- The method creates a new data source for the associated control. - -- The method binds the associated control that is derived from the class to a design-time data source. - -- The method performs the actions that are necessary to disconnect from the current data source. - -- The method gets a data source that can be used at design time for the associated control. - -- The method constructs a sample data source that can be used at design time for the associated control. - -- The method is used to remove properties from or add additional properties to or to shadow properties of the associated control that is derived from the class. - - - -## Examples - The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. - - The example derives the `MyHierarchicalDataBoundControl` class from the . The `MyHierarchicalDataBoundControl` class is simply a copy of the . The example also derives the `MyHierarchicalDataBoundControlDesigner` class from the class and places a object for the `MyHierarchicalDataBoundControlDesigner` on the `MyHierarchicalDataBoundControl` class. - - The `MyHierarchicalDataBoundControlDesigner` overrides the method to make the property visible in the **Properties** grid at design time. It overrides the method to generate the markup for a placeholder if the design time markup is `null` or , or if the design-time markup is an empty `` block (that is, if there is no inner markup between the `` and `` tags). - + abstract class is parsed and a design-time version of the control is created on the design surface. When the user switches back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The class provides design-time support for controls that are derived from the in a designer host. + + The class properties provide the following functionality: + +- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. + +- The property provides access to the designer of the data source, if one is defined. + +- The property gets the default view of the data source that is bound to the associated control. + +- The property determines whether the control should render its default action lists for choosing and creating data sources. + + The class methods provide the following functionality: + +- The method performs the actions that are necessary to connect to the current data source. + +- The method creates a new data source for the associated control. + +- The method binds the associated control that is derived from the class to a design-time data source. + +- The method performs the actions that are necessary to disconnect from the current data source. + +- The method gets a data source that can be used at design time for the associated control. + +- The method constructs a sample data source that can be used at design time for the associated control. + +- The method is used to remove properties from or add additional properties to or to shadow properties of the associated control that is derived from the class. + + + +## Examples + The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. + + The example derives the `MyHierarchicalDataBoundControl` class from the . The `MyHierarchicalDataBoundControl` class is simply a copy of the . The example also derives the `MyHierarchicalDataBoundControlDesigner` class from the class and places a object for the `MyHierarchicalDataBoundControlDesigner` on the `MyHierarchicalDataBoundControl` class. + + The `MyHierarchicalDataBoundControlDesigner` overrides the method to make the property visible in the **Properties** grid at design time. It overrides the method to generate the markup for a placeholder if the design time markup is `null` or , or if the design-time markup is an empty `` block (that is, if there is no inner markup between the `` and `` tags). + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.HierarchicalDataBoundControlDesigner/CS/hierarchicaldatabounddesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.HierarchicalDataBoundControlDesigner/VB/hierarchicaldatabounddesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.HierarchicalDataBoundControlDesigner/VB/hierarchicaldatabounddesigner.vb" id="Snippet1"::: + ]]> @@ -90,11 +90,11 @@ Initializes a new instance of the class. - class when it creates the associated control that is derived from the class or a copy of that control on the design surface. - + class when it creates the associated control that is derived from the class or a copy of that control on the design surface. + ]]> @@ -124,11 +124,11 @@ Gets the designer action list collection for this designer. The associated with this designer. - property creates an empty object. - + property creates an empty object. + ]]> @@ -159,11 +159,11 @@ if a connection to a new data source was performed; if the old and new data source are the same. - method disconnects the and events from the previous data source, and then attaches these events to the new data source. - + method disconnects the and events from the previous data source, and then attaches these events to the new data source. + ]]> @@ -192,11 +192,11 @@ Creates a new data source for the associated control. - method displays a dialog box that can be used to create a data source for the associated control that is derived from the class. - + method displays a dialog box that can be used to create a data source for the associated control that is derived from the class. + ]]> @@ -226,13 +226,13 @@ The to bind to the design-time data source. Binds the associated control to the design-time data source. - method first sets the property of the control to reference the design-time data source and sets the property to `null`. The calls back to the method of the control that is derived from the class to bind to the design-time data source. Finally, it restores the original values of the and properties. - - The `dataBoundControl` parameter is the control that is derived from the class that is associated with this designer, or a copy of that control. - + method first sets the property of the control to reference the design-time data source and sets the property to `null`. The calls back to the method of the control that is derived from the class to bind to the design-time data source. Finally, it restores the original values of the and properties. + + The `dataBoundControl` parameter is the control that is derived from the class that is associated with this designer, or a copy of that control. + ]]> @@ -269,11 +269,11 @@ Provides access to the designer of the data source, when one is selected for data binding. The designer for the data source of the associated control derived from the , which implements the . - property of the designer or the property of the associated control that is derived from the class. - + property of the designer or the property of the associated control that is derived from the class. + ]]> @@ -302,11 +302,11 @@ Gets the default view of the data source that is bound to the associated control. The representing the default view of the data source. - property of the designer or the property of the associated control that is derived from the class. - + property of the designer or the property of the associated control that is derived from the class. + ]]> @@ -335,11 +335,11 @@ Performs the actions that are necessary to disconnect from the current data source. - method disconnects the and events from the current data source. - + method disconnects the and events from the current data source. + ]]> @@ -369,11 +369,11 @@ Gets a data source that can be used at design time for the associated control. An object implementing the interface that can be used as a data source for controls derived from the . - class. - + class. + ]]> @@ -402,11 +402,11 @@ Constructs a sample data source that can be used at design time for the associated control. An object implementing the interface that can be used as a data source for controls derived from . - method has a single node with an empty path. - + method has a single node with an empty path. + ]]> @@ -437,21 +437,21 @@ A collection implementing the of the added and shadowed properties. Used by the designer to remove properties from or add additional properties to the display in the **Properties** grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. - - For controls that are derived from the class, the method creates design-time properties to shadow the and properties. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the **Properties** grid of the control at design time. The example makes the property visible in the **Properties** grid. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. + + For controls that are derived from the class, the method creates design-time properties to shadow the and properties. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the **Properties** grid of the control at design time. The example makes the property visible in the **Properties** grid. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.HierarchicalDataBoundControlDesigner/CS/hierarchicaldatabounddesigner.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.HierarchicalDataBoundControlDesigner/VB/hierarchicaldatabounddesigner.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.HierarchicalDataBoundControlDesigner/VB/hierarchicaldatabounddesigner.vb" id="Snippet3"::: + ]]> @@ -485,13 +485,13 @@ Gets a value that indicates whether the control should render its default action lists, which contain a data source ID drop-down list and related tasks. Always . - class include a **Choose Data Source** menu item that has a drop-down list from which a data source can be selected, and any other action items on the action lists of the data source control. - - Typically, the data source control action lists will include **Configure Data Source** and **Refresh Schema** menu items, although these need not always be present. The **Configure Data Source** menu item displays a dialog box that is appropriate to the type of data source chosen. For example, if the data source is an control, the **Configure Data Source** dialog box allows you to choose a business object for the . The **Refresh Schema** menu item refreshes the designer schema that is applied by the data source. - + class include a **Choose Data Source** menu item that has a drop-down list from which a data source can be selected, and any other action items on the action lists of the data source control. + + Typically, the data source control action lists will include **Configure Data Source** and **Refresh Schema** menu items, although these need not always be present. The **Configure Data Source** menu item displays a dialog box that is appropriate to the type of data source chosen. For example, if the data source is an control, the **Configure Data Source** dialog box allows you to choose a business object for the . The **Refresh Schema** menu item refreshes the designer schema that is applied by the data source. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/LinqDataSourceDesigner.xml b/xml/System.Web.UI.Design.WebControls/LinqDataSourceDesigner.xml index 310e64c2335..ab13cc75945 100644 --- a/xml/System.Web.UI.Design.WebControls/LinqDataSourceDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/LinqDataSourceDesigner.xml @@ -17,18 +17,18 @@ Provides design-time support in a visual designer for the control. - control markup is parsed. A design-time version of the control is then created on the design surface. When you switch to source view, the design-time control is persisted as the markup for the Web page. - - The class provides design-time support for the control in a visual designer. - + control markup is parsed. A design-time version of the control is then created on the design surface. When you switch to source view, the design-time control is persisted as the markup for the Web page. + + The class provides design-time support for the control in a visual designer. + ]]> - To provide commands in a derived class for the action list menu at design time, you must override the property. For this property, return a custom object that contains items that derive from the object. - + To provide commands in a derived class for the action list menu at design time, you must override the property. For this property, return a custom object that contains items that derive from the object. + For more information, see the class. @@ -113,13 +113,13 @@ if the method can be called; otherwise, . - method can be called if the property of the associated control implements the interface. In that case, the property value is `true`. - - If the property is `true`, the **Configure Data Source** menu item is displayed in the **LinqDataSource Tasks** menu of the associated control on the visual designer surface. When this item is selected, the **Configure Data Source** wizard is started. - + method can be called if the property of the associated control implements the interface. In that case, the property value is `true`. + + If the property is `true`, the **Configure Data Source** menu item is displayed in the **LinqDataSource Tasks** menu of the associated control on the visual designer surface. When this item is selected, the **Configure Data Source** wizard is started. + ]]> @@ -149,19 +149,19 @@ if the method can be called; otherwise, . - method can be called if all the following conditions are true: - -- The property of the associated control implements the interface. - -- The property contains a value. - - If these conditions are true, the property value is `true`. - - If the is `true`, the **Refresh Schema** menu item is displayed in the **LinqDataSource Tasks** menu of the associated control on the visual designer surface. - + method can be called if all the following conditions are true: + +- The property of the associated control implements the interface. + +- The property contains a value. + + If these conditions are true, the property value is `true`. + + If the is `true`, the **Refresh Schema** menu item is displayed in the **LinqDataSource Tasks** menu of the associated control on the visual designer surface. + ]]> @@ -190,13 +190,13 @@ Launches the data source configuration wizard in the design host. - method starts the **Configure Data Source** wizard on the visual designer surface. - - The method is called when the **Configure Data Source** menu item is selected on the **LinqDataSource Tasks** menu of the associated control. The **Configure Data Source** menu item appears on the **LinqDataSource Tasks** menu when the property is `true`. - + method starts the **Configure Data Source** wizard on the visual designer surface. + + The method is called when the **Configure Data Source** menu item is selected on the **LinqDataSource Tasks** menu of the associated control. The **Configure Data Source** menu item appears on the **LinqDataSource Tasks** menu when the property is `true`. + ]]> Extending Design-Time Support @@ -291,11 +291,11 @@ . - instance, setting this property has no effect. This property shadows a property in the associated control, and is intended for internal use only. - + instance, setting this property has no effect. This property shadows a property in the associated control, and is intended for internal use only. + ]]> @@ -547,11 +547,11 @@ . - instance, setting this property has no effect. This property shadows a property in the associated control, and is intended for internal use only. - + instance, setting this property has no effect. This property shadows a property in the associated control, and is intended for internal use only. + ]]> @@ -694,11 +694,11 @@ to suppress all data source events until the schema is refreshed. Refreshes the schema from the underlying data source. - method only if is `true`. - + method only if is `true`. + ]]> @@ -862,11 +862,11 @@ . - instance, setting this property has no effect. This property shadows a property in the associated control, and is intended for internal use only. - + instance, setting this property has no effect. This property shadows a property in the associated control, and is intended for internal use only. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/ListControlDesigner.xml b/xml/System.Web.UI.Design.WebControls/ListControlDesigner.xml index 4f3fea9da0e..bb9ca38d2ca 100644 --- a/xml/System.Web.UI.Design.WebControls/ListControlDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/ListControlDesigner.xml @@ -34,48 +34,48 @@ Serves as the base class for designers that provide design-time support in the Visual Web Designer for controls that are derived from the abstract class. - class is parsed and a design-time version of the control is created on the design surface. When the user switches back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class serves as the base class for designers that provide design-time support in the Visual Web Designer for controls that are derived from the . - - The class properties provide the following functionality: - -- The property returns a object, which typically contains an object that is derived from the object for each level in the inheritance tree of the designer. - -- The and properties provide access to the corresponding properties of a control that is derived from the class. The and indicate the fields of the data source that provide the text and value content of the list items, respectively. - - The class methods provide the following functionality: - -- The method binds the associated control that is derived from the to a design-time data source. - -- The method returns the markup that is used to render the associated control at design time. - -- The method returns the design-time component from the associated control container. - -- The method returns the from the control container, resolved to the design-time property of the control. - -- The method prepares the designer to view and design the associated control that is derived from the . - -- The method is called when the for the associated control has changed. - -- The method is used to remove additional properties from, add additional properties to, or shadow properties of the associated control that is derived from the . - - - -## Examples - This section provides two code examples. The first demonstrates how to derive a custom control designer. The second demonstrates how to associate a derived control with a designer. - - The following code example shows how to create a class named `SimpleRadioButtonListDesigner` that inherits from the class. The `SimpleRadioButtonListDesigner` class overrides the , , and methods. The `SimpleRadioButtonListDesigner` class displays a `SimpleRadioButtonList` control on the design surface. - + class is parsed and a design-time version of the control is created on the design surface. When the user switches back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class serves as the base class for designers that provide design-time support in the Visual Web Designer for controls that are derived from the . + + The class properties provide the following functionality: + +- The property returns a object, which typically contains an object that is derived from the object for each level in the inheritance tree of the designer. + +- The and properties provide access to the corresponding properties of a control that is derived from the class. The and indicate the fields of the data source that provide the text and value content of the list items, respectively. + + The class methods provide the following functionality: + +- The method binds the associated control that is derived from the to a design-time data source. + +- The method returns the markup that is used to render the associated control at design time. + +- The method returns the design-time component from the associated control container. + +- The method returns the from the control container, resolved to the design-time property of the control. + +- The method prepares the designer to view and design the associated control that is derived from the . + +- The method is called when the for the associated control has changed. + +- The method is used to remove additional properties from, add additional properties to, or shadow properties of the associated control that is derived from the . + + + +## Examples + This section provides two code examples. The first demonstrates how to derive a custom control designer. The second demonstrates how to associate a derived control with a designer. + + The following code example shows how to create a class named `SimpleRadioButtonListDesigner` that inherits from the class. The `SimpleRadioButtonListDesigner` class overrides the , , and methods. The `SimpleRadioButtonListDesigner` class displays a `SimpleRadioButtonList` control on the design surface. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ListControlDesigner_Samples/CS/SimpleRadioButtonListDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet1"::: - - The following code example derives the `SimpleRadioButtonList` control from the control, and shows how to use the class to associate the `SimpleRadioButtonList` control with its designer, the `SimpleRadioButtonListDesigner` class. - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet1"::: + + The following code example derives the `SimpleRadioButtonList` control from the control, and shows how to use the class to associate the `SimpleRadioButtonList` control with its designer, the `SimpleRadioButtonListDesigner` class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ListControlDesigner_Samples/CS/SimpleRadioButtonList.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlist.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlist.vb" id="Snippet5"::: + ]]> @@ -112,11 +112,11 @@ Initializes a new instance of the class. - class when it creates the associated control that is derived from the class on the design surface. - + class when it creates the associated control that is derived from the class on the design surface. + ]]> @@ -177,13 +177,13 @@ The associated control derived from the , or a copy of that control. Binds the specified control to the design-time data source. - base class, the method sets the and properties of the object to reference the design-time data source, then calls the method, and then restores the and properties to their original values. - - For the class, however, the method has no functionality, because objects were just added to the collection. - + base class, the method sets the and properties of the object to reference the design-time data source, then calls the method, and then restores the and properties to their original values. + + For the class, however, the method has no functionality, because objects were just added to the collection. + ]]> @@ -257,11 +257,11 @@ Gets or sets the data text field of the control. The of the list control. - property sets or retrieves the markup to use for the design-time representation of the control at run time. This provides access via the designer to the property of the associated control, which corresponds to the field of the data source that provides the text content of the list items. - + property sets or retrieves the markup to use for the design-time representation of the control at run time. This provides access via the designer to the property of the associated control, which corresponds to the field of the data source that provides the text content of the list items. + ]]> @@ -290,11 +290,11 @@ Gets or sets the data value field of the control. The of the list control. - property provides access via the designer to the property of the associated control, which indicates the field of the data source that provides the value content of the list items. - + property provides access via the designer to the property of the associated control, which indicates the field of the data source that provides the value content of the list items. + ]]> @@ -324,21 +324,21 @@ Gets the HTML that is used to represent the control at design time. A containing the markup used to render the control derived from the at design time. - object is data-bound, the method clears the collection and adds a message indicating the control is data-bound. If the associated control is not data-bound and the collection is empty, the adds a message indicating the control is unbound. Then, the calls its base method to generate the markup. - - - -## Examples - The following code example overrides the method to customize the markup that is displayed for the associated control on a design surface. If the property is not defined for the associated control, it is set to `Gainsboro`, and the control is displayed with that background color. After this is done, the base implementation of the method is called. - - This code example is part of a larger example provided for the class. - + object is data-bound, the method clears the collection and adds a message indicating the control is data-bound. If the associated control is not data-bound and the collection is empty, the adds a message indicating the control is unbound. Then, the calls its base method to generate the markup. + + + +## Examples + The following code example overrides the method to customize the markup that is displayed for the associated control on a design surface. If the property is not defined for the associated control, it is set to `Gainsboro`, and the control is displayed with that background color. After this is done, the base implementation of the method is called. + + This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ListControlDesigner_Samples/CS/SimpleRadioButtonListDesigner.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet2"::: + ]]> @@ -375,13 +375,13 @@ Gets the data source component from the associated control container, resolved to a specific data member. An containing the design-time , resolved to the of the associated control. - method returns `null` if a property is not found, or if a with the same name does not exist. - - If the cannot be resolved to the property of the associated control, the returns an interface containing the design-time . - + method returns `null` if a property is not found, or if a with the same name does not exist. + + If the cannot be resolved to the property of the associated control, the returns an interface containing the design-time . + ]]> @@ -420,11 +420,11 @@ Gets the data source component from the associated control container. An object implementing an interface and containing the design-time of the associated control. - method returns `null` if a property is not found, or if a with the same name does not exist. - + method returns `null` if a property is not found, or if a with the same name does not exist. + ]]> @@ -458,23 +458,23 @@ A control derived from the that implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control that is derived from the class. The method and its base methods configure properties and connect to events that are necessary for the operation of the designer. - - The `component` parameter is the control, derived from the , that is associated with this designer or is a copy of that control. - - - -## Examples - The following code example overrides the method in a designer derived from the class to ensure that only instances of a control class named `SimpleRadioButtonList` are used by the custom designer. - - This code example is part of a larger example provided for the class. - + method when it is ready to use the designer to render the control that is derived from the class. The method and its base methods configure properties and connect to events that are necessary for the operation of the designer. + + The `component` parameter is the control, derived from the , that is associated with this designer or is a copy of that control. + + + +## Examples + The following code example overrides the method in a designer derived from the class to ensure that only instances of a control class named `SimpleRadioButtonList` are used by the custom designer. + + This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ListControlDesigner_Samples/CS/SimpleRadioButtonListDesigner.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet3"::: + ]]> @@ -511,7 +511,7 @@ @@ -549,21 +549,21 @@ Handles changes made to the component. This includes changes made in the propert Called when the data source for the associated control has changed. - base method connects the associated control that is derived from the object to the current data source and, if that is different from the data source to which the control was connected, updates the design-time markup. The method updates the design-time markup after connecting to the current data source. - - - -## Examples - The following code example overrides the method in a class that inherits from the class. When the data source that is associated with the designer class changes, the method is called and this code sets a variable named `changedDataSource` to `true`. - - This code example is part of a larger example provided for the class. - + base method connects the associated control that is derived from the object to the current data source and, if that is different from the data source to which the control was connected, updates the design-time markup. The method updates the design-time markup after connecting to the current data source. + + + +## Examples + The following code example overrides the method in a class that inherits from the class. When the data source that is associated with the designer class changes, the method is called and this code sets a variable named `changedDataSource` to `true`. + + This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ListControlDesigner_Samples/CS/SimpleRadioButtonListDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet4"::: + ]]> @@ -602,21 +602,21 @@ Handles changes made to the component. This includes changes made in the propert A that indicates whether the design-time markup is to be unconditionally updated. This parameter is ignored. Called when the data source for the associated control has changed. - base method connects the associated control that is derived from the class to the current data source and, if that is different from the data source to which the control was connected, updates the design-time markup. The method of the designer unconditionally updates the design-time markup after connecting to the current data source. The value of `forceUpdateView` is ignored. - - - -## Examples - The following code example overrides the method in a class that inherits from the class. When the data source that is associated with the designer class changes, the is called and this code sets a variable named `changedDataSource` to `true`. - - This code example is part of a larger example provided for the class. - + base method connects the associated control that is derived from the class to the current data source and, if that is different from the data source to which the control was connected, updates the design-time markup. The method of the designer unconditionally updates the design-time markup after connecting to the current data source. The value of `forceUpdateView` is ignored. + + + +## Examples + The following code example overrides the method in a class that inherits from the class. When the data source that is associated with the designer class changes, the is called and this code sets a variable named `changedDataSource` to `true`. + + This code example is part of a larger example provided for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ListControlDesigner_Samples/CS/SimpleRadioButtonListDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ListControlDesigner_Samples/VB/simpleradiobuttonlistdesigner.vb" id="Snippet4"::: + ]]> @@ -653,13 +653,13 @@ Handles changes made to the component. This includes changes made in the propert A collection implementing the of the added or shadowed properties to expose for the associated control at design time. Used by the designer to remove additional properties from or add properties to the display in the **Properties** grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. - - For controls that are derived from the object, the adds the attribute to the and properties of the associated control. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. + + For controls that are derived from the object, the adds the attribute to the and properties of the associated control. + ]]> @@ -697,11 +697,11 @@ Handles changes made to the component. This includes changes made in the propert Gets a value that indicates whether the associated control should render its default action lists. Always returns . - property returns `false` so that a data source dropdown is not displayed with the **Choose Data Source** menu item in the **Common Tasks** context menu. Instead, this menu item displays the **Choose Data Source** dialog box, which allows the user to select a and the and properties. - + property returns `false` so that a data source dropdown is not displayed with the **Choose Data Source** menu item in the **Common Tasks** context menu. Instead, this menu item displays the **Choose Data Source** dialog box, which allows the user to select a and the and properties. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/ListViewDesigner.xml b/xml/System.Web.UI.Design.WebControls/ListViewDesigner.xml index cbdda1e3012..2a49b7752e2 100644 --- a/xml/System.Web.UI.Design.WebControls/ListViewDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/ListViewDesigner.xml @@ -17,27 +17,27 @@ Provides design-time support in a visual designer for the control. - control markup is parsed. A design-time version of the control is then created on the design surface. When you switch to source view, the design-time control is persisted as the markup for the Web page. - - The properties of the class provide the following functionality: - -- The property returns a list of items that are used to create a smart tag panel. - -- The property returns the number of records that the control displays on the design surface. - -- The property always returns `true`, which indicates that the designer creates a temporary copy of the associated to generate the design-time markup. - - The methods of the class provide the following functionality: - -- The and methods return the HTML markup that is used to render the associated control at design time. - -- The and methods provide support for editable regions at design time. - -- The method prepares the designer to view, edit, and design the associated control. - + control markup is parsed. A design-time version of the control is then created on the design surface. When you switch to source view, the design-time control is persisted as the markup for the Web page. + + The properties of the class provide the following functionality: + +- The property returns a list of items that are used to create a smart tag panel. + +- The property returns the number of records that the control displays on the design surface. + +- The property always returns `true`, which indicates that the designer creates a temporary copy of the associated to generate the design-time markup. + + The methods of the class provide the following functionality: + +- The and methods return the HTML markup that is used to render the associated control at design time. + +- The and methods provide support for editable regions at design time. + +- The method prepares the designer to view, edit, and design the associated control. + ]]> @@ -61,11 +61,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -128,11 +128,11 @@ Generates the HTML markup that is used to render the associated control at design time. The HTML markup that is used to render the associated control at design time. - control ( and ) are not defined, the method calls the method to generate the HTML markup. - + control ( and ) are not defined, the method calls the method to generate the HTML markup. + ]]> @@ -194,11 +194,11 @@ Returns the content for the specified editable region of the design-time view of the associated control. The HTML markup for the region. - method overrides the default implementation to support region-based editing on the design surface and to return the content for a specified region. - + method overrides the default implementation to support region-based editing on the design surface and to return the content for a specified region. + ]]> @@ -226,11 +226,11 @@ Generates the HTML markup that represents a control at design time that has no visual representation at run time. The HTML markup that represents a control at design time. - method is used by the designer to render the control at design time if the two required templates for the control ( and ) are not defined. The method calls the method to create a placeholder that displays the type and the ID of the control, and additional instructions for the user. - + method is used by the designer to render the control at design time if the two required templates for the control ( and ) are not defined. The method calls the method to create a placeholder that displays the type and the ID of the control, and additional instructions for the user. + ]]> @@ -262,13 +262,13 @@ The control that is being designed. Initializes the control designer and loads the specified control. - method when it is ready to use the designer to render the control. The method and its base methods configure properties and connect to events that are required for the designer. - - The `component` parameter is the control that is associated with this designer, or a copy of the control. - + method when it is ready to use the designer to render the control. The method and its base methods configure properties and connect to events that are required for the designer. + + The `component` parameter is the control that is associated with this designer, or a copy of the control. + ]]> @@ -300,11 +300,11 @@ The event data. Occurs when the associated control changes. - method overrides its base implementation to ignore change notifications while persisting a template's content in the page markup. - + method overrides its base implementation to ignore change notifications while persisting a template's content in the page markup. + ]]> @@ -331,11 +331,11 @@ Prevents the control from updating when the data source schema is refreshed in the HTML designer. - method notifies control designer object for the control that is bound to the associated data source that the fields in the schema have changed. When this method is called, it prevents the control from updating itself. - + method notifies control designer object for the control that is bound to the associated data source that the fields in the schema have changed. When this method is called, it prevents the control from updating itself. + ]]> @@ -360,11 +360,11 @@ Gets the number of records that the control displays on the design surface. The number of records that the control displays on the design surface. - property always returns 21. This causes 21 records to be displayed in the design surface for the control. An exception is if there is a control inside the template and the property is set to a value less than 21. In that case, the number of records to display is the value of the property. The maximum number of records that the control will display on the designer surface is 21 records. - + property always returns 21. This causes 21 records to be displayed in the design surface for the control. An exception is if there is a control inside the template and the property is set to a value less than 21. In that case, the number of records to display is the value of the property. The maximum number of records that the control will display on the designer surface is 21 records. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/LoginDesigner.xml b/xml/System.Web.UI.Design.WebControls/LoginDesigner.xml index d9ed8fa691a..251a949811f 100644 --- a/xml/System.Web.UI.Design.WebControls/LoginDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/LoginDesigner.xml @@ -17,49 +17,49 @@ Provides design-time support in a visual designer for the Web-server control. - control displays a user interface that allows a user to log on to the host Web site. - - In a visual designer, when you switch from Source to Design view, the markup source code that describes the control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class provides design-time support for the control. - - The class properties provide the following functionality: - -- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. - -- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. - -- The property returns a collection of template groups for the fields of the associated control and the top-level template. - -- The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. - - The class methods provide the following functionality: - -- The method returns the markup that is used to render the associated at design time. - -- The method returns a serialized copy of the template for the associated . - -- The method provides the markup that is used to render the associated at design time when an error has occurred. - -- The method prepares the designer to view, edit, and design the associated . - -- The method is used to remove properties from, add additional properties to, or shadow properties of the associated . - -- The method sets a region of the associated from a serialized copy of a control template. - - - -## Examples - The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. - - The example derives the `MyLogin` control from the . The `MyLogin` is a copy of the control. The example also derives the `MyLoginDesigner` class from the and applies a attribute for the `MyLoginDesigner` on the `MyLogin` control. - - The `MyLoginDesigner` overrides the method to make the property visible in the **Properties** grid at design time. It overrides the method to draw a blue, dashed border around the control to make its extent more visible, if the property of the `MyLogin` control is the or value. It overrides the method to generate the markup for a placeholder that includes the error message rendered in red, bold text. - + control displays a user interface that allows a user to log on to the host Web site. + + In a visual designer, when you switch from Source to Design view, the markup source code that describes the control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class provides design-time support for the control. + + The class properties provide the following functionality: + +- The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. + +- The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. + +- The property returns a collection of template groups for the fields of the associated control and the top-level template. + +- The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. + + The class methods provide the following functionality: + +- The method returns the markup that is used to render the associated at design time. + +- The method returns a serialized copy of the template for the associated . + +- The method provides the markup that is used to render the associated at design time when an error has occurred. + +- The method prepares the designer to view, edit, and design the associated . + +- The method is used to remove properties from, add additional properties to, or shadow properties of the associated . + +- The method sets a region of the associated from a serialized copy of a control template. + + + +## Examples + The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. + + The example derives the `MyLogin` control from the . The `MyLogin` is a copy of the control. The example also derives the `MyLoginDesigner` class from the and applies a attribute for the `MyLoginDesigner` on the `MyLogin` control. + + The `MyLoginDesigner` overrides the method to make the property visible in the **Properties** grid at design time. It overrides the method to draw a blue, dashed border around the control to make its extent more visible, if the property of the `MyLogin` control is the or value. It overrides the method to generate the markup for a placeholder that includes the error message rendered in red, bold text. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/CS/LoginDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet1"::: + ]]> @@ -95,11 +95,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -129,11 +129,11 @@ Gets the designer action-list collection for this designer. The associated with this designer. - property creates a object for the class, adds it to the object that is obtained from the base property, and then returns the . - + property creates a object for the class, adds it to the object that is obtained from the base property, and then returns the . + ]]> @@ -163,11 +163,11 @@ if the control allows resizing; otherwise, . - property is set to `false`, the control does not allow resizing. - + property is set to `false`, the control does not allow resizing. + ]]> @@ -192,11 +192,11 @@ Gets the collection of predefined formatting schemes to display in the **Auto Format** dialog box. A that contains the predefined schemes for the . - object is populated from an XML-encoded member of an internal class. - + object is populated from an XML-encoded member of an internal class. + ]]> @@ -228,19 +228,19 @@ Gets the markup that is used to render the associated control at design time and populates a collection of designer regions. A string containing the markup used to render the at design time. - method creates an object for the property of the associated control and adds it to the object that is referenced by the `regions` parameter. The method uses the base method to generate the markup for the design-time rendering of the control. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the control at design time. The example draws a blue, dashed border around the control to make its extent more visible, if the property of the control is the or value. - + method creates an object for the property of the associated control and adds it to the object that is referenced by the `regions` parameter. The method uses the base method to generate the markup for the design-time rendering of the control. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the control at design time. The example draws a blue, dashed border around the control to make its extent more visible, if the property of the control is the or value. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/CS/LoginDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet4"::: + ]]> @@ -277,15 +277,15 @@ Returns a serialized copy of the template that is used to render the associated control at design time. A string containing a serialized copy of the template used to render the associated at design time. - method creates a copy of the object of the associated control in the control container and returns a serialized copy. - - The serialized template can be restored to a part of the control using the method. - - The `region` parameter is not used by the . - + method creates a copy of the object of the associated control in the control container and returns a serialized copy. + + The serialized template can be restored to a part of the control using the method. + + The `region` parameter is not used by the . + ]]> @@ -320,19 +320,19 @@ Provides the markup that is used to render the associated control at design time when an error has occurred. A string that contains the markup used to render the associated at design time after an error has occurred. - control renders contains the type name, the control name, and messages announcing and describing the error. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the control at design time. The example generates the markup for a placeholder that includes the error message rendered in red, bold text. - + control renders contains the type name, the control name, and messages announcing and describing the error. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the control at design time. The example generates the markup for a placeholder that includes the error message rendered in red, bold text. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/CS/LoginDesigner.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet2"::: + ]]> @@ -362,13 +362,13 @@ A , that implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control. The method and its base methods configure properties and set up events that are necessary for the operation of the designer. - - The `component` parameter is the control that is associated with this designer or a copy of the control. - + method when it is ready to use the designer to render the control. The method and its base methods configure properties and set up events that are necessary for the operation of the designer. + + The `component` parameter is the control that is associated with this designer or a copy of the control. + ]]> @@ -401,21 +401,21 @@ A collection implementing the of the added and shadowed properties. Used by the designer to remove properties from or add additional properties to the display in the **Properties** grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. - - If a property has been defined for the control, the sets the attribute of properties that do not apply when templated to `false` so those properties do not appear in the **Properties** grid. - - - -## Examples - The following code sample creates a class derived from , and overrides the method to change the **Properties** grid of a control at design time. The example makes the property visible in the **Properties** grid. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. + + If a property has been defined for the control, the sets the attribute of properties that do not apply when templated to `false` so those properties do not appear in the **Properties** grid. + + + +## Examples + The following code sample creates a class derived from , and overrides the method to change the **Properties** grid of a control at design time. The example makes the property visible in the **Properties** grid. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/CS/LoginDesigner.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet3"::: + ]]> @@ -448,11 +448,11 @@ if the control uses an outer table container to apply inline CSS style rules; otherwise, . The default is . - control uses an outer table container to apply inline style rule in the markup. You can remove the outer table container by setting this property to `true`. Removing the outer table gives you greater flexibility in how you apply CSS rules to the markup that is rendered by the control. - + control uses an outer table container to apply inline style rule in the markup. You can remove the outer table container by setting this property to `true`. Removing the outer table gives you greater flexibility in how you apply CSS rules to the markup that is rendered by the control. + ]]> @@ -482,13 +482,13 @@ A string that contains a serialized template for the associated control. Sets a region of the associated control from a serialized copy of a control template. - method parses a serialized template for the associated control that is specified by the `content` parameter, and then uses the template to update the region of the control that is specified by the property of the `region` parameter. - - The property of the control can be serialized using the method. - + method parses a serialized template for the associated control that is specified by the `content` parameter, and then uses the template to update the region of the control that is specified by the property of the `region` parameter. + + The property of the control can be serialized using the method. + ]]> @@ -518,11 +518,11 @@ Gets a collection of template groups for the fields of the associated control. A containing an element for each templated field in the . - property gets a object from the base property, and then adds a object that contains a single object for the layout template of the associated control to the . The property returns this to the caller. - + property gets a object from the base property, and then adds a object that contains a single object for the layout template of the associated control to the . The property returns this to the caller. + ]]> @@ -552,13 +552,13 @@ Gets a value indicating whether the designer should use a temporary copy rather than the actual control associated with the designer to generate the design-time markup. Always . - property is always `true`, the designer property returns a copy of the associated control to generate the design-time markup. The property creates the copy by persisting the actual control, then parsing the persisted control string. The copied control does not affect any persistence for the . - - If the property has been overridden to return `false`, the designer uses the associated itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. - + property is always `true`, the designer property returns a copy of the associated control to generate the design-time markup. The property creates the copy by persisting the actual control, then parsing the persisted control string. The copied control does not affect any persistence for the . + + If the property has been overridden to return `false`, the designer uses the associated itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/LoginViewDesigner.xml b/xml/System.Web.UI.Design.WebControls/LoginViewDesigner.xml index e5284102669..67eba8dcf5e 100644 --- a/xml/System.Web.UI.Design.WebControls/LoginViewDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/LoginViewDesigner.xml @@ -17,45 +17,45 @@ Provides design-time support in a visual designer for the Web server control. - control renders one of its templates, determined by whether a user is logged on to the host Web site, and the roles that contain the logged-on user account. - - In a visual designer, when you switch from Source to Design view, the markup source code that describes the control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class provides design-time support for the control. - - The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. The property returns a collection of template groups for the templates of the associated control. The property always returns `true`, indicating that the designer creates a temporary copy of the associated control to generate the design-time markup. - - The class methods provide the following functionality: - -- The methods return the markup that is used to render the associated control at design time. The method gets the markup that renders a placeholder for the associated control at design time when the current template is not defined. The method provides the markup that renders the associated control at design time when an error has occurred. - -- The method returns a serialized copy of the current template for the associated control. The method sets a region of the associated control from a serialized copy of a control template. - -- The method prepares the designer to view, edit, and design the associated control. The method is called when there is a change to the associated control. The method is used to remove properties from, add additional properties to, or shadow properties of the associated control. - - - -## Examples - The following code example shows how to extend the class to change the appearance and behavior of controls that are derived from the control at design time. - - The example derives the `MyLoginView` control from the . The `MyLoginView` is a copy of the control. The example also derives the `MyLoginViewDesigner` class from the class and applies a attribute for the `MyLoginViewDesigner` on the `MyLoginView` control. - - The `MyLoginViewDesigner` control overrides the following members: - -- The method to make the property visible in the **Properties** grid at design time. - -- The method to draw an orange border around the control to make its extent more visible. - -- The method to generate the markup for a placeholder that includes the error message, which is rendered in red, bold text. - -- The method to generate the markup for a placeholder that contains the names of the role groups that are defined for the control. - -- The method to throw an exception, if the associated control is not a `MyLoginView` object. - + control renders one of its templates, determined by whether a user is logged on to the host Web site, and the roles that contain the logged-on user account. + + In a visual designer, when you switch from Source to Design view, the markup source code that describes the control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class provides design-time support for the control. + + The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. The property returns a collection of template groups for the templates of the associated control. The property always returns `true`, indicating that the designer creates a temporary copy of the associated control to generate the design-time markup. + + The class methods provide the following functionality: + +- The methods return the markup that is used to render the associated control at design time. The method gets the markup that renders a placeholder for the associated control at design time when the current template is not defined. The method provides the markup that renders the associated control at design time when an error has occurred. + +- The method returns a serialized copy of the current template for the associated control. The method sets a region of the associated control from a serialized copy of a control template. + +- The method prepares the designer to view, edit, and design the associated control. The method is called when there is a change to the associated control. The method is used to remove properties from, add additional properties to, or shadow properties of the associated control. + + + +## Examples + The following code example shows how to extend the class to change the appearance and behavior of controls that are derived from the control at design time. + + The example derives the `MyLoginView` control from the . The `MyLoginView` is a copy of the control. The example also derives the `MyLoginViewDesigner` class from the class and applies a attribute for the `MyLoginViewDesigner` on the `MyLoginView` control. + + The `MyLoginViewDesigner` control overrides the following members: + +- The method to make the property visible in the **Properties** grid at design time. + +- The method to draw an orange border around the control to make its extent more visible. + +- The method to generate the markup for a placeholder that includes the error message, which is rendered in red, bold text. + +- The method to generate the markup for a placeholder that contains the names of the role groups that are defined for the control. + +- The method to throw an exception, if the associated control is not a `MyLoginView` object. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/CS/LoginViewDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet1"::: + ]]> @@ -89,11 +89,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -122,11 +122,11 @@ Gets the designer action list collection for this designer. The associated with this designer. - property creates a object for the class, adds it to the that is obtained from the base property, and then returns the . - + property creates a object for the class, adds it to the that is obtained from the base property, and then returns the . + ]]> @@ -166,19 +166,19 @@ Gets the markup that is used to render the associated control at design time. A string containing the markup used to render the at design time. - method sets the template index of the associated control to the current design-time index, and then causes the associated control to recreate and data bind its child controls, if necessary. Next, the calls the base method to generate the markup. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example draws an orange border around the control to make its extent more visible. - + method sets the template index of the associated control to the current design-time index, and then causes the associated control to recreate and data bind its child controls, if necessary. Next, the calls the base method to generate the markup. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example draws an orange border around the control to make its extent more visible. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/CS/LoginViewDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet4"::: + ]]> @@ -212,19 +212,19 @@ Gets the markup that is used to render the associated control at design time and populates a collection of designer regions. A string containing the markup used to render the at design time. - method creates an object for a template editing area on the visual designer surface, and then initializes it as a template. If no templates are defined, a string is displayed that prompts you to click to begin editing. A predefined constant is used to generate the returned markup. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example draws an orange border around the control to make its extent more visible. - + method creates an object for a template editing area on the visual designer surface, and then initializes it as a template. If no templates are defined, a string is displayed that prompts you to click to begin editing. A predefined constant is used to generate the returned markup. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example draws an orange border around the control to make its extent more visible. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/CS/LoginViewDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet4"::: + ]]> @@ -259,13 +259,13 @@ Returns a serialized copy of the current template that is used to render the associated control at design time. A string containing a serialized copy of the template used to render the associated at design time. - interface can be obtained from the `region` parameter, the method returns the persisted template. Otherwise, it calls the base method to generate the content. - - The serialized template can be restored to the control by using the method. - + interface can be obtained from the `region` parameter, the method returns the persisted template. Otherwise, it calls the base method to generate the content. + + The serialized template can be restored to the control by using the method. + ]]> @@ -297,19 +297,19 @@ Gets the markup that renders a placeholder for the associated control at design time when the current template is not defined. A string containing markup text that renders to a placeholder on the design surface. - method first formats a string message that specifies the name of the current template of the associated control and also specifies that the template is empty. Then the generates the markup for a placeholder containing that message. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes the names of all the objects that are defined for the associated control. - + method first formats a string message that specifies the name of the current template of the associated control and also specifies that the template is empty. Then the generates the markup for a placeholder containing that message. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes the names of all the objects that are defined for the associated control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/CS/LoginViewDesigner.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet5"::: + ]]> @@ -341,19 +341,19 @@ Provides the markup that renders the associated control at design time when an error has occurred. A string that contains the markup used to render the associated at design time after an error has occurred. - control renders as a panel that contains the type name, the control name, and messages announcing and describing the error. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes the error message, which is rendered in red, bold text. - + control renders as a panel that contains the type name, the control name, and messages announcing and describing the error. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes the error message, which is rendered in red, bold text. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/CS/LoginViewDesigner.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet2"::: + ]]> @@ -383,21 +383,21 @@ A , which implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. - - The `component` parameter is the control that is associated with this designer or a copy of the control. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the behavior of a control that is derived from the class at design time. The example throws an , if the associated control is not a `MyLoginView` object. - + method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. + + The `component` parameter is the control that is associated with this designer or a copy of the control. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the behavior of a control that is derived from the class at design time. The example throws an , if the associated control is not a `MyLoginView` object. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/CS/LoginViewDesigner.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet6"::: + ]]> @@ -434,13 +434,13 @@ A that contains the event data. Called when there is a change to the control that is associated with this designer. - method is called when the event of the associated control executes. Typically, this is in response to a property change on the control (for example, a **Properties** grid change). If the control template is changed, the **Properties** grid is refreshed. - - The verifies that the current template index is valid, and then calls the base method. - + method is called when the event of the associated control executes. Typically, this is in response to a property change on the control (for example, a **Properties** grid change). If the control template is changed, the **Properties** grid is refreshed. + + The verifies that the current template index is valid, and then calls the base method. + ]]> @@ -471,21 +471,21 @@ A collection implementing the of the added or shadowed properties. Used by the designer to remove properties from or add properties to the display in the **Properties** grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. - - The method applies the attribute of the property so that it does not appear in the **Properties** grid. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the **Properties** grid of a control that is derived from the class at design time. The example makes the property visible in the **Properties** grid. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. + + The method applies the attribute of the property so that it does not appear in the **Properties** grid. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the **Properties** grid of a control that is derived from the class at design time. The example makes the property visible in the **Properties** grid. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/CS/LoginViewDesigner.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginViewDesigner/VB/LoginViewDesigner.vb" id="Snippet3"::: + ]]> @@ -523,13 +523,13 @@ A string that contains a serialized template for the associated control. Sets a region of the associated control from a serialized copy of a control template. - method parses a serialized template for the associated control that is specified by the `content` parameter, and then uses the template to update the region of the control that is specified by the property of the `region` parameter. - - The current template of the control can be serialized using the method. - + method parses a serialized template for the associated control that is specified by the `content` parameter, and then uses the template to update the region of the control that is specified by the property of the `region` parameter. + + The current template of the control can be serialized using the method. + ]]> @@ -559,11 +559,11 @@ Gets a collection of template groups for the fields of the associated control. A containing an element for each template in the control. - property gets a object from the base property, and then adds objects that contain a single object for the anonymous template (which corresponds to no user logged on), for the logged-on template, and for each element in the collection of the associated control to the . The returns this to the caller. - + property gets a object from the base property, and then adds objects that contain a single object for the anonymous template (which corresponds to no user logged on), for the logged-on template, and for each element in the collection of the associated control to the . The returns this to the caller. + ]]> @@ -594,13 +594,13 @@ Gets a value indicating whether the designer should use a temporary copy rather than the actual control that is associated with the designer to generate the design-time markup. Always . - property is always `true`, the designer property returns a copy of the associated control to generate the design-time markup. The property creates the copy by persisting the actual control, then parsing the persisted control string. The copied control does not affect any persistence for the actual . - - If the property has been overridden to return `false`, the designer will use the associated control itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. - + property is always `true`, the designer property returns a copy of the associated control to generate the design-time markup. The property creates the copy by persisting the actual control, then parsing the persisted control string. The copied control does not affect any persistence for the actual . + + If the property has been overridden to return `false`, the designer will use the associated control itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/MenuDesigner.xml b/xml/System.Web.UI.Design.WebControls/MenuDesigner.xml index 904172d318e..29afb29135b 100644 --- a/xml/System.Web.UI.Design.WebControls/MenuDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/MenuDesigner.xml @@ -21,45 +21,45 @@ Provides design-time support in a visual designer for the control. - class provides a hierarchical menu Web server control. - - In a visual designer, when you switch from Source to Design view, the markup source code that describes the associated control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to markup and added to the existing markup for the Web page. The class provides design-time support for controls in a visual designer. - - The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. - - The property returns a collection of template groups for the templates of the associated control. The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. - - The class methods provide the following functionality: - -- The method prepares the designer to view, edit, and design the associated control. The method returns the markup that is used to render the associated at design time. - -- The method gets the markup that renders a placeholder for the associated control at design time when no markup is otherwise available. The method provides the markup that renders the associated control at design time when an error has occurred. - -- The method binds the associated control to the design-time data source. The method constructs a sample data source that can be used at design time for the associated control. - - - -## Examples - The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. - - The example derives the `MyMenu` class from the . The `MyMenu` class is a copy of the . The example also derives the `MyMenuDesigner` class from the class, and then applies a attribute for the `MyMenuDesigner` on the `MyMenu` class. - - `The MyMenuDesigner` overrides the following members: - -- The method to draw an orange, dotted border around the control to make its extent more visible. - -- The method to generate the markup for a placeholder that includes the error message, which is rendered in red, bold text. - -- The to generate the markup for a placeholder that contains a message indicating that no menu items are defined. - -- The method to throw an exception, if the associated control is not a `MyMenu` object. - + class provides a hierarchical menu Web server control. + + In a visual designer, when you switch from Source to Design view, the markup source code that describes the associated control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to markup and added to the existing markup for the Web page. The class provides design-time support for controls in a visual designer. + + The property returns a object, which typically contains an object that is derived from the class for each level in the inheritance tree of the designer. The property returns a collection of formatting schemes for display in the **Auto Format** dialog box. + + The property returns a collection of template groups for the templates of the associated control. The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. + + The class methods provide the following functionality: + +- The method prepares the designer to view, edit, and design the associated control. The method returns the markup that is used to render the associated at design time. + +- The method gets the markup that renders a placeholder for the associated control at design time when no markup is otherwise available. The method provides the markup that renders the associated control at design time when an error has occurred. + +- The method binds the associated control to the design-time data source. The method constructs a sample data source that can be used at design time for the associated control. + + + +## Examples + The following code example shows how to extend the class to change the appearance of controls that are derived from the control at design time. + + The example derives the `MyMenu` class from the . The `MyMenu` class is a copy of the . The example also derives the `MyMenuDesigner` class from the class, and then applies a attribute for the `MyMenuDesigner` on the `MyMenu` class. + + `The MyMenuDesigner` overrides the following members: + +- The method to draw an orange, dotted border around the control to make its extent more visible. + +- The method to generate the markup for a placeholder that includes the error message, which is rendered in red, bold text. + +- The to generate the markup for a placeholder that contains a message indicating that no menu items are defined. + +- The method to throw an exception, if the associated control is not a `MyMenu` object. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/CS/MenuDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet1"::: + ]]> @@ -95,11 +95,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -131,11 +131,11 @@ Gets the designer action list collection for this designer. The associated with this designer. - property creates a object for the class, adds it to the that is obtained from the base property, and then returns the . - + property creates a object for the class, adds it to the that is obtained from the base property, and then returns the . + ]]> @@ -167,11 +167,11 @@ Gets the collection of predefined formatting schemes to display in the **Auto Format** dialog box. A that contains the predefined schemes for the . - object is populated from predefined internal constants. - + object is populated from predefined internal constants. + ]]> @@ -228,19 +228,19 @@ The to bind to the design-time data source. Binds the associated control to the design-time data source. - method clears the property, and then calls the base method: - -- The property is not `null` or an empty string (""). - -- The property is not `null`. - -- The collection contains one or more elements. - - The `dataBoundControl` parameter is the control that is associated with this designer or a copy of that control. - + method clears the property, and then calls the base method: + +- The property is not `null` or an empty string (""). + +- The property is not `null`. + +- The collection contains one or more elements. + + The `dataBoundControl` parameter is the control that is associated with this designer or a copy of that control. + ]]> @@ -272,19 +272,19 @@ Gets the markup that is used to render the associated control at design time. A string containing the markup used to render the at design time. - method calls the method to bind the design-time data source to the associated control, and then the calls the method to cause the control to generate its static-view and dynamic-view markup. The returns the markup for the current view. If the current view is not defined, the calls the base method. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the appearance of a control that is derived from the control at design time. The example draws an orange, dotted border around the control to make its extent more visible, if the property of the control is the or value. - + method calls the method to bind the design-time data source to the associated control, and then the calls the method to cause the control to generate its static-view and dynamic-view markup. The returns the markup for the current view. If the current view is not defined, the calls the base method. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the appearance of a control that is derived from the control at design time. The example draws an orange, dotted border around the control to make its extent more visible, if the property of the control is the or value. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/CS/MenuDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet4"::: + ]]> @@ -315,19 +315,19 @@ Gets the markup that renders a placeholder for the associated control at design time when no markup is otherwise available. A string containing markup text that renders to a placeholder on the design surface. - method generates the markup for a placeholder that specifies the control name and a message instructing you to use the collection editor to add items. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes a message indicating that no menu items are defined for the associated control. - + method generates the markup for a placeholder that specifies the control name and a message instructing you to use the collection editor to add items. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes a message indicating that no menu items are defined for the associated control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/CS/MenuDesigner.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet5"::: + ]]> @@ -360,19 +360,19 @@ Provides the markup that renders the associated control at design time when an error has occurred. A string that contains the markup used to render the associated at design time after an error has occurred. - method generates markup that renders the error design-time control as a placeholder that contains the type name, the control name, and messages describing the error. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes the error message, which is rendered in red, bold text. - + method generates markup that renders the error design-time control as a placeholder that contains the type name, the control name, and messages describing the error. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the appearance of a control that is derived from the class at design time. The example generates the markup for a placeholder that includes the error message, which is rendered in red, bold text. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/CS/MenuDesigner.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet2"::: + ]]> @@ -402,11 +402,11 @@ Constructs a sample data source to use at design time for the associated control. An object implementing the to use as a data source for the associated . - method has several root menu items with empty paths. This sample data source is used at design time if no menu items are defined for the associated control and if the menu cannot be bound to a data source. - + method has several root menu items with empty paths. This sample data source is used at design time if no menu items are defined for the associated control and if the menu cannot be bound to a data source. + ]]> @@ -437,21 +437,21 @@ A , which implements the interface. Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control. The method and its base methods configure properties and set up events that are necessary for the operation of the designer. - - The `component` parameter is the control that is associated with this designer or a copy of that control. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the behavior of a control that is derived from the class at design time. The example throws an exception, if the associated control is not a `MyMenu` object. - + method when it is ready to use the designer to render the control. The method and its base methods configure properties and set up events that are necessary for the operation of the designer. + + The `component` parameter is the control that is associated with this designer or a copy of that control. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class. The overridden method changes the behavior of a control that is derived from the class at design time. The example throws an exception, if the associated control is not a `MyMenu` object. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/CS/MenuDesigner.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.MenuDesigner/VB/MenuDesigner.vb" id="Snippet6"::: + ]]> *component* is not a or of a class derived from . @@ -486,11 +486,11 @@ If , does not display error messages when exceptions occur during processing; otherwise, exception messages are displayed. Refreshes the schema of the data source view for the associated control. - method will be called by the design host only if the property is true. - + method will be called by the design host only if the property is true. + ]]> @@ -553,11 +553,11 @@ , if the schema can be refreshed; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -598,11 +598,11 @@ to indicate that error messages should not be displayed when exceptions occur during processing; otherwise, . For a description of this member, see the method. - instance is cast to an interface. - + instance is cast to an interface. + ]]> Introduction to ASP.NET Control Designers @@ -638,11 +638,11 @@ Gets the current schema object for the designer. For a description of this member, see the property. The current schema object for the designer. - instance is cast to an interface. - + instance is cast to an interface. + ]]> Introduction to ASP.NET Control Designers @@ -669,11 +669,11 @@ Gets a collection of template groups for the templates of the associated control. A containing an element for each template in the . - property gets a object from the base property. It then adds to the a object named "`ItemTemplates`" that contains two objects named "StaticItemTemplate" and "DynamicItemTemplate". The property returns this to the caller. - + property gets a object from the base property. It then adds to the a object named "`ItemTemplates`" that contains two objects named "StaticItemTemplate" and "DynamicItemTemplate". The property returns this to the caller. + ]]> @@ -704,13 +704,13 @@ Gets a value indicating whether the designer should use a copy of the associated control or use the control itself to generate the design-time markup. Always . - property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the object. - - If the property has been overridden to return `false`, the designer uses the associated object itself to generate the design-time markup, and design-time changes to the control are persisted to the page markup source. - + property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the object. + + If the property has been overridden to return `false`, the designer uses the associated object itself to generate the design-time markup, and design-time changes to the control are persisted to the page markup source. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/ObjectDataSourceDesigner.xml b/xml/System.Web.UI.Design.WebControls/ObjectDataSourceDesigner.xml index d364ab5a933..689472864f8 100644 --- a/xml/System.Web.UI.Design.WebControls/ObjectDataSourceDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/ObjectDataSourceDesigner.xml @@ -17,37 +17,37 @@ Provides design-time support in a visual designer for the Web server control. - control represents a data source that calls methods of a business object in order to perform the Delete, Insert, Select, and Update database operations. - - In a visual designer, when you switch from Source to Design view, the markup source code that describes the control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class provides design-time support for the control in a visual designer. - - The class members provide the following functionality: - -- The property indicates whether the Configure Data Source wizard can be displayed. The property indicates whether the schema of the associated control can be refreshed at design time. - -- The property specifies the method that performs the Select function. The property specifies the type of the business object that provides the data for the associated control. - -- The method returns a data source view with the specified name. The method returns a list of data source view names for the associated control. The method extracts the metadata for the Select method from the associated business object. - -- The method causes the Configure Data Source wizard to be displayed on the visual designer surface. The method removes properties from, adds additional properties to, or shadows properties of the associated control. - - - -## Examples - The following code example shows how to extend the class to change the appearance and behavior of controls that are derived from the control at design time. - - The example derives the `MyObjectDataSource` control from the . The `MyObjectDataSource` is a copy of the control. The example also derives the `MyObjectDataSourceDesigner` class from the and applies a attribute for the `MyObjectDataSourceDesigner` on the `MyObjectDataSource` control. - - The `MyObjectDataSourceDesigner` overrides the method to make the property visible in the **Properties** grid at design time. - - The `MyObjectDataSourceDesigner` overrides the method to display the and properties in a placeholder, in addition to the control type and ID. - + control represents a data source that calls methods of a business object in order to perform the Delete, Insert, Select, and Update database operations. + + In a visual designer, when you switch from Source to Design view, the markup source code that describes the control is parsed and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to the markup source code and edited into the markup for the Web page. The class provides design-time support for the control in a visual designer. + + The class members provide the following functionality: + +- The property indicates whether the Configure Data Source wizard can be displayed. The property indicates whether the schema of the associated control can be refreshed at design time. + +- The property specifies the method that performs the Select function. The property specifies the type of the business object that provides the data for the associated control. + +- The method returns a data source view with the specified name. The method returns a list of data source view names for the associated control. The method extracts the metadata for the Select method from the associated business object. + +- The method causes the Configure Data Source wizard to be displayed on the visual designer surface. The method removes properties from, adds additional properties to, or shadows properties of the associated control. + + + +## Examples + The following code example shows how to extend the class to change the appearance and behavior of controls that are derived from the control at design time. + + The example derives the `MyObjectDataSource` control from the . The `MyObjectDataSource` is a copy of the control. The example also derives the `MyObjectDataSourceDesigner` class from the and applies a attribute for the `MyObjectDataSourceDesigner` on the `MyObjectDataSource` control. + + The `MyObjectDataSourceDesigner` overrides the method to make the property visible in the **Properties** grid at design time. + + The `MyObjectDataSourceDesigner` overrides the method to display the and properties in a placeholder, in addition to the control type and ID. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.ObjectDataSourceDesigner/CS/ObjectDataSourceDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.ObjectDataSourceDesigner/VB/ObjectDataSourceDesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.ObjectDataSourceDesigner/VB/ObjectDataSourceDesigner.vb" id="Snippet1"::: + ]]> @@ -82,11 +82,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the visual designer surface. - + class when it creates the associated control or a copy of that control on the visual designer surface. + ]]> @@ -123,13 +123,13 @@ if the method can be called; otherwise. - method can be called, and the property is `true`, if the property of the associated control implements either the or the interface. - - If the is `true`, the **Configure Data Source** menu item is displayed in the **Common ObjectDataSource Tasks** context menu of the associated control on the visual designer surface. The Configure Data Source wizard is invoked when this menu item is selected. - + method can be called, and the property is `true`, if the property of the associated control implements either the or the interface. + + If the is `true`, the **Configure Data Source** menu item is displayed in the **Common ObjectDataSource Tasks** context menu of the associated control on the visual designer surface. The Configure Data Source wizard is invoked when this menu item is selected. + ]]> @@ -160,13 +160,13 @@ if the can be called; otherwise, . - method can be called, and the property is `true`, if the property of the associated control implements either the or interface, and the and properties both contain a value. - - If the is `true`, the **Refresh Schema** menu item is displayed in the **Common ObjectDataSource Tasks** context menu of the associated control on the visual designer surface. - + method can be called, and the property is `true`, if the property of the associated control implements either the or interface, and the and properties both contain a value. + + If the is `true`, the **Refresh Schema** menu item is displayed in the **Common ObjectDataSource Tasks** context menu of the associated control on the visual designer surface. + ]]> @@ -198,13 +198,13 @@ Displays the Configure Data Source wizard on the visual designer surface. - method initiates a transaction that causes the Configure Data Source wizard to appear on the visual designer surface. - - The method is called when you select the **Configure Data Source** menu item on the **Common ObjectDataSource Tasks** context menu of the associated control. The **Configure Data Source** menu item appears on the context menu when the property is `true`. - + method initiates a transaction that causes the Configure Data Source wizard to appear on the visual designer surface. + + The method is called when you select the **Configure Data Source** menu item on the **Common ObjectDataSource Tasks** context menu of the associated control. The **Configure Data Source** menu item appears on the context menu when the property is `true`. + ]]> @@ -237,11 +237,11 @@ Returns a data source view with the specified name. An with the name specified by . - method returns an object with the specified name. If `viewName` is `null` or an empty string (""), the first view name in the array of names that is returned by is used as the specified name. If no view names are returned by the , generates an unnamed . - + method returns an object with the specified name. If `viewName` is `null` or an empty string (""), the first view name in the array of names that is returned by is used as the specified name. If no view names are returned by the , generates an unnamed . + ]]> @@ -271,11 +271,11 @@ Returns a list of data source view names for the associated control. A string array containing the names of the objects of the associated . - method gets the view names from the names of the schema data tables of the associated control. - + method gets the view names from the names of the schema data tables of the associated control. + ]]> @@ -305,21 +305,21 @@ A collection implementing the of the added and shadowed properties. Used by the designer to remove properties from or add additional properties to the display in the **Properties** grid or to shadow properties of the associated control. - method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. - - The method creates design-time properties to shadow the and properties of the associated control so that they appear in the **Properties** grid of the visual designer. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the **Properties** grid of a control that is derived from the class at design time. The example makes the property visible in the **Properties** grid. - + method to shadow various control properties with corresponding design-time properties that the designer implements, and to add properties to or remove properties from the **Properties** grid. + + The method creates design-time properties to shadow the and properties of the associated control so that they appear in the **Properties** grid of the visual designer. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the **Properties** grid of a control that is derived from the class at design time. The example makes the property visible in the **Properties** grid. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.ObjectDataSourceDesigner/CS/ObjectDataSourceDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.ObjectDataSourceDesigner/VB/ObjectDataSourceDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.ObjectDataSourceDesigner/VB/ObjectDataSourceDesigner.vb" id="Snippet4"::: + ]]> @@ -355,11 +355,11 @@ If , does not display error messages when exceptions occur during processing; otherwise, exception messages are displayed. Extracts the metadata for the Select method from the business object that is specified by the associated control. - method extracts the metadata for the method that is named by the property from the object that is named by the property, which is the type of the business object that provides the data for the associated control. The metadata is saved in a array and in the array of the designer. - + method extracts the metadata for the method that is named by the property from the object that is named by the property, which is the type of the business object that provides the data for the associated control. The metadata is saved in a array and in the array of the designer. + ]]> @@ -391,13 +391,13 @@ Gets or sets the name of the method to execute when the method of the associated control is called. A string containing the name of the method to execute when the is called. - property shadows the property of the associated control. - - When the value of the property is changed, the design-time markup for the associated control is updated. The method is called, if the property is true; otherwise, the event is raised. - + property shadows the property of the associated control. + + When the value of the property is changed, the design-time markup for the associated control is updated. The method is called, if the property is true; otherwise, the event is raised. + ]]> @@ -429,13 +429,13 @@ Gets or sets the name of the type that contains the methods that are specified in the associated control. A string containing the name of the type that contains the methods that perform the Delete, Insert, Select, and Update database operations specified in the associated . - property shadows the property of the associated control. - - When the value of the property is changed, the design-time markup for the associated control is updated. The method is called, if the property is true; otherwise, the event is raised. - + property shadows the property of the associated control. + + When the value of the property is changed, the design-time markup for the associated control is updated. The method is called, if the property is true; otherwise, the event is raised. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/PanelContainerDesigner.xml b/xml/System.Web.UI.Design.WebControls/PanelContainerDesigner.xml index d01bb6bde74..f433e3df39c 100644 --- a/xml/System.Web.UI.Design.WebControls/PanelContainerDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/PanelContainerDesigner.xml @@ -17,37 +17,37 @@ Provides design-time support in a visual designer for the control. - control is used as a container for other controls, especially when controls are generated programmatically. - - In a visual designer, when you switch from Source to Design view, the markup source code that describes the associated control is parsed, and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The class provides design-time support for controls in a visual designer. - - The property gets the caption that appears on the associated control. The property gets the styles of the associated control. - - The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. - - The method prepares the designer to view, edit, and design the associated control. The method sets collection elements to the string representations of various style attributes of the associated control. - - - -## Examples - The following code example shows how to extend the class to change the appearance and behavior of controls that are derived from the control at design time. - - The example derives the `MyPanelContainer` class from the control. The example also derives the `MyPanelContainerDesigner` class from the class and applies a attribute for the `MyPanelContainerDesigner` on the `MyPanelContainer` class. - - The `MyPanelContainerDesigner` overrides the following members: - -- The property to define a design-time border style for the `MyPanelContainer` control. - -- The property to provide a default caption for the `MyPanelContainer` control, if none was defined. - -- The method to throw an exception, if the associated control is not a `MyPanelContainer` object. - + control is used as a container for other controls, especially when controls are generated programmatically. + + In a visual designer, when you switch from Source to Design view, the markup source code that describes the associated control is parsed, and a design-time version of the control is created on the design surface. When you switch back to Source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The class provides design-time support for controls in a visual designer. + + The property gets the caption that appears on the associated control. The property gets the styles of the associated control. + + The property always returns `true`, indicating that the designer creates a temporary copy of the associated to generate the design-time markup. + + The method prepares the designer to view, edit, and design the associated control. The method sets collection elements to the string representations of various style attributes of the associated control. + + + +## Examples + The following code example shows how to extend the class to change the appearance and behavior of controls that are derived from the control at design time. + + The example derives the `MyPanelContainer` class from the control. The example also derives the `MyPanelContainerDesigner` class from the class and applies a attribute for the `MyPanelContainerDesigner` on the `MyPanelContainer` class. + + The `MyPanelContainerDesigner` overrides the following members: + +- The property to define a design-time border style for the `MyPanelContainer` control. + +- The property to provide a default caption for the `MyPanelContainer` control, if none was defined. + +- The method to throw an exception, if the associated control is not a `MyPanelContainer` object. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/CS/PanelContainerDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet1"::: + ]]> @@ -81,11 +81,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the visual designer surface. - + class when it creates the associated control or a copy of that control on the visual designer surface. + ]]> @@ -119,13 +119,13 @@ A collection of style attributes implementing the . Adds string representations of style attributes to a collection to be used in the design-time rendering of the control. - method calls the base method, which adds string representations of style attributes to the `styleAttributes` collection. These attributes are based on the style properties of the associated control. - - The sets the direction of `styleAttribute` to a code indicating left-to-right or right-to-left, based on the value of the property of the associated control. - + method calls the base method, which adds string representations of style attributes to the `styleAttributes` collection. These attributes are based on the style properties of the associated control. + + The sets the direction of `styleAttribute` to a code indicating left-to-right or right-to-left, based on the value of the property of the associated control. + ]]> @@ -155,19 +155,19 @@ Gets the caption that appears on the associated control. A string that contains the panel caption. - property returns the property of the associated control. - - - -## Examples - The following code example shows how to override the property in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example provides a default caption for the associated control, if none was defined. - + property returns the property of the associated control. + + + +## Examples + The following code example shows how to override the property in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example provides a default caption for the associated control, if none was defined. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/CS/PanelContainerDesigner.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet3"::: + ]]> @@ -195,19 +195,19 @@ Gets the styles of the associated control. A object that contains the design-time styles for the associated control. - property is an empty string (""), the property returns an empty object. Otherwise, the property returns a default object that is generated by the base property. - - - -## Examples - The following code example shows how to override the property in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example defines a design-time border style for the associated control. - + property is an empty string (""), the property returns an empty object. Otherwise, the property returns a default object that is generated by the base property. + + + +## Examples + The following code example shows how to override the property in a class that is inherited from the class to change the appearance of a control that is derived from the class at design time. The example defines a design-time border style for the associated control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/CS/PanelContainerDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet4"::: + ]]> @@ -239,21 +239,21 @@ A , which implements an . Prepares the designer to view, edit, and design the associated control. - method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. - - The `component` parameter is the control that is associated with this designer or a copy of the control. - - - -## Examples - The following code example shows how to override the method in a class that is inherited from the class to change the behavior of a control that is derived from the class at design time. The example throws an exception, if the associated control is not a `MyPanelContainer` object. - + method when it is ready to use the designer to render the control. The and its base methods configure properties and set up events that are necessary for the operation of the designer. + + The `component` parameter is the control that is associated with this designer or a copy of the control. + + + +## Examples + The following code example shows how to override the method in a class that is inherited from the class to change the behavior of a control that is derived from the class at design time. The example throws an exception, if the associated control is not a `MyPanelContainer` object. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/CS/PanelContainerDesigner.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.PanelContainerDesigner/VB/PanelContainerDesigner.vb" id="Snippet5"::: + ]]> @@ -286,13 +286,13 @@ Gets a value indicating whether the designer should use a temporary copy rather than the actual control that is associated with the designer to generate the design-time markup. Always . - property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . - - If the property has been overridden to return `false`, the designer will use the associated itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. - + property is always `true`, the designer uses a control that contains a copy of the associated control to generate the design-time markup. The control does not affect any persistence for the . + + If the property has been overridden to return `false`, the designer will use the associated itself to generate the design-time markup, and design-time changes to the control will persist to the page markup source. + ]]> diff --git a/xml/System.Web.UI.Design.WebControls/ValidationSummaryDesigner.xml b/xml/System.Web.UI.Design.WebControls/ValidationSummaryDesigner.xml index eed906e74a9..8d82c142bed 100644 --- a/xml/System.Web.UI.Design.WebControls/ValidationSummaryDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/ValidationSummaryDesigner.xml @@ -22,14 +22,14 @@ Provides design-time support in a visual designer for the control. - control is parsed and a design-time version of the control is created on the design surface. When you switch back to source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The objects provide design-time support for controls in a visual designer. - + control is parsed and a design-time version of the control is created on the design surface. When you switch back to source view, the design-time control is persisted to markup source code and edited into the markup for the Web page. The objects provide design-time support for controls in a visual designer. + > [!NOTE] -> This type is new as of ASP.NET 4. - +> This type is new as of ASP.NET 4. + ]]> ASP.NET Control Designers Overview @@ -56,11 +56,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> ASP.NET Control Designers Overview @@ -111,11 +111,11 @@ A collection that implements a dictionary of the added and shadowed properties. Used by the designer to remove properties from or add properties to the display in the properties grid or to shadow properties of the associated control. - method to shadow control properties with corresponding design-time properties that the designer implements, to add properties to the properties grid, to remove properties from the properties grid, and to change attributes of properties in the properties grid. - + method to shadow control properties with corresponding design-time properties that the designer implements, to add properties to the properties grid, to remove properties from the properties grid, and to change attributes of properties in the properties grid. + ]]> ASP.NET Control Designers Overview diff --git a/xml/System.Web.UI.Design.WebControls/XmlDesigner.xml b/xml/System.Web.UI.Design.WebControls/XmlDesigner.xml index df56fcd4159..f0a1a022f08 100644 --- a/xml/System.Web.UI.Design.WebControls/XmlDesigner.xml +++ b/xml/System.Web.UI.Design.WebControls/XmlDesigner.xml @@ -83,7 +83,7 @@ Call when you are finished using the class. The method leaves the in an unusable state. After calling , you must release all references to the so the garbage collector can reclaim the memory that the was occupying. For more information, see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). > [!NOTE] -> Always call before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. +> Always call before you release your last reference to the . Otherwise, the resources it is using will not be freed until the garbage collector calls the object's `Finalize` method. The method is called by the public `Dispose()` method and the method, if it has been overridden. The `Dispose()` invokes the protected `Dispose(Boolean)` method with `disposing` set to `true`. The `Finalize` specifies the `disposing` parameter as `false`. diff --git a/xml/System.Web.UI.Design/AsyncPostBackTriggerControlIDConverter.xml b/xml/System.Web.UI.Design/AsyncPostBackTriggerControlIDConverter.xml index 5c3e28b7dc9..24b73756231 100644 --- a/xml/System.Web.UI.Design/AsyncPostBackTriggerControlIDConverter.xml +++ b/xml/System.Web.UI.Design/AsyncPostBackTriggerControlIDConverter.xml @@ -17,13 +17,13 @@ Provides a type converter that retrieves a list of control IDs in the current container. - class derives from the class and provides a list of control IDs for display in a property grid control in design-time environments. - - For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). - + class derives from the class and provides a list of control IDs for display in a property grid control in design-time environments. + + For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). + ]]> @@ -50,13 +50,13 @@ Initializes a new instance of the class. - [!NOTE] -> You should never access a type converter directly. Instead, call the appropriate converter by using a object. - +> You should never access a type converter directly. Instead, call the appropriate converter by using a object. + ]]> diff --git a/xml/System.Web.UI.Design/AsyncPostBackTriggerEventNameConverter.xml b/xml/System.Web.UI.Design/AsyncPostBackTriggerEventNameConverter.xml index 85c5b9acccf..ef4a101a911 100644 --- a/xml/System.Web.UI.Design/AsyncPostBackTriggerEventNameConverter.xml +++ b/xml/System.Web.UI.Design/AsyncPostBackTriggerEventNameConverter.xml @@ -17,13 +17,13 @@ Provides a type converter that retrieves a list of events for a control in the current container. - class derives from the class. It provides a list of event names for a control to display in a property editor in a design-time environment. - - For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). - + class derives from the class. It provides a list of event names for a control to display in a property editor in a design-time environment. + + For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). + ]]> @@ -50,13 +50,13 @@ Initializes a new instance of the class. - [!NOTE] -> Never access a type converter directly. Instead, call the appropriate converter by using a object. - +> Never access a type converter directly. Instead, call the appropriate converter by using a object. + ]]> diff --git a/xml/System.Web.UI.Design/ClientScriptItem.xml b/xml/System.Web.UI.Design/ClientScriptItem.xml index 401ef49e36c..697be229350 100644 --- a/xml/System.Web.UI.Design/ClientScriptItem.xml +++ b/xml/System.Web.UI.Design/ClientScriptItem.xml @@ -17,22 +17,22 @@ Represents a client script element in a Web Form or user control at design time. This class cannot be inherited. - class represents a `script` element that is contained in a Web document at design time. A custom control designer implementation can use a object to add client script elements to a Web Form or user control. - - At design time, use the class to set or examine client script elements that are contained in a document, such as a Web form, a Web server control, a content page, or a master page, on the design surface. Retrieve the collection of client script elements that are contained within the Web document by using the method. Add a client script element to the Web document by using the method. - - Typically, a `script` element either contains script statements or specifies an external location for script statements. The `script` element can optionally define the language of the script statements. Use the constructor to initialize the properties for a new script object. Use the properties to examine the `script` object attributes and contents. The property represents the `language` attribute of the `script` element. The property represents the `src` attribute. The property represents the script statements to be executed on the client that are contained in the `script` element. - - Use the class to manage scripts that are to be executed at design-time. - - To manage client script elements at run time, use the class. For more information about using client scripts at run time, see [Client Script in ASP.NET Web Pages](https://learn.microsoft.com/previous-versions/aspnet/3hc29e2a(v=vs.100)). - + class represents a `script` element that is contained in a Web document at design time. A custom control designer implementation can use a object to add client script elements to a Web Form or user control. + + At design time, use the class to set or examine client script elements that are contained in a document, such as a Web form, a Web server control, a content page, or a master page, on the design surface. Retrieve the collection of client script elements that are contained within the Web document by using the method. Add a client script element to the Web document by using the method. + + Typically, a `script` element either contains script statements or specifies an external location for script statements. The `script` element can optionally define the language of the script statements. Use the constructor to initialize the properties for a new script object. Use the properties to examine the `script` object attributes and contents. The property represents the `language` attribute of the `script` element. The property represents the `src` attribute. The property represents the script statements to be executed on the client that are contained in the `script` element. + + Use the class to manage scripts that are to be executed at design-time. + + To manage client script elements at run time, use the class. For more information about using client scripts at run time, see [Client Script in ASP.NET Web Pages](https://learn.microsoft.com/previous-versions/aspnet/3hc29e2a(v=vs.100)). + > [!NOTE] -> The class represents `script` elements at design time that are ultimately parsed and run in the client browser. Because the `script` elements that are generated for the objects are not run on the server, the elements do not contain the `runat="server"` attribute. - +> The class represents `script` elements at design time that are ultimately parsed and run in the client browser. Because the `script` elements that are generated for the objects are not run on the server, the elements do not contain the `runat="server"` attribute. + ]]> @@ -75,27 +75,27 @@ The ID for the element. This argument is required by the design host (for example, Visual Studio 2005). Initializes a new instance of the class using the provided parameters. - object by using either the `text` or `source` parameter (not both). Use `text` to initialize the script using an input string that contains the statements. Alternately, use `source` to initialize a script using a path that contains the script statements. - - You can specify any of the input parameters as `null` or an empty string (""); the corresponding property is set using the input value, and the `script` element is generated without that property. Using `null` or an empty string ("") generates the following results: - -- For `text`, the corresponding `script` element does not contain script statements. - -- For `source`, the `src` attribute is not set in the `script` element. - -- For `language`, the `language` attribute is not set in the `script` element. - - When a client script block does not specify the script language, the client browser determines the language. - -- For `type`, the `type` attribute is not set in the script element. - - When a client script block does not specify the script type, the client browser determines the type. - -- For `id`, the design host (for example, Visual Studio 2005) will throw an . - + object by using either the `text` or `source` parameter (not both). Use `text` to initialize the script using an input string that contains the statements. Alternately, use `source` to initialize a script using a path that contains the script statements. + + You can specify any of the input parameters as `null` or an empty string (""); the corresponding property is set using the input value, and the `script` element is generated without that property. Using `null` or an empty string ("") generates the following results: + +- For `text`, the corresponding `script` element does not contain script statements. + +- For `source`, the `src` attribute is not set in the `script` element. + +- For `language`, the `language` attribute is not set in the `script` element. + + When a client script block does not specify the script language, the client browser determines the language. + +- For `type`, the `type` attribute is not set in the script element. + + When a client script block does not specify the script type, the client browser determines the type. + +- For `id`, the design host (for example, Visual Studio 2005) will throw an . + ]]> @@ -166,13 +166,13 @@ Gets the attribute value for the client script element. The language name specified for the attribute in the element. - property represents the language in which the script statements are written. If the property is `null` or an empty string (""), the `language` attribute is not set in the `script` element. When a client script block does not specify the script language, the client browser determines the language. - - The property is initialized by the constructor. - + property represents the language in which the script statements are written. If the property is `null` or an empty string (""), the `language` attribute is not set in the `script` element. When a client script block does not specify the script language, the client browser determines the language. + + The property is initialized by the constructor. + ]]> @@ -208,15 +208,15 @@ Gets the attribute value for the client script element. The path to the source file specified for the attribute in the element. - property specifies an external source location for the client script contents. Typically, the script statements for a `script` element are specified using either the or property. - - If the property is `null` or an empty string (""), the `src` attribute is not set in the `script` element. - - The property is initialized by the . - + property specifies an external source location for the client script contents. Typically, the script statements for a `script` element are specified using either the or property. + + If the property is `null` or an empty string (""), the `src` attribute is not set in the `script` element. + + The property is initialized by the . + ]]> @@ -252,15 +252,15 @@ Gets the script statements contained in the client script element. The script statements contained in the element. - property represents the statements that are contained in the `script` element. Typically, the script statements for a `script` element are specified using either the or property. - - If the property is `null` or an empty string (""), the `script` element does not contain any script statements. - - The property is initialized by the constructor. - + property represents the statements that are contained in the `script` element. Typically, the script statements for a `script` element are specified using either the or property. + + If the property is `null` or an empty string (""), the `script` element does not contain any script statements. + + The property is initialized by the constructor. + ]]> diff --git a/xml/System.Web.UI.Design/ClientScriptItemCollection.xml b/xml/System.Web.UI.Design/ClientScriptItemCollection.xml index 0a609f00322..6caf088cf1f 100644 --- a/xml/System.Web.UI.Design/ClientScriptItemCollection.xml +++ b/xml/System.Web.UI.Design/ClientScriptItemCollection.xml @@ -17,18 +17,18 @@ Represents a read-only collection of client script blocks that are contained within a Web Form or user control at design time. This class cannot be inherited. - object in the class represents a `script` block that is contained in a document (a Web Form, Web server control, a content page, or a master page) at design time. - - Use the class to set or examine client script elements that are contained in a Web Forms document on the design surface. Retrieve the collection of client script elements that are contained within the Web document by using the method. Add a client script element to the Web document by using the method. - - To add client script elements at run time, use the class. - + object in the class represents a `script` block that is contained in a document (a Web Form, Web server control, a content page, or a master page) at design time. + + Use the class to set or examine client script elements that are contained in a Web Forms document on the design surface. Retrieve the collection of client script elements that are contained within the Web document by using the method. Add a client script element to the Web document by using the method. + + To add client script elements at run time, use the class. + > [!NOTE] -> The class represents script elements at design time that execute on the client. Because the `script` elements that are generated for objects are not run on the server, the elements do not contain the `runat="server"` attribute. - +> The class represents script elements at design time that execute on the client. Because the `script` elements that are generated for objects are not run on the server, the elements do not contain the `runat="server"` attribute. + ]]> @@ -57,13 +57,13 @@ An array of elements used to initialize the collection. Initializes a new instance of the class. - object. Otherwise, the items in the `clientScriptItems` array are used to set the items for the . - - The constructor is typically used in classes that are derived from the class. Visual designers implement the method to return a object for the client script elements in a Web document at design time. - + object. Otherwise, the items in the `clientScriptItems` array are used to set the items for the . + + The constructor is typically used in classes that are derived from the class. Visual designers implement the method to return a object for the client script elements in a Web document at design time. + ]]> diff --git a/xml/System.Web.UI.Design/ContainerControlDesigner.xml b/xml/System.Web.UI.Design/ContainerControlDesigner.xml index 1c0e0eda7d9..a262c2061b2 100644 --- a/xml/System.Web.UI.Design/ContainerControlDesigner.xml +++ b/xml/System.Web.UI.Design/ContainerControlDesigner.xml @@ -17,38 +17,38 @@ Provides designer functionality for controls that contain child controls or properties that can be modified at design time. - class provides a base designer class for controls that can be modified on the design surface. This includes controls that contain child controls or editable inner properties. The provides a single framed region to represent the control, and automatically handles rendering the control at design time. - - Apply the attribute on the associated control to determine the design-time behavior of the . Apply the settings on the associated control as follows: - -- `false` to indicate that the represents the contents of the editable design region as child controls. - -- `true` to indicate that the represents the contents of the editable design region as editable inner properties of the control. - - Control developers can derive and extend a custom designer from one of several base designers depending on the kind of control that is being developed, as defined in the following list: - -- Controls that allow child controls to be added to it at design time can derive from the class. For example, the class is derived from the class and represents a control on the design surface. - -- Controls that have one or more child controls, and might also have an editable designer region where controls can be added at design time, can derive from the class. - -- Controls that require custom design-time processing can derive from the base class. - + class provides a base designer class for controls that can be modified on the design surface. This includes controls that contain child controls or editable inner properties. The provides a single framed region to represent the control, and automatically handles rendering the control at design time. + + Apply the attribute on the associated control to determine the design-time behavior of the . Apply the settings on the associated control as follows: + +- `false` to indicate that the represents the contents of the editable design region as child controls. + +- `true` to indicate that the represents the contents of the editable design region as editable inner properties of the control. + + Control developers can derive and extend a custom designer from one of several base designers depending on the kind of control that is being developed, as defined in the following list: + +- Controls that allow child controls to be added to it at design time can derive from the class. For example, the class is derived from the class and represents a control on the design surface. + +- Controls that have one or more child controls, and might also have an editable designer region where controls can be added at design time, can derive from the class. + +- Controls that require custom design-time processing can derive from the base class. + > [!NOTE] -> The class replaces the obsolete class. - - Use the attribute to associate a custom designer class together with a custom control implementation. For detailed information about how to use control designers with custom controls, see [Walkthrough: Creating a Basic Control Designer for a Web Server Control](https://learn.microsoft.com/previous-versions/aspnet/12yydcke(v=vs.100)). - - - -## Examples - The following code example demonstrates how to derive a designer class from the class. The example defines a simple control that is derived from the class, and then defines an associated designer, which is derived from the class. The derived designer class overrides the and properties to customize the frame that is around the editable region of the control on the design surface. - +> The class replaces the obsolete class. + + Use the attribute to associate a custom designer class together with a custom control implementation. For detailed information about how to use control designers with custom controls, see [Walkthrough: Creating a Basic Control Designer for a Web Server Control](https://learn.microsoft.com/previous-versions/aspnet/12yydcke(v=vs.100)). + + + +## Examples + The following code example demonstrates how to derive a designer class from the class. The example defines a simple control that is derived from the class, and then defines an associated designer, which is derived from the class. The derived designer class overrides the and properties to customize the frame that is around the editable region of the control on the design surface. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleContainerControlDesigner/CS/simplecontainercontrol.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleContainerControlDesigner/VB/simplecontainercontrol.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleContainerControlDesigner/VB/simplecontainercontrol.vb" id="Snippet1"::: + ]]> @@ -102,13 +102,13 @@ A keyed collection of style attributes. Adds the style attributes for the control at design time. - method adds a set of style attributes for the design-time representation of the control. The style attribute values are added to the `styleAttributes` collection, keyed by the style attribute name. For example, you can access the height value in the collection as `styleAttributes["height"]` for C# or `styleAttributes("height")` for Microsoft Visual Basic. - - If the associated control is not derived from the class, the method does not add attribute values to the `styleAttributes` collection. - + method adds a set of style attributes for the design-time representation of the control. The style attribute values are added to the `styleAttributes` collection, keyed by the style attribute name. For example, you can access the height value in the collection as `styleAttributes["height"]` for C# or `styleAttributes("height")` for Microsoft Visual Basic. + + If the associated control is not derived from the class, the method does not add attribute values to the `styleAttributes` collection. + ]]> @@ -136,11 +136,11 @@ , if the control can be resized; otherwise, . - property returns `true`. This indicates that the designer supports resizing of the control on the design surface. - + property returns `true`. This indicates that the designer supports resizing of the control on the design surface. + ]]> @@ -169,13 +169,13 @@ Gets the caption that is displayed for a control at design time. The string used for the control frame caption at design time, if the control has a design-time caption; otherwise, an empty string (""). - string is the caption that is displayed in the frame around the editable region of the control on the design surface. - - The default caption for a frame is the property of the designer instance. This is typically the same as the run-time property of the control. - + string is the caption that is displayed in the frame around the editable region of the control on the design surface. + + The default caption for a frame is the property of the designer instance. This is typically the same as the run-time property of the control. + ]]> @@ -211,11 +211,11 @@ Gets the style that is applied to the control frame at design time. A for the control frame at design time. - property indicates the style properties of the frame around the editable region of the control on the design surface. - + property indicates the style properties of the frame around the editable region of the control on the design surface. + ]]> @@ -246,15 +246,15 @@ Returns the collection of style attributes for the control at design time. A collection of style attributes applied to the control on the design surface. The style attribute names are keys used to access the style attribute values in the . - method returns a collection of style attributes for the design-time representation of the control. - - To examine a style attribute value at design time for a control, use the style attribute name as a key to the returned collection. Style attribute values are stored as strings in the collection. For example, you can access the height value in the collection as `styleAttributes["height"]` for C# or `styleAttributes("height")` for Microsoft Visual Basic. - - If the associated control is not derived from the class, the method returns an empty collection. - + method returns a collection of style attributes for the design-time representation of the control. + + To examine a style attribute value at design time for a control, use the style attribute name as a key to the returned collection. Style attribute values are stored as strings in the collection. For example, you can access the height value in the collection as `styleAttributes["height"]` for C# or `styleAttributes("height")` for Microsoft Visual Basic. + + If the associated control is not derived from the class, the method returns an empty collection. + ]]> @@ -288,13 +288,13 @@ Returns the HTML markup that is used to represent the control at design time. An HTML markup string that represents the control. - method to get the HTML for the control. Child controls that are contained in the editable design region are rendered using their associated control designers. - - The method initializes a new object for the editable region of associated control, and then returns the region through the `regions` collection. - + method to get the HTML for the control. Child controls that are contained in the editable design region are rendered using their associated control designers. + + The method initializes a new object for the editable region of associated control, and then returns the region through the `regions` collection. + ]]> ASP.NET Control Designers Overview @@ -324,11 +324,11 @@ Returns the content for the editable region of the control at design time. The persisted content of the region contained within the . - class implements a single designer region instead of a collection of designer regions. Therefore, the `region` parameter is ignored, and the method returns the content for the single designer region that is contained in the control designer. - + class implements a single designer region instead of a collection of designer regions. Therefore, the `region` parameter is ignored, and the method returns the content for the single designer region that is contained in the control designer. + ]]> @@ -357,11 +357,11 @@ . - method returns `null` to indicate that the class does not have persisted inner content. - + method returns `null` to indicate that the class does not have persisted inner content. + ]]> @@ -414,11 +414,11 @@ Content to assign for the editable design region. Sets the content for the editable region of the control at design time. - class implements a single designer region instead of a collection of designer regions. Therefore, the `region` parameter is ignored, and the method sets the content for the single designer region that is contained in the control designer. - + class implements a single designer region instead of a collection of designer regions. Therefore, the `region` parameter is ignored, and the method sets the content for the single designer region that is contained in the control designer. + ]]> diff --git a/xml/System.Web.UI.Design/ControlDesigner.xml b/xml/System.Web.UI.Design/ControlDesigner.xml index 3ac07f80baa..c3e604263cd 100644 --- a/xml/System.Web.UI.Design/ControlDesigner.xml +++ b/xml/System.Web.UI.Design/ControlDesigner.xml @@ -18,92 +18,92 @@ Provides a base control designer class for extending the design-mode behavior of a Web server control. - class provides a base control designer class that can be inherited from and extended to provide design-time support for a Web server control in a design host, such as Visual Studio 2005. - - The object model for working with design-time rendering is improved over earlier versions, with the following new base classes to provide access to the simplified object model: - -- , which is not new, but has been greatly improved. - -- . - -- . - -## Automatic Formatting - You can create a variety of automatic and pre-defined formats that can simplify the process of page developers who are applying complex style changes to custom Web server controls. For example, the control, which derives from the class, provides many automatic formats from which to choose. To implement and provide automatic formatting in your custom controls, use the following features: - -- The property. - -- The method. - -- The class. - -- The class. - -## Action Lists (Smart Tags) - Action lists are menus of important or widely used tasks that a page developer who uses a control can perform in a design-time user interface (UI), such as Visual Studio 2005. For example, the design-time view of your control could provide a menu of available tasks. This includes a task to format the control automatically. To learn about action lists, start with the following features: - -- The property. - -- The class. - -- The method. - -- The class. - -- The class. - -- The class. - -## Control Designer Regions - Regions are editable areas in the design-time view of a Web server control. This feature offers WYSIWYG-like editing of the template content, inner controls, and properties at design time. You can have the control designer create controls in regions or you can use the Toolbox to drag and drop controls into regions. Regions are managed with the following features: - -- The method. - -- The class. - -- The class. - -- The method. - -- The method. - -## Templates - The model for creating a UI for design-time editing of templated controls, such as the control, has been greatly improved from earlier versions. You can create complex custom controls that include templates for various parts of the control, and your custom control designer can help page developers who are modifying templates with the following features: - -- The property. - -- The property. - -- The class. - -## Design-Time Rendering - The class has the following methods to support design-time rendering of the Web server control. Most of these methods are the same as in earlier versions: - -- The method. - -- The method. - -- The method. - -- The method. - -- The method. - - - -## Examples - The following code example demonstrates how to create a simple designer class that derives from the class. This control designer supports a custom `TextControl` class and provides a command to change the text size of a control at design time. The control designer is associated with the control by specifying the control designer in a object declaration on the `TextControl` class. The key to persisting property changes from the control designer to the HTML markup is found in the `ToggleTextSize` method of the custom `ActionList` class. - - To try the example, add a reference to the System.Design.dll assembly and compile the code. - + class provides a base control designer class that can be inherited from and extended to provide design-time support for a Web server control in a design host, such as Visual Studio 2005. + + The object model for working with design-time rendering is improved over earlier versions, with the following new base classes to provide access to the simplified object model: + +- , which is not new, but has been greatly improved. + +- . + +- . + +## Automatic Formatting + You can create a variety of automatic and pre-defined formats that can simplify the process of page developers who are applying complex style changes to custom Web server controls. For example, the control, which derives from the class, provides many automatic formats from which to choose. To implement and provide automatic formatting in your custom controls, use the following features: + +- The property. + +- The method. + +- The class. + +- The class. + +## Action Lists (Smart Tags) + Action lists are menus of important or widely used tasks that a page developer who uses a control can perform in a design-time user interface (UI), such as Visual Studio 2005. For example, the design-time view of your control could provide a menu of available tasks. This includes a task to format the control automatically. To learn about action lists, start with the following features: + +- The property. + +- The class. + +- The method. + +- The class. + +- The class. + +- The class. + +## Control Designer Regions + Regions are editable areas in the design-time view of a Web server control. This feature offers WYSIWYG-like editing of the template content, inner controls, and properties at design time. You can have the control designer create controls in regions or you can use the Toolbox to drag and drop controls into regions. Regions are managed with the following features: + +- The method. + +- The class. + +- The class. + +- The method. + +- The method. + +## Templates + The model for creating a UI for design-time editing of templated controls, such as the control, has been greatly improved from earlier versions. You can create complex custom controls that include templates for various parts of the control, and your custom control designer can help page developers who are modifying templates with the following features: + +- The property. + +- The property. + +- The class. + +## Design-Time Rendering + The class has the following methods to support design-time rendering of the Web server control. Most of these methods are the same as in earlier versions: + +- The method. + +- The method. + +- The method. + +- The method. + +- The method. + + + +## Examples + The following code example demonstrates how to create a simple designer class that derives from the class. This control designer supports a custom `TextControl` class and provides a command to change the text size of a control at design time. The control designer is associated with the control by specifying the control designer in a object declaration on the `TextControl` class. The key to persisting property changes from the control designer to the HTML markup is found in the `ToggleTextSize` method of the custom `ActionList` class. + + To try the example, add a reference to the System.Design.dll assembly and compile the code. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ControlDesignerSample/cs/TextControlDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlDesignerSample/vb/TextControlDesigner.vb" id="Snippet1"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlDesignerSample/vb/TextControlDesigner.vb" id="Snippet1"::: :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ControlDesignerSample/cs/TextControlDesigner.aspx" id="Snippet8"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlDesignerSample/vb/TextControlDesigner.aspx" id="Snippet8"::: - +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlDesignerSample/vb/TextControlDesigner.aspx" id="Snippet8"::: + ]]> @@ -157,14 +157,14 @@ Gets the action list collection for the control designer. A object that contains the items for the control designer. - and a control, together with properties to set the Text properties on both internal controls, and also the and properties of the control. An associated control designer class creates three commands, each of which sets two properties on the control, and can be rolled back with the undo functionality of the design host. - + and a control, together with properties to set the Text properties on both internal controls, and also the and properties of the control. An associated control designer class creates three commands, each of which sets two properties on the control, and can be rolled back with the undo functionality of the design host. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerInvokeTransactedChange/CS/InvokeTransactedChangeSample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerInvokeTransactedChange/VB/InvokeTransactedChangeSample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerInvokeTransactedChange/VB/InvokeTransactedChangeSample.vb" id="Snippet1"::: + ]]> @@ -203,16 +203,16 @@ , if the control can be resized; otherwise, . - property in a custom control designer class. - - This code example is part of a larger example provided for the property. - + property in a custom control designer class. + + This code example is part of a larger example provided for the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerTemplateGroupSample/CS/TemplateGroupsSample.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet3"::: + ]]> @@ -241,19 +241,19 @@ Gets the collection of predefined automatic formatting schemes to display in the **Auto Format** dialog box for the associated control at design time. A object that contains the predefined schemes for the control. - class and a formatting class that is derived from the class. The property is a collection of instances of the class. For a working example of automatic formatting in Visual Studio 2005, see . - - - -## Examples - The following code example demonstrates how to implement the property in a custom control designer. The derived control designer implements the property by adding three instances of a custom automatic format that are derived from the class. - + class and a formatting class that is derived from the class. The property is a collection of instances of the class. For a working example of automatic formatting in Visual Studio 2005, see . + + + +## Examples + The following code example demonstrates how to implement the property in a custom control designer. The derived control designer implements the property by adding three instances of a custom automatic format that are derived from the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerAutoFormat/CS/DesignerAutoFormat.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet1"::: + ]]> @@ -304,19 +304,19 @@ Creates HTML markup to display a specified error message at design time. An HTML markup string that contains the specified error message. - method to create HTML markup to display an error message for a control at design time. The value for `errorMessage` specifies a localized string that is displayed to the user of the control at design time. - - The class implementation of the method returns a table with two rows, as follows: - -- The first row contains the type name and site name for the property of the object. - -- The second row contains the input error message string. - - To generate HTML markup for an error message with an associated exception, use the overload. To generate HTML markup for an exception without specifying a localized error message, use the method. - + method to create HTML markup to display an error message for a control at design time. The value for `errorMessage` specifies a localized string that is displayed to the user of the control at design time. + + The class implementation of the method returns a table with two rows, as follows: + +- The first row contains the type name and site name for the property of the object. + +- The second row contains the input error message string. + + To generate HTML markup for an error message with an associated exception, use the overload. To generate HTML markup for an exception without specifying a localized error message, use the method. + ]]> @@ -352,19 +352,19 @@ Creates the HTML markup to display a specified exception error message at design time. HTML markup that contains the specified and . - method to provide simple HTML markup that can be used to display error and exception details for a control at design time. The value for `errorMessage` specifies a localized string that is displayed to the user of the control at design time. - - The class implementation of the method returns a table with two rows, as follows: - -- The first row contains the type name and site name for the property of the object. - -- The second row contains the input error message and the string of the exception. - - To generate HTML markup for an error message without specifying an exception, use the overload. To generate HTML markup for an exception without specifying a localized error message, use the method. - + method to provide simple HTML markup that can be used to display error and exception details for a control at design time. The value for `errorMessage` specifies a localized string that is displayed to the user of the control at design time. + + The class implementation of the method returns a table with two rows, as follows: + +- The first row contains the type name and site name for the property of the object. + +- The second row contains the input error message and the string of the exception. + + To generate HTML markup for an error message without specifying an exception, use the overload. To generate HTML markup for an exception without specifying a localized error message, use the method. + ]]> @@ -446,16 +446,16 @@ Provides a simple rectangular placeholder representation that displays the type and ID of the control, and also additional specified instructions or information. A string that contains design-time HTML markup providing information about the control. - method in a templated control designer. A string is then passed as the `instruction` parameter in a call to the method, which provides the design-time HTML markup. - - This code example is part of a larger example provided for the property. - + method in a templated control designer. A string is then passed as the `instruction` parameter in a call to the method, which provides the design-time HTML markup. + + This code example is part of a larger example provided for the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerTemplateGroupSample/CS/TemplateGroupsSample.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet4"::: + ]]> @@ -533,13 +533,13 @@ Gets an object that is used to persist data for the associated control at design time. A property that implements and uses the to persist state data for the associated control at design time. - property are persisted even if the user switches from Design to Source view, or reloads the document, or closes and reopens the design host. - - You can get and set values in the returned object as you would in an IDictionary object, with the values automatically persisted. - + property are persisted even if the user switches from Design to Source view, or reloads the document, or closes and reopens the design host. + + You can get and set values in the returned object as you would in an IDictionary object, with the values automatically persisted. + ]]> ASP.NET Control Designers Overview @@ -573,13 +573,13 @@ . - [!NOTE] -> The property is obsolete and there is no replacement for the functionality. - +> The property is obsolete and there is no replacement for the functionality. + ]]> ASP.NET Control Designers Overview @@ -613,14 +613,14 @@ , if loading must be complete before the method can be called; otherwise, . The default is . - property returns `false`. - + property returns `false`. + > [!NOTE] -> The property is obsolete. Use the method for equivalent control designer functionality. - +> The property is obsolete. Use the method for equivalent control designer functionality. + ]]> @@ -687,14 +687,14 @@ Retrieves the HTML markup that is used to represent the control at design time. The HTML markup used to represent the control at design time. - method in a custom control designer. If the Text property for the associated control is empty, the method calls the method. Otherwise, the method creates and renders a Hyperlink control. - + method in a custom control designer. If the Text property for the associated control is empty, the method calls the method. Otherwise, the method creates and renders a Hyperlink control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/CS/SimpleControlDesigner.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/VB/simplecontroldesigner.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/VB/simplecontroldesigner.vb" id="Snippet5"::: + ]]> @@ -736,21 +736,21 @@ Retrieves the HTML markup to display the control and populates the collection with the current control designer regions. The design-time HTML markup for the associated control, including all control designer regions. - method to get the design-time HTML markup and the current list of control designer regions. Using the DesignerRegionCollection, the design host can then request the markup for each editable control designer region. - - The method is provided for a derived control designer, such as the class, that must process the content for the region before calling the method. - - - -## Examples - The following code example shows how to create HTML markup using the collection. - + method to get the design-time HTML markup and the current list of control designer regions. Using the DesignerRegionCollection, the design host can then request the markup for each editable control designer region. + + The method is provided for a derived control designer, such as the class, that must process the content for the region before calling the method. + + + +## Examples + The following code example shows how to create HTML markup using the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/CS/SimpleMultiRegionControlDesigner.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet5"::: + ]]> @@ -781,13 +781,13 @@ Returns an appropriate resource provider factory, depending on the globalization settings in the configuration file for the site. A object, if any are defined in the configuration file; otherwise, . - object using the default implementation for the design host. - - Typically, control developers will not override the method. - + object using the default implementation for the design host. + + Typically, control developers will not override the method. + ]]> @@ -821,21 +821,21 @@ Returns the content for an editable region of the design-time view of the associated control. The persisted content for the region, if the control designer supports editable regions; otherwise, an empty string (""). - method returns an empty string (""). - - Classes deriving from the class can support region-based editing on the design surface and override the method to return the content for a specified region. - - - -## Examples - The following code example shows how to get a reference to the design host, and then use the reference to create a object that creates the HTML markup for `region` and its contents. - + method returns an empty string (""). + + Classes deriving from the class can support region-based editing on the design surface and override the method to return the content for a specified region. + + + +## Examples + The following code example shows how to get a reference to the design host, and then use the reference to create a object that creates the HTML markup for `region` and its contents. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/CS/SimpleMultiRegionControlDesigner.cs" id="Snippet6"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet6"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet6"::: + ]]> @@ -864,19 +864,19 @@ Retrieves the HTML markup to represent a Web server control at design time that will have no visual representation at run time. The HTML markup used to represent a control at design time that would otherwise have no visual representation. The default is a rectangle that contains the type and ID of the component. - method is to return a string that contains the name of the component. The method should be called in the implementation of the method when there is no design-time HTML markup. - - - -## Examples - The following code example demonstrates how to override the method in a custom control designer. If the `Text` property for the associated control is empty, the method calls method. Otherwise, the method creates and renders a `Hyperlink` control. - + method is to return a string that contains the name of the component. The method should be called in the implementation of the method when there is no design-time HTML markup. + + + +## Examples + The following code example demonstrates how to override the method in a custom control designer. If the `Text` property for the associated control is empty, the method calls method. Otherwise, the method creates and renders a `Hyperlink` control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/CS/SimpleControlDesigner.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/VB/simplecontroldesigner.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/VB/simplecontroldesigner.vb" id="Snippet5"::: + ]]> @@ -909,19 +909,19 @@ Retrieves the HTML markup that provides information about the specified exception. The design-time HTML markup for the specified exception. - method is typically called, if an exception is thrown in the method. - - - -## Examples - The following code example demonstrates how to generate design-time HTML markup for the control when an error occurs and call the method. - + method is typically called, if an exception is thrown in the method. + + + +## Examples + The following code example demonstrates how to generate design-time HTML markup for the control when an error occurs and call the method. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/CS/LoginDesigner.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.WebControls.LoginDesigner/VB/LoginDesigner.vb" id="Snippet2"::: + ]]> @@ -998,13 +998,13 @@ Retrieves the persistable inner HTML markup of the control. The persistable inner HTML markup of the control. - [!NOTE] -> The method is obsolete. Use the method for equivalent control designer functionality. - +> The method is obsolete. Use the method for equivalent control designer functionality. + ]]> @@ -1124,11 +1124,11 @@ , if the properties of the associated control are hidden when the control is in template mode; otherwise, . The default is . - method uses the property to determine whether properties, other than the ID property, should be hidden from the property grids while the control is in template editing mode. - + method uses the property to determine whether properties, other than the ID property, should be hidden from the property grids while the control is in template editing mode. + ]]> ASP.NET Control Designers Overview @@ -1155,11 +1155,11 @@ Gets or sets the ID string for the control. The ID string for the control. - property is used internally within the control designer and for interaction with the Properties window. The property shadows the run-time property. - + property is used internally within the control designer and for interaction with the Properties window. The property shadows the run-time property. + ]]> @@ -1190,25 +1190,25 @@ The control being designed. Initializes the control designer and loads the specified component. - method is called by the design host to complete the following actions: - -- Load the control designer with the component to design. - -- Set up the view on the control using the method. - -- Verify that the associated control is of the right type. - - - -## Examples - The following code example demonstrates how to use a control class and a control designer class that override the method to initialize internal variables. - + method is called by the design host to complete the following actions: + +- Load the control designer with the component to design. + +- Set up the view on the control using the method. + +- Verify that the associated control is of the right type. + + + +## Examples + The following code example demonstrates how to use a control class and a control designer class that override the method to initialize internal variables. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/CS/SimpleControlDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/VB/simplecontroldesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.ControlDesigner_Example/VB/simplecontroldesigner.vb" id="Snippet1"::: + ]]> @@ -1242,13 +1242,13 @@ , if the control is in either template viewing or editing mode; otherwise, . - class supplies a default object to update the value when the template mode changes for the associated control. Custom designers that are derived from the class can override the method to perform additional processing when the template editing mode changes for a control in the design host. - + class supplies a default object to update the value when the template mode changes for the associated control. Custom designers that are derived from the class can override the method to perform additional processing when the template editing mode changes for a control in the design host. + ]]> @@ -1265,11 +1265,11 @@ Invalidates the control as displayed on the design surface and causes the design host to call the method. - method also calls method. - + method also calls method. + ]]> @@ -1297,13 +1297,13 @@ Invalidates the whole area of the control that is displayed on the design surface and signals the control designer to redraw the control. - method in the method. - - The method provides the design host with a way to instruct the control designer to redraw the control. Essentially, this is the same as calling method, because it causes the whole control to be redrawn. - + method in the method. + + The method provides the design host with a way to instruct the control designer to redraw the control. Essentially, this is the same as calling method, because it causes the whole control to be redrawn. + ]]> ASP.NET Control Designers Overview @@ -1332,13 +1332,13 @@ A object that represents the area to invalidate, relative to the upper-left corner of the control. Invalidates the specified area of the control that is displayed on the design surface and signals the control designer to redraw the control. - method in the method. - - The method provides the design host with a way to instruct the control designer to redraw a specific part of the control. - + method in the method. + + The method provides the design host with a way to instruct the control designer to redraw a specific part of the control. + ]]> ASP.NET Control Designers Overview @@ -1389,28 +1389,28 @@ A description of the effect of allowing the transaction to complete, which is used by the design host to give the user an opportunity to cancel the transaction. Wraps a series of changes into a transaction, using the specified parameters that can be rolled back as a unit with the undo functionality of the design host. - method notifies the design host, which is determined by the property of `component`, that a change is occurring in the associated control and, if the change is not canceled by the design host, invokes the specified `callback` using the specified `context`, and then notifies the design host that the change has completed. - - If the design host or the associated control throws a static `Canceled` exception field of a exception, the transaction is canceled without invoking `callback`. - - - -## Examples - The following code example demonstrates how to create a simple composite control with a and a control, together with properties to set the label text, and also the , , and properties of the control. An associated control designer class creates three commands, each of which sets two properties on the control. By using the method, you can use the undo functionality of the design host, such as Visual Studio 2005, to roll back each completed transaction as a unit. - + method notifies the design host, which is determined by the property of `component`, that a change is occurring in the associated control and, if the change is not canceled by the design host, invokes the specified `callback` using the specified `context`, and then notifies the design host that the change has completed. + + If the design host or the associated control throws a static `Canceled` exception field of a exception, the transaction is canceled without invoking `callback`. + + + +## Examples + The following code example demonstrates how to create a simple composite control with a and a control, together with properties to set the label text, and also the , , and properties of the control. An associated control designer class creates three commands, each of which sets two properties on the control. By using the method, you can use the undo functionality of the design host, such as Visual Studio 2005, to roll back each completed transaction as a unit. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerInvokeTransactedChange/CS/InvokeTransactedChangeSample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerInvokeTransactedChange/VB/InvokeTransactedChangeSample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerInvokeTransactedChange/VB/InvokeTransactedChangeSample.vb" id="Snippet1"::: + ]]> - is . - - -or- - + is . + + -or- + is . @@ -1448,25 +1448,25 @@ A object (typically, either an or a object) that describes the member of the associated control that is being invoked as part of the transaction. Wraps a series of changes into a transaction, using the specified parameters that can be rolled back as a unit with the undo functionality of the design host. - method notifies the design host, which is determined by the property of `component`, that a change is occurring to the specified `member` (property or method) of the associated control and, if the change is not canceled by the design host, invokes the specified `callback` using the specified `context` as the argument, and then notifies the design host that the change has completed. - - If the design host or associated control throws a static `Canceled` exception field of a exception, the transaction is canceled without invoking `callback`. - - - -## Examples - For a code example, see . - + method notifies the design host, which is determined by the property of `component`, that a change is occurring to the specified `member` (property or method) of the associated control and, if the change is not canceled by the design host, invokes the specified `callback` using the specified `context` as the argument, and then notifies the design host that the change has completed. + + If the design host or associated control throws a static `Canceled` exception field of a exception, the transaction is canceled without invoking `callback`. + + + +## Examples + For a code example, see . + ]]> - is . - - -or- - + is . + + -or- + is . @@ -1507,29 +1507,29 @@ A object (typically either an or a object) that describes the member of the associated control that is being invoked as part of the transaction. Wraps a series of changes into a transaction, using the specified parameters that can be rolled back as a unit with the undo functionality of the design host. - method notifies the design host, which is represented by `serviceProvider`, that a change is occurring to the specified `member` (property or method) of the associated control and, if the change is not canceled by the design host, invokes the specified `callback` using the specified `context` as the argument, and then notifies the design host that the change has completed. - - If the design host or the associated control throws a static `Canceled` exception field of a exception, the transaction is canceled without invoking `callback`. - - - -## Examples - For a code example, see . - + method notifies the design host, which is represented by `serviceProvider`, that a change is occurring to the specified `member` (property or method) of the associated control and, if the change is not canceled by the design host, invokes the specified `callback` using the specified `context` as the argument, and then notifies the design host that the change has completed. + + If the design host or the associated control throws a static `Canceled` exception field of a exception, the transaction is canceled without invoking `callback`. + + + +## Examples + For a code example, see . + ]]> - is . - - -or- - - is . - - -or- - + is . + + -or- + + is . + + -or- + is . @@ -1574,13 +1574,13 @@ , if the Web server control has changed since it was last persisted or loaded; otherwise, . - [!NOTE] -> The property is obsolete. Use the property and the method on the property for equivalent control designer functionality. - +> The property is obsolete. Use the property and the method on the property for equivalent control designer functionality. + ]]> @@ -1620,13 +1620,13 @@ , if the property is data-bound; otherwise, . - [!NOTE] -> The method is obsolete. Use the method on the property for equivalent control designer functionality. - +> The method is obsolete. Use the method on the property for equivalent control designer functionality. + ]]> @@ -1656,11 +1656,11 @@ An object derived from the object that is used to write resources into the design-time response stream. Uses the provided resource writer to persist the localizable properties of the associated control to a resource in the design host. - method is called by the design host to create resource entries for each property that is marked with a object and any properties that use an explicit resource expression as a value. - + method is called by the design host to create resource entries for each property that is marked with a object and any properties that use an explicit resource expression as a value. + ]]> ASP.NET Web Page Resources Overview @@ -1691,13 +1691,13 @@ A object that defines a style. Called when a predefined, automatic formatting scheme has been applied to the associated control. - method is called after a object has applied a predefined format to the associated control. A object defines the automatic formatting scheme name and style settings that are applied to the control. - - Classes deriving from the class override the method to perform additional processing when an automatic formatting scheme is applied to the associated control. - + method is called after a object has applied a predefined format to the associated control. A object defines the automatic formatting scheme name and style settings that are applied to the control. + + Classes deriving from the class override the method to perform additional processing when an automatic formatting scheme is applied to the associated control. + ]]> @@ -1727,7 +1727,7 @@ [!NOTE] > The OnBehaviorAttached method is obsolete. Use the and methods on the property for equivalent control designer functionality. @@ -1773,14 +1773,14 @@ The property to test for changes in its bindings collection. Called when the data-binding collection changes. - method is called when the data-binding collection has been changed by an external caller. - + method is called when the data-binding collection has been changed by an external caller. + > [!NOTE] -> The method is obsolete. Use the event on the collection for equivalent control designer functionality. - +> The method is obsolete. Use the event on the collection for equivalent control designer functionality. + ]]> @@ -1810,33 +1810,33 @@ A object that specifies the location and, possibly, the control designer region that the user clicked. Called by the design host when the user clicks the associated control at design time. - event is raised by the design host for certain actions on a control in the design surface. For example, an event is raised for the following conditions: - -- The user clicks the control. - -- The control designer paints on the design surface. - -- The user enters or exits template editing mode for the control. - - The class supplies a default delegate to handle the event. Classes deriving from override the method to process events that are raised when the user clicks a control. - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - The default implementation of the method returns without performing any processing. - - - -## Examples - The following code example shows how to use a handler for the event in a clickable region of the control and use a object to identify the region that is being clicked. - - This code example is part of a larger code example for the class. - + event is raised by the design host for certain actions on a control in the design surface. For example, an event is raised for the following conditions: + +- The user clicks the control. + +- The control designer paints on the design surface. + +- The user enters or exits template editing mode for the control. + + The class supplies a default delegate to handle the event. Classes deriving from override the method to process events that are raised when the user clicks a control. + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + The default implementation of the method returns without performing any processing. + + + +## Examples + The following code example shows how to use a handler for the event in a clickable region of the control and use a object to identify the region that is being clicked. + + This code example is part of a larger code example for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/CS/SimpleMultiRegionControlDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet4"::: + ]]> @@ -1874,16 +1874,16 @@ A object that contains the event data. Called when the associated control changes. - method is called when a property on the associated control is changed. It allows the implementer to do any processing that might be required after a property change. Calling the method causes the design host to call the method. The base implementation of the method also persists the control in the page markup. - + method is called when a property on the associated control is changed. It allows the implementer to do any processing that might be required after a property change. Calling the method causes the design host to call the method. The base implementation of the method also persists the control in the page markup. + ]]> - Override the method to provide additional processing before persisting the control and before refreshing the design-time HTML markup. - + Override the method to provide additional processing before persisting the control and before refreshing the design-time HTML markup. + When overriding the method in a derived class, make sure that you call the method for the base class so that registered delegates receive the event. @@ -1915,11 +1915,11 @@ A object that contains the event data. Represents the method that will handle the event for the associated control. - or method is called, the event occurs before any changes are made to the associated control. After the changes are complete, the method occurs. - + or method is called, the event occurs before any changes are made to the associated control. After the changes are complete, the method occurs. + ]]> @@ -1956,15 +1956,15 @@ Called when the associated Web server control has been resized in the design host at design time. - [!NOTE] -> The method is obsolete. Use the method for equivalent control designer functionality. - - The method typically is called only by the design-time environment when a user action causes the associated Web server control to be resized. The method might be called several times during a resizing process to display the updated size of the control before the resizing is completed. The width and height properties of the control are updated before the method is called. - +> The method is obsolete. Use the method for equivalent control designer functionality. + + The method typically is called only by the design-time environment when a user action causes the associated Web server control to be resized. The method might be called several times during a resizing process to display the updated size of the control before the resizing is completed. The width and height properties of the control are updated before the method is called. + ]]> @@ -1994,23 +1994,23 @@ A object that specifies the graphics and rectangle boundaries used to draw the control. Called when the control designer draws the associated control on the design surface, if the value is . - event is raised by the design host for certain actions on a control in the design surface. For example, an event is raised for the following conditions: - -- The user clicks the control. - -- The design host requests HTML markup to render the associated control on the design surface. - -- The user enters or exits template editing mode for the control. - - The class supplies a default delegate to handle the event. Classes deriving from should set the value and override the method to process events that are raised when the design host draws the control on the design surface. - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - The default implementation of the method returns without performing any processing. - + event is raised by the design host for certain actions on a control in the design surface. For example, an event is raised for the following conditions: + +- The user clicks the control. + +- The design host requests HTML markup to render the associated control on the design surface. + +- The user enters or exits template editing mode for the control. + + The class supplies a default delegate to handle the event. Classes deriving from should set the value and override the method to process events that are raised when the design host draws the control on the design surface. + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + The default implementation of the method returns without performing any processing. + ]]> @@ -2047,13 +2047,13 @@ The properties for the class of the component. Adds properties to or removes properties from the Properties grid in a design host at design time or provides new design-time properties that might correspond to properties on the associated control. - method, you can add items to the dictionary of properties that a control designer exposes through a object. - - The keys in the dictionary of properties are the names of the properties. The objects are of type . - + method, you can add items to the dictionary of properties that a control designer exposes through a object. + + The keys in the dictionary of properties are the names of the properties. The objects are of type . + ]]> @@ -2094,11 +2094,11 @@ Raises the event. - method is obsolete and there is no replacement for this feature. - + method is obsolete and there is no replacement for this feature. + ]]> @@ -2142,14 +2142,14 @@ , if the properties of the control are read-only at design time; otherwise, . - class is read-only, by nature. Read/write features are provided by adding a object or using base classes, such as the class. - + class is read-only, by nature. Read/write features are provided by adding a object or using base classes, such as the class. + > [!NOTE] -> The property is obsolete. Derive from the class to which you can add editable designer regions or from the object to which you can create editable designer regions in templates. - +> The property is obsolete. Derive from the class to which you can add editable designer regions or from the object to which you can create editable designer regions in templates. + ]]> @@ -2181,18 +2181,18 @@ The cloned copy of the associated control. Registers internal data in a cloned control. - method, and then, when the changes are persisted to the tag, all `meta:` attributes are also persisted. - + method, and then, when the changes are persisted to the tag, all `meta:` attributes are also persisted. + ]]> - is null. - - -or- - + is null. + + -or- + is null. ASP.NET Control Designers Overview @@ -2217,11 +2217,11 @@ Gets the control designer for the Web Forms page that contains the associated control. A object that can be used at design time to access components on the Web Forms page that contains the control. - property represents the control designer for the Web Forms page that contains the control. Use the property to access and manipulate the containing Web Forms page at design time. - + property represents the control designer for the Web Forms page that contains the control. Use the property to access and manipulate the containing Web Forms page at design time. + ]]> @@ -2253,19 +2253,19 @@ The content to assign for the editable design region. Specifies the content for an editable region of the control at design time. - class can support region-based editing on the design surface and override the method to set the content for a specified region. - - - -## Examples - The following code example shows how to get a reference to the design host, and then use the reference to create a object that turns `content` into an instance of the interface and assigns the instance to the appropriate view. - + class can support region-based editing on the design surface and override the method to set the content for a specified region. + + + +## Examples + The following code example shows how to get a reference to the design host, and then use the reference to create a object that turns `content` into an instance of the interface and assigns the instance to the appropriate view. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/CS/SimpleMultiRegionControlDesigner.cs" id="Snippet7"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet7"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet7"::: + ]]> @@ -2298,13 +2298,13 @@ The content to assign for the editable design region. Specifies the content for an editable region in the design-time view of the control. - method is not overridden in derived designers. The base class causes the design host to call the method for the region. Override the method when custom data is required for the control before calling method. - - Use the method to insert HTML markup into a region of the control. - + method is not overridden in derived designers. The base class causes the design host to call the method for the region. Override the method when custom data is required for the control before calling method. + + Use the method to insert HTML markup into a region of the control. + ]]> @@ -2338,19 +2338,19 @@ to set the flag, to remove the flag. Assigns the specified bitwise enumeration to the specified flag value. - method to set the value of the current property for the control designer, instead of the obsolete property. - - - -## Examples - The following code example shows how to use the method to indicate that the template is in editing mode. - + method to set the value of the current property for the control designer, instead of the obsolete property. + + + +## Examples + The following code example shows how to use the method to indicate that the template is in editing mode. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerTemplateGroupSample/CS/TemplateGroupsSample.cs" id="Snippet5"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet5"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet5"::: + ]]> @@ -2384,11 +2384,11 @@ Gets an object representing the HTML markup element for the associated control. An object that represents the HTML markup element for the associated control. - property is used only for communication between the design host and the control designer and is not used by control developers. - + property is used only for communication between the design host and the control designer and is not used by control developers. + ]]> @@ -2415,17 +2415,17 @@ Gets a collection of template groups, each containing one or more template definitions. A collection of objects. The default is an empty . - class. This control designer supports a control with four possible templates. - - To try it, compile the code, and then, in a design host such as Visual Studio 2005, view the page in Design view. Select the control, click the action list to select a template to modify, and then use the drag-and-drop feature to move controls into the template. - + class. This control designer supports a control with four possible templates. + + To try it, compile the code, and then, in a design host such as Visual Studio 2005, view the page in Design view. Select the control, click the action list to select a template to modify, and then use the drag-and-drop feature to move controls into the template. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerTemplateGroupSample/CS/TemplateGroupsSample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet1"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.aspx" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet1"::: +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.aspx" id="Snippet2"::: + ]]> @@ -2458,24 +2458,24 @@ Refreshes the design-time HTML markup for the associated Web server control by calling the method. - method is called by the design host to update the display of the associated Web server control at design time, such as when the control has been modified. Also, a control designer can call the method after modifying values of the control to update the display of the control. - + method is called by the design host to update the display of the associated Web server control at design time, such as when the control has been modified. Also, a control designer can call the method after modifying values of the control to update the display of the control. + > [!NOTE] -> If you are calling the event, or using the object to set properties, the interface calls the method for you. - - - -## Examples - The following code example demonstrates how to respond to a `Click` event in a control designer to change the focus between regions in a multi-region control and use the method to update the appearance of the control in the design host. - - This code example is part of a larger example for the class. - +> If you are calling the event, or using the object to set properties, the interface calls the method for you. + + + +## Examples + The following code example demonstrates how to respond to a `Click` event in a control designer to change the focus between regions in a multi-region control and use the method to update the appearance of the control in the design host. + + This code example is part of a larger example for the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/CS/SimpleMultiRegionControlDesigner.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet4"::: + ]]> @@ -2503,15 +2503,15 @@ , if the control designer uses a temporary copy of the control for design-time preview; otherwise, , if the control designer uses the property for the control contained in the control designer. - property is `true`, the property returns a temporary copy of the control. Changes to the temporary control are not persisted to the document. - - If the property is `false`, the property returns an instance of the property for the control. Changes to the instance of the control are persisted. - - The setting in the object is used to set the value of the property. Therefore, the setting determines the type of control that is returned by the property in the base class. If the is not specified in the control designer declaration, the object behavior is equivalent to specifying the property as `false`. - + property is `true`, the property returns a temporary copy of the control. Changes to the temporary control are not persisted to the document. + + If the property is `false`, the property returns an instance of the property for the control. Changes to the instance of the control are persisted. + + The setting in the object is used to set the value of the property. Therefore, the setting determines the type of control that is returned by the property in the base class. If the is not specified in the control designer declaration, the object behavior is equivalent to specifying the property as `false`. + ]]> @@ -2544,25 +2544,25 @@ Gets or sets a Web server control that can be used for previewing the design-time HTML markup. A object used by the base class to generate design-time HTML markup. - property uses the property to determine its return value. - - If the property is `true`, the property returns a temporary copy of the control. Changes to the temporary control are not persisted. - - If the property is `false`, the property returns an instance of the property for the control. Changes to the instance of the control are persisted. - - The setting in the object is used to set the value of the property. Therefore, the setting determines the type of control that is returned by the property in the base class. If the is not specified in the control designer declaration, the object behavior is equivalent to specifying the property as `false`. - - - -## Examples - The following code example demonstrates how to mark a control designer with the attribute. The code example derives a Web server control from the class and associates the control with a custom control designer implementation. The control designer class declaration is marked with the `SupportsPreviewControl` attribute set to `true`. The control designer overrides the method, and then displays the property of the control in italic at design time. - + property uses the property to determine its return value. + + If the property is `true`, the property returns a temporary copy of the control. Changes to the temporary control are not persisted. + + If the property is `false`, the property returns an instance of the property for the control. Changes to the instance of the control are persisted. + + The setting in the object is used to set the value of the property. Therefore, the setting determines the type of control that is returned by the property in the base class. If the is not specified in the control designer declaration, the object behavior is equivalent to specifying the property as `false`. + + + +## Examples + The following code example demonstrates how to mark a control designer with the attribute. The code example derives a Web server control from the class and associates the control with a custom control designer implementation. The control designer class declaration is marked with the `SupportsPreviewControl` attribute set to `true`. The control designer overrides the method, and then displays the property of the control in italic at design time. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.SupportsPreviewControlAttribute/CS/supportspreviewdesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.SupportsPreviewControlAttribute/VB/supportspreviewdesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.SupportsPreviewControlAttribute/VB/supportspreviewdesigner.vb" id="Snippet1"::: + ]]> diff --git a/xml/System.Web.UI.Design/ControlPersister.xml b/xml/System.Web.UI.Design/ControlPersister.xml index 2dd2de88b14..28821eaf296 100644 --- a/xml/System.Web.UI.Design/ControlPersister.xml +++ b/xml/System.Web.UI.Design/ControlPersister.xml @@ -18,23 +18,23 @@ Provides methods for persisting Web server controls at design-time. - class provides methods that can persist a control or an interface implementation as a string of aspx code. The implementation of these methods is driven by metadata attributes, such as the , , and . - + class provides methods that can persist a control or an interface implementation as a string of aspx code. The implementation of these methods is driven by metadata attributes, such as the , , and . + > [!NOTE] -> The Web Forms page designer does not support the `ResetPropertyName` method that is optionally exposed by Microsoft Windows Forms-based controls for property persistence. - - To create a object or an interface by parsing a string of control- or template-persistence data, use the class methods. - - - -## Examples +> The Web Forms page designer does not support the `ResetPropertyName` method that is optionally exposed by Microsoft Windows Forms-based controls for property persistence. + + To create a object or an interface by parsing a string of control- or template-persistence data, use the class methods. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_WebNet/ControlParserPersisterExample/CPP/webcustomcontrol1.cpp" id="Snippet1"::: :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ControlParserPersisterExample/CS/webcustomcontrol1.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlParserPersisterExample/VB/webcustomcontrol1.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlParserPersisterExample/VB/webcustomcontrol1.vb" id="Snippet1"::: + ]]> @@ -76,18 +76,18 @@ Gets a string of data that represents the persisted form of the specified control. A string that represents the persisted form of the control. - implementation to work correctly. This method uses the of the specified control to retrieve the designer host. - - - -## Examples + implementation to work correctly. This method uses the of the specified control to retrieve the designer host. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_WebNet/ControlParserPersisterExample/CPP/webcustomcontrol1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ControlParserPersisterExample/CS/webcustomcontrol1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlParserPersisterExample/VB/webcustomcontrol1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlParserPersisterExample/VB/webcustomcontrol1.vb" id="Snippet3"::: + ]]> @@ -118,11 +118,11 @@ The to persist. Outputs a string of data that represents the persisted form of the specified control to the specified . - implementation to work correctly. This method uses the of the specified control to retrieve the designer host. - + implementation to work correctly. This method uses the of the specified control to retrieve the designer host. + ]]> @@ -154,18 +154,18 @@ Gets a string of data that represents the persisted form of the specified control, using the specified designer host. A string that represents the persisted form of the control. - implementation to work correctly. - - - -## Examples + implementation to work correctly. + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_WebNet/ControlParserPersisterExample/CPP/webcustomcontrol1.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/ControlParserPersisterExample/CS/webcustomcontrol1.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlParserPersisterExample/VB/webcustomcontrol1.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/ControlParserPersisterExample/VB/webcustomcontrol1.vb" id="Snippet3"::: + ]]> @@ -198,11 +198,11 @@ An that is the designer host for the control. Outputs a string of data that represents the persisted form of the specified control to the specified , using the specified designer host. - implementation to work correctly. - + implementation to work correctly. + ]]> @@ -244,11 +244,11 @@ Gets a string of data that can persist the inner properties of the specified control. A string that contains the information to persist about the inner properties of the control. - implementation to work correctly. - + implementation to work correctly. + ]]> @@ -282,11 +282,11 @@ An that is the designer host for the control. Outputs a string of data that can persist the inner properties of the specified control to the specified , using the specified designer host. - implementation to work correctly. - + implementation to work correctly. + ]]> @@ -327,11 +327,11 @@ Gets a string of data that represents the persisted form of the specified template. A string that represents the persisted form of the template. - method requires an interface implementation in order to work correctly. - + method requires an interface implementation in order to work correctly. + ]]> @@ -366,11 +366,11 @@ An that is the designer host for the control. Writes a string of data that represents the persisted form of the specified template to the specified object. - method requires an interface implementation in order to work correctly. - + method requires an interface implementation in order to work correctly. + ]]> diff --git a/xml/System.Web.UI.Design/DataColumnSelectionConverter.xml b/xml/System.Web.UI.Design/DataColumnSelectionConverter.xml index 71601a6de17..1dcba4410b6 100644 --- a/xml/System.Web.UI.Design/DataColumnSelectionConverter.xml +++ b/xml/System.Web.UI.Design/DataColumnSelectionConverter.xml @@ -17,20 +17,20 @@ Provides a type converter for a property representing the field name of a bound column field in a control. - class to convert object types before assignment to a control property. In general, the class supports converting string object types and supplies a list of standard values available for assignment to the associated control property. The standard values collection is the list of field names for bound column fields for the current control. - - To support converting additional object types, derive a class from and override the and methods for the additional object types. To support a custom list of standard assignable values, override the method. - - Apply the attribute to specify the class as the type converter for a control property. For example, the property of the control specifies as its type converter. - + class to convert object types before assignment to a control property. In general, the class supports converting string object types and supplies a list of standard values available for assignment to the associated control property. The standard values collection is the list of field names for bound column fields for the current control. + + To support converting additional object types, derive a class from and override the and methods for the additional object types. To support a custom list of standard assignable values, override the method. + + Apply the attribute to specify the class as the type converter for a control property. For example, the property of the control specifies as its type converter. + > [!NOTE] -> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . - - The method indicates that the converter supports returning a list of available values through the method. The method indicates that the list is not an exclusive list of possible values. - +> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . + + The method indicates that the converter supports returning a list of available values through the method. The method indicates that the list is not an exclusive list of possible values. + ]]> @@ -62,13 +62,13 @@ Initializes a new instance of the class. - [!NOTE] -> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . - +> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . + ]]> @@ -100,13 +100,13 @@ if the converter can perform the conversion; otherwise, . - method to determine whether the method supports converting the source type. - - The method can convert only from a string, so the method returns `true` when `sourceType` is a string. - + method to determine whether the method supports converting the source type. + + The method can convert only from a string, so the method returns `true` when `sourceType` is a string. + ]]> @@ -139,13 +139,13 @@ Converts the specified object to the type of the associated control property. An instance that represents the converted object. - exception is thrown. - - Call the method to determine whether the method supports converting the source type. - + exception is thrown. + + Call the method to determine whether the method supports converting the source type. + ]]> The conversion could not be performed. @@ -175,13 +175,13 @@ Returns a list of available values that can be assigned to the associated control property. A instance containing available values for assignment to the associated control property. - method uses the property of the specified `context` object to obtain an implementation. If the implementation is available, it is used to access the associated control at design time and retrieve the list of available values from the associated component. - - The collection of available values is built from the bound column fields in the control. The bound column fields consist of objects in the collection, and from the bound column fields automatically generated for fields in the data source. - + method uses the property of the specified `context` object to obtain an implementation. If the implementation is available, it is used to access the associated control at design time and retrieve the list of available values from the associated component. + + The collection of available values is built from the bound column fields in the control. The bound column fields consist of objects in the collection, and from the bound column fields automatically generated for fields in the data source. + ]]> @@ -216,11 +216,11 @@ if this converter returns a list containing all possible values that can be assigned to the associated control property; otherwise . - method for a instance returns `false`, indicating that the list returned by the method is not an exclusive list of all possible assignable values. - + method for a instance returns `false`, indicating that the list returned by the method is not an exclusive list of all possible assignable values. + ]]> @@ -251,13 +251,13 @@ if this converter returns a standard set of available values for assignment to the associated control property; otherwise . - method indicates whether the converter supports returning a list of available values through the method. - - The method for the object returns `true` if the specified `context` object supplies an implementation in its property. The method uses the implementation to access the associated control at design time and retrieve the list of available bound column fields from the associated component. - + method indicates whether the converter supports returning a list of available values through the method. + + The method for the object returns `true` if the specified `context` object supplies an implementation in its property. The method uses the implementation to access the associated control at design time and retrieve the list of available bound column fields from the associated component. + ]]> diff --git a/xml/System.Web.UI.Design/DataFieldConverter.xml b/xml/System.Web.UI.Design/DataFieldConverter.xml index f882e3f3cfb..a286d60604f 100644 --- a/xml/System.Web.UI.Design/DataFieldConverter.xml +++ b/xml/System.Web.UI.Design/DataFieldConverter.xml @@ -18,25 +18,25 @@ Provides a type converter that can retrieve a list of data fields from the current component's selected data source. - can retrieve a list of data fields from the current data source of a design-time component. - - This type converter is used by Visual Studio 2005 to provide the values that appear in the list of data fields in the Properties window. - + can retrieve a list of data fields from the current data source of a design-time component. + + This type converter is used by Visual Studio 2005 to provide the values that appear in the list of data fields in the Properties window. + > [!CAUTION] -> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - - - -## Examples +> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_WebNet/DataSourceTypeConverterExamples/CPP/datasourcetypeconverterexamples.cpp" id="Snippet3"::: :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DataSourceTypeConverterExamples/CS/datasourcetypeconverterexamples.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DataSourceTypeConverterExamples/VB/datasourcetypeconverterexamples.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DataSourceTypeConverterExamples/VB/datasourcetypeconverterexamples.vb" id="Snippet3"::: + ]]> @@ -94,16 +94,16 @@ if the converter can perform the conversion; otherwise, . - - Override this method to meet your own conversion requirements. - + Override this method to meet your own conversion requirements. + The parameter can be used to extract additional information about the environment the converter is being invoked from. It might be , so you should always check. Also, properties of the object might also return . @@ -140,8 +140,8 @@ To be added. The conversion cannot be performed. - Override this method to meet your own conversion requirements. - + Override this method to meet your own conversion requirements. + The parameter can be used to extract additional information about the environment the converter is being invoked from. It might be , so you should always check. Also, properties of the object might also return . @@ -172,11 +172,11 @@ Gets the data fields present within the selected data source if information about them is available. A listing the standard accessible data sources. - implementation on the component's designer to retrieve the selected data source. - + implementation on the component's designer to retrieve the selected data source. + ]]> @@ -205,20 +205,20 @@ An object that can be used to gain additional context information. Gets a value indicating whether the collection of standard values returned from is a list of all possible values. - if the returned from is an exclusive list of all possible values that are valid; if other values are possible. - + if the returned from is an exclusive list of all possible values that are valid; if other values are possible. + As implemented in this class, this method always returns . - provides. - + provides. + ]]> - Override this method if the type you want to convert supports standard values. - + Override this method if the type you want to convert supports standard values. + The parameter can be used to extract additional information about the environment the converter is being invoked from. It might be , so you should always check. Also, properties of the object might also return . diff --git a/xml/System.Web.UI.Design/DataMemberConverter.xml b/xml/System.Web.UI.Design/DataMemberConverter.xml index 31cc3f15500..145bd67b7ca 100644 --- a/xml/System.Web.UI.Design/DataMemberConverter.xml +++ b/xml/System.Web.UI.Design/DataMemberConverter.xml @@ -18,25 +18,25 @@ Provides a type converter that can retrieve a list of data members from the current component's selected data source. - provides methods that can retrieve a list of data members from the current data source of a design-time component. - - This type converter is used by Visual Studio 2005 to provide the values that appear in the list of data members in the Properties window. - + provides methods that can retrieve a list of data members from the current data source of a design-time component. + + This type converter is used by Visual Studio 2005 to provide the values that appear in the list of data members in the Properties window. + > [!CAUTION] -> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - - - -## Examples +> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_WebNet/DataSourceTypeConverterExamples/CPP/datasourcetypeconverterexamples.cpp" id="Snippet2"::: :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DataSourceTypeConverterExamples/CS/datasourcetypeconverterexamples.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DataSourceTypeConverterExamples/VB/datasourcetypeconverterexamples.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DataSourceTypeConverterExamples/VB/datasourcetypeconverterexamples.vb" id="Snippet2"::: + ]]> @@ -95,8 +95,8 @@ if the converter can perform the conversion; otherwise, . To be added. - Override this method to meet your own conversion requirements. - + Override this method to meet your own conversion requirements. + The parameter can be used to extract additional information about the environment the converter is being invoked from. It might be , so you should always check. Also, properties of the object might also return . @@ -133,8 +133,8 @@ To be added. The conversion cannot be performed. - Override this method to meet your own conversion requirements. - + Override this method to meet your own conversion requirements. + The parameter can be used to extract additional information about the environment the converter is being invoked from. It might be , so you should always check. Also, properties of the object might also return . @@ -165,11 +165,11 @@ Gets the data members present within the selected data source, if information about them is available. A listing the data members of the data source selected for the component. - implementation of the associated component's designer to retrieve the current data source selection. - + implementation of the associated component's designer to retrieve the current data source selection. + ]]> @@ -198,20 +198,20 @@ An object that provides a format context. Gets a value indicating whether the collection of standard values returned from is a list of all possible values. - if the returned from is an exclusive list of all possible values that are valid; if other values are possible. - + if the returned from is an exclusive list of all possible values that are valid; if other values are possible. + As implemented in this class, this method always returns . - provides. - + provides. + ]]> - Override this method if the type you want to convert supports standard values. - + Override this method if the type you want to convert supports standard values. + The parameter can be used to extract additional information about the environment this converter is being invoked from. It might be , so you should always check. Also, properties of the object might also return . diff --git a/xml/System.Web.UI.Design/DataSourceConverter.xml b/xml/System.Web.UI.Design/DataSourceConverter.xml index 51320758342..0ca432e1132 100644 --- a/xml/System.Web.UI.Design/DataSourceConverter.xml +++ b/xml/System.Web.UI.Design/DataSourceConverter.xml @@ -18,25 +18,25 @@ Provides a type converter that can retrieve a list of data sources accessible to the current component. - provides methods that can be used to retrieve a list of data sources accessible to the current design-time component. - - This type converter is used by Visual Studio 2005 to provide the values that appear in the list of data sources in the **Properties** window. - + provides methods that can be used to retrieve a list of data sources accessible to the current design-time component. + + This type converter is used by Visual Studio 2005 to provide the values that appear in the list of data sources in the **Properties** window. + > [!CAUTION] -> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - - - -## Examples +> You should never access a type converter directly. Instead, call the appropriate converter by using . For more information, see the examples in the base class. + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + + + +## Examples :::code language="cpp" source="~/snippets/cpp/VS_Snippets_WebNet/DataSourceTypeConverterExamples/CPP/datasourcetypeconverterexamples.cpp" id="Snippet4"::: :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DataSourceTypeConverterExamples/CS/datasourcetypeconverterexamples.cs" id="Snippet4"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DataSourceTypeConverterExamples/VB/datasourcetypeconverterexamples.vb" id="Snippet4"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DataSourceTypeConverterExamples/VB/datasourcetypeconverterexamples.vb" id="Snippet4"::: + ]]> How to: Implement a Type Converter @@ -93,13 +93,13 @@ A that represents the type you want to convert from. Gets a value indicating whether the converter can convert an object of the specified source type to the native type of the converter. - if the converter can perform the conversion; otherwise, . - + if the converter can perform the conversion; otherwise, . + As implemented in this class, this method always returns . To be added. - Override this method to provide your own conversion requirements. - + Override this method to provide your own conversion requirements. + The can be used to extract additional information about the environment this converter is being invoked from. This may be , so you should always check. Also, properties on the context object may also return . @@ -136,8 +136,8 @@ To be added. The conversion could not be performed. - Override this method to meet your own conversion requirements. - + Override this method to meet your own conversion requirements. + The parameter can be used to extract additional information about the environment the converter is being invoked from. It might be , so you should always check. Also, properties of the context object may also return . @@ -168,11 +168,11 @@ Gets the standard data sources accessible to the control. A listing the standard accessible data sources. - method, and then returning the components that are valid data sources. - + method, and then returning the components that are valid data sources. + ]]> @@ -202,20 +202,20 @@ An that can be used to gain additional context information. Gets a value indicating whether the collection of standard values returned from is a list of all possible values. - if the returned from is an exclusive list of all possible values; if other values are possible. - + if the returned from is an exclusive list of all possible values; if other values are possible. + As implemented in this class, this method always returns . - provides. - + provides. + ]]> - Override this method if the type you want to convert supports standard values. - + Override this method if the type you want to convert supports standard values. + The parameter can be used to extract additional information about the environment this converter is being invoked from. It might be , so you should always check. Also, properties of the context object may also return . @@ -274,11 +274,11 @@ if implements or ; otherwise, . - method uses the method to determine the components that are available as standard accessible data sources. For the class, a valid data source is a component that implements the or interface. - + method uses the method to determine the components that are available as standard accessible data sources. For the class, a valid data source is a component that implements the or interface. + ]]> diff --git a/xml/System.Web.UI.Design/DataSourceDesigner.xml b/xml/System.Web.UI.Design/DataSourceDesigner.xml index 20873add89a..12008852fd5 100644 --- a/xml/System.Web.UI.Design/DataSourceDesigner.xml +++ b/xml/System.Web.UI.Design/DataSourceDesigner.xml @@ -30,9 +30,9 @@ There are two static methods that you can use to evaluate the equivalency of schemas or views without creating an instance of the class: -- The method compares two schemas. +- The method compares two schemas. -- The method compares the schemas of two views. +- The method compares the schemas of two views. diff --git a/xml/System.Web.UI.Design/DataSourceViewSchemaConverter.xml b/xml/System.Web.UI.Design/DataSourceViewSchemaConverter.xml index 211ed2e5132..4e8089e657e 100644 --- a/xml/System.Web.UI.Design/DataSourceViewSchemaConverter.xml +++ b/xml/System.Web.UI.Design/DataSourceViewSchemaConverter.xml @@ -17,20 +17,20 @@ Provides a type converter for a property representing a field in a data source schema. - class to convert object types before assignment to a control property. In general, the supports converting string object types and supplies a list of standard values available for assignment to the associated control property. The standard values collection is the list of fields in the data source schema for the current control. - - To support converting additional object types, derive a class from and override the and methods for the additional object types. To support a custom list of standard assignable values, override the method. - - Apply the attribute to specify the class as the type converter for a control property. For example, the property of the class and the property of the class use the as the property type converter. - + class to convert object types before assignment to a control property. In general, the supports converting string object types and supplies a list of standard values available for assignment to the associated control property. The standard values collection is the list of fields in the data source schema for the current control. + + To support converting additional object types, derive a class from and override the and methods for the additional object types. To support a custom list of standard assignable values, override the method. + + Apply the attribute to specify the class as the type converter for a control property. For example, the property of the class and the property of the class use the as the property type converter. + > [!NOTE] -> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . - - The method indicates that the converter supports returning a list of available values through the method. The method indicates that the list is not an exclusive list of possible values. - +> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . + + The method indicates that the converter supports returning a list of available values through the method. The method indicates that the list is not an exclusive list of possible values. + ]]> @@ -61,13 +61,13 @@ Initializes a new instance of the class. - [!NOTE] -> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . - +> You should never access a type converter directly. Instead, call the appropriate converter by using a object. For more information, see the examples in . + ]]> @@ -101,13 +101,13 @@ if the converter can perform the conversion; otherwise, . - method to determine whether the method supports converting the source type. - - The method can convert only from a string, so the method returns `true` when `sourceType` is a string. - + method to determine whether the method supports converting the source type. + + The method can convert only from a string, so the method returns `true` when `sourceType` is a string. + ]]> @@ -142,13 +142,13 @@ Converts the specified object to the type of the associated control property. An instance that represents the converted object. - exception is thrown. - - Call the method to determine whether the method supports converting the source type. - + exception is thrown. + + Call the method to determine whether the method supports converting the source type. + ]]> The conversion could not be performed. @@ -197,13 +197,13 @@ Returns a list of available values that can be assigned to the associated control property. A containing available values for assignment to the associated control property. - method uses the property of the specified `context` object to obtain an implementation. If the implementation is available, it is used to access the data source schema for the associated control at design time and retrieve the list of available fields from the associated data source schema view. - - The collection of available values is built from the fields in the data source schema for the associated control. - + method uses the property of the specified `context` object to obtain an implementation. If the implementation is available, it is used to access the data source schema for the associated control at design time and retrieve the list of available fields from the associated data source schema view. + + The collection of available values is built from the fields in the data source schema for the associated control. + ]]> @@ -269,11 +269,11 @@ if this converter returns a list containing all possible values that can be assigned to the associated control property; otherwise . - method for a returns `false`, indicating that the list returned by the method is not an exclusive list of all possible assignable values. - + method for a returns `false`, indicating that the list returned by the method is not an exclusive list of all possible assignable values. + ]]> @@ -306,13 +306,13 @@ if this converter returns a standard set of available values for assignment to the associated control property; otherwise . - method indicates whether the converter supports returning a list of available values through the method. - - The method for the object returns `true` if the specified `context` object supplies an implementation in its property. The method uses the implementation to retrieve the list of available fields from the associated data source schema. - + method indicates whether the converter supports returning a list of available values through the method. + + The method for the object returns `true` if the specified `context` object supplies an implementation in its property. The method uses the implementation to retrieve the list of available fields from the associated data source schema. + ]]> diff --git a/xml/System.Web.UI.Design/DesignerAutoFormat.xml b/xml/System.Web.UI.Design/DesignerAutoFormat.xml index d92807a4963..b4effe45088 100644 --- a/xml/System.Web.UI.Design/DesignerAutoFormat.xml +++ b/xml/System.Web.UI.Design/DesignerAutoFormat.xml @@ -17,39 +17,39 @@ Provides the abstract base class for creating formats that can be applied to a custom Web server control at design time. - provides a base class that can be inherited from and extended to display a formatted custom Web server control at design time in a visual designer tool such as Visual Studio 2005. - - A control developer provides automatic formatting in order to help developers who use the control to select a preferred display. A custom object works with a custom control designer to provide automatic formatting at design time for a custom control. For example, the control provides a variety of formats that can be applied by a developer at design time. - - To implement automatic formatting for a custom control: - -1. Create the custom control. - -2. Derive a designer class from the class or another designer class that is appropriate for your control, such as the . - -3. Derive a format class from the class that formats your custom control by overriding the method. - -4. In your designer class, populate the property, which is a object, with one instance of your format class for each named format that your designer can apply. - - The class provides the following members to support automatic formatting at design time: - -- The method, which applies the named format to the specified control. - -- The method, which provides a copy of the control for previewing in an **AutoFormat** dialog box of a visual designer such as Visual Studio 2005. - -- The property, which provides the text to display in a list of formats in a visual designer. - - - -## Examples - The following code example demonstrates how to implement automatic formatting in a custom control designer. The derived control designer implements the property by adding three instances of a custom automatic format that are derived from the class. - + provides a base class that can be inherited from and extended to display a formatted custom Web server control at design time in a visual designer tool such as Visual Studio 2005. + + A control developer provides automatic formatting in order to help developers who use the control to select a preferred display. A custom object works with a custom control designer to provide automatic formatting at design time for a custom control. For example, the control provides a variety of formats that can be applied by a developer at design time. + + To implement automatic formatting for a custom control: + +1. Create the custom control. + +2. Derive a designer class from the class or another designer class that is appropriate for your control, such as the . + +3. Derive a format class from the class that formats your custom control by overriding the method. + +4. In your designer class, populate the property, which is a object, with one instance of your format class for each named format that your designer can apply. + + The class provides the following members to support automatic formatting at design time: + +- The method, which applies the named format to the specified control. + +- The method, which provides a copy of the control for previewing in an **AutoFormat** dialog box of a visual designer such as Visual Studio 2005. + +- The property, which provides the text to display in a list of formats in a visual designer. + + + +## Examples + The following code example demonstrates how to implement automatic formatting in a custom control designer. The derived control designer implements the property by adding three instances of a custom automatic format that are derived from the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerAutoFormat/CS/DesignerAutoFormat.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet1"::: + ]]> @@ -82,11 +82,11 @@ A string that identifies a specific object. Initializes a new instance of the class. - constructor to create a new format and add it to a collection that is represented by the property of a object. - + constructor to create a new format and add it to a collection that is represented by the property of a object. + ]]> @@ -120,19 +120,19 @@ A Web server control to apply the formatting to. Applies the associated formatting to the specified control. - method applies formatting to the specified control based on the property. You can apply the styles directly to the control, or set the property and then use the method for the control to apply the style changes to the control. - - - -## Examples - The following code example illustrates how to use a object to apply formatting to a Web server control. - + method applies formatting to the specified control based on the property. You can apply the styles directly to the control, or set the property and then use the method for the control to apply the style changes to the control. + + + +## Examples + The following code example illustrates how to use a object to apply formatting to a Web server control. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerAutoFormat/CS/DesignerAutoFormat.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet3"::: + ]]> @@ -168,21 +168,21 @@ Returns a copy of the associated control in order to provide a preview before applying the format to the control. The method returns a copy of the associated Web server control. - method is used by visual designers, such as Visual Studio 2005, in an **AutoFormat** dialog box to display a formatted run-time preview of the control at design time before applying the format to the actual control. - - Regardless of the setting of the attribute for the object, the method returns a copy of the control in the `runtimeControl` parameter. - + method is used by visual designers, such as Visual Studio 2005, in an **AutoFormat** dialog box to display a formatted run-time preview of the control at design time before applying the format to the actual control. + + Regardless of the setting of the attribute for the object, the method returns a copy of the control in the `runtimeControl` parameter. + ]]> - You can override the method in the following situations: - -- The size of the returned control will be different from the original control. - -- The control must be populated with sample data in order to present a sufficient preview. + You can override the method in the following situations: + +- The size of the returned control will be different from the original control. + +- The control must be populated with sample data in order to present a sufficient preview. @@ -215,19 +215,19 @@ Gets the name of a object. The name. - property from each object in the collection of a to create a list of available automatic style formats. - - - -## Examples - The following code example demonstrates how to override the property of a object to create and add three named formats to the collection. - + property from each object in the collection of a to create a list of available automatic style formats. + + + +## Examples + The following code example demonstrates how to override the property of a object to create and add three named formats to the collection. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerAutoFormat/CS/DesignerAutoFormat.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet2"::: + ]]> @@ -256,19 +256,19 @@ Gets a object that is used by the object to render a design-time preview of the associated control. An object that's used by the object to render a design-time preview of the associated control. - property is read-only, each individual property that it contains can be set. For example, you can set the or property of the object. - - - -## Examples - The following code example illustrates how to apply formatting to a Web server control by using the property. - + property is read-only, each individual property that it contains can be set. For example, you can set the or property of the object. + + + +## Examples + The following code example illustrates how to apply formatting to a Web server control by using the property. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerAutoFormat/CS/DesignerAutoFormat.cs" id="Snippet3"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet3"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet3"::: + ]]> @@ -303,11 +303,11 @@ Returns a string that represents the current object. The property of the current . - method returns a string that contains the value of the property of the object. - + method returns a string that contains the value of the property of the object. + ]]> diff --git a/xml/System.Web.UI.Design/DesignerAutoFormatCollection.xml b/xml/System.Web.UI.Design/DesignerAutoFormatCollection.xml index 421825c3007..6d1f2d2292b 100644 --- a/xml/System.Web.UI.Design/DesignerAutoFormatCollection.xml +++ b/xml/System.Web.UI.Design/DesignerAutoFormatCollection.xml @@ -27,43 +27,43 @@ Represents a collection of objects within a control designer. This class cannot be inherited. - class and any derived class defines the property as a object. Control developers can override the property in a derived control designer, add custom automatic formatting styles, and return the collection of supported formats to the visual designer. - - The collection dynamically increases as objects are added. Indexes in this collection are zero-based. Use the property to determine how many automatic style formats are in the collection. - - Additionally, use the methods and properties to provide the following functionality: - -- The method to add a single format to the collection. - -- The method to add a format at a particular index within the collection. - -- The method to remove a format. - -- The method to remove the format at a particular index. - -- The method to determine whether a particular format is already in the collection. - -- The method to retrieve the index of a format within the collection. - -- The property to get or set the format at a particular index, using array notation. - -- The method to remove all formats from the collection. - -- The property to determine the number of formats in the collection. - -- The method to get the position of a format within the collection. - - - -## Examples - The following code example demonstrates how to implement the property in a custom control designer. The derived control designer implements the property by adding three instances of a custom automatic format that are derived from the class. - + class and any derived class defines the property as a object. Control developers can override the property in a derived control designer, add custom automatic formatting styles, and return the collection of supported formats to the visual designer. + + The collection dynamically increases as objects are added. Indexes in this collection are zero-based. Use the property to determine how many automatic style formats are in the collection. + + Additionally, use the methods and properties to provide the following functionality: + +- The method to add a single format to the collection. + +- The method to add a format at a particular index within the collection. + +- The method to remove a format. + +- The method to remove the format at a particular index. + +- The method to determine whether a particular format is already in the collection. + +- The method to retrieve the index of a format within the collection. + +- The property to get or set the format at a particular index, using array notation. + +- The method to remove all formats from the collection. + +- The property to determine the number of formats in the collection. + +- The method to get the position of a format within the collection. + + + +## Examples + The following code example demonstrates how to implement the property in a custom control designer. The derived control designer implements the property by adding three instances of a custom automatic format that are derived from the class. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerAutoFormat/CS/DesignerAutoFormat.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet1"::: + ]]> @@ -89,11 +89,11 @@ Initializes a new instance of the class. - constructor to create an empty collection. You can add elements to the collection by using the or method. - + constructor to create an empty collection. You can add elements to the collection by using the or method. + ]]> @@ -126,19 +126,19 @@ Adds the specified object to the end of the collection. The index at which the format was added to the collection. - method adds the specified object to the end of the collection. To add a object to the collection at a specific index location, use the method. - - - -## Examples - The following code example illustrates how to create and add objects to the `AutoFormats` property of a custom designer. - + method adds the specified object to the end of the collection. To add a object to the collection at a specific index location, use the method. + + + +## Examples + The following code example illustrates how to create and add objects to the `AutoFormats` property of a custom designer. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerAutoFormat/CS/DesignerAutoFormat.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerAutoFormat/VB/DesignerAutoFormat.vb" id="Snippet2"::: + ]]> @@ -170,11 +170,11 @@ Removes all formats from the collection. - method to remove all formats from the collection. To remove a specific format from the collection, use the method. To remove a format at a particular index, use the method. - + method to remove all formats from the collection. To remove a specific format from the collection, use the method. To remove a format at a particular index, use the method. + ]]> @@ -208,11 +208,11 @@ , if the specified format is in the collection; otherwise, . - method determines equality by using the method on the objects that are being compared. - + method determines equality by using the method on the objects that are being compared. + ]]> @@ -242,11 +242,11 @@ Gets the number of objects in the collection. The number of objects in the collection. - property typically is used to determine the upper boundary index when iterating through objects in the collection. Because the collection indexes are zero-based, the first element is at index `0` and the last element is at index `Count-1`. - + property typically is used to determine the upper boundary index when iterating through objects in the collection. Because the collection indexes are zero-based, the first element is at index `0` and the last element is at index `Count-1`. + ]]> @@ -279,11 +279,11 @@ Returns the index of the specified object within the collection. The zero-based index of the first occurrence of within the collection; otherwise, -1, if the format is not in the collection. - method determines equality by using the method on the objects that are being compared. - + method determines equality by using the method on the objects that are being compared. + ]]> @@ -317,21 +317,21 @@ The to insert into the collection. Inserts a object into the collection at the specified index. - method adds a object to the collection at a specific index location. To add a single to the end of the collection, use the method. - + method adds a object to the collection at a specific index location. To add a single to the end of the collection, use the method. + > [!NOTE] -> When you insert an item into a collection, the index values change for subsequent items in the collection. - +> When you insert an item into a collection, the index values change for subsequent items in the collection. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. @@ -363,20 +363,20 @@ Gets or sets a object at the specified index in the collection. The at the specified index in the collection. - indexer to retrieve the object at the specified index within the collection or to set the format at the specified index within the collection. You can index elements in the collection by using array notation. For example, you can index an element at index `i` with the notation `AutoFormats(i)` for Microsoft VisualBasic or `AutoFormats[i]` for C#. - - When you have a reference to the object and need the index of the object in the collection, use the method. - + indexer to retrieve the object at the specified index within the collection or to set the format at the specified index within the collection. You can index elements in the collection by using array notation. For example, you can index an element at index `i` with the notation `AutoFormats(i)` for Microsoft VisualBasic or `AutoFormats[i]` for C#. + + When you have a reference to the object and need the index of the object in the collection, use the method. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. @@ -404,11 +404,11 @@ Gets the maximum outer dimensions of the control as it will appear at run time. A structure that contains the height and width of the control on the design surface. - property examines each format in the collection and returns the largest height and the largest width in a structure. A visual designer, such as Visual Studio 2005, uses the to determine the initial size of the **AutoFormat** dialog box. The minimum size is 200-by-200 pixels. - + property examines each format in the collection and returns the largest height and the largest width in a structure. A visual designer, such as Visual Studio 2005, uses the to determine the initial size of the **AutoFormat** dialog box. The minimum size is 200-by-200 pixels. + ]]> @@ -440,20 +440,20 @@ The to remove from the collection. Removes the specified object from the collection. - method removes the first occurrence of `format` from the collection. If the object does not contain `format`, the collection remains unchanged. No exception is thrown. - - The method determines equality by using the method on the objects that are being compared. - - The method performs a linear search; therefore, the average execution time is proportional to the value. - - To remove a format at a particular index from the collection, use the method. To remove all formats from the collection, use the method. - + method removes the first occurrence of `format` from the collection. If the object does not contain `format`, the collection remains unchanged. No exception is thrown. + + The method determines equality by using the method on the objects that are being compared. + + The method performs a linear search; therefore, the average execution time is proportional to the value. + + To remove a format at a particular index from the collection, use the method. To remove all formats from the collection, use the method. + > [!NOTE] -> When you remove an item from a collection, the index values change for subsequent items in the collection. - +> When you remove an item from a collection, the index values change for subsequent items in the collection. + ]]> @@ -485,21 +485,21 @@ The zero-based index of the to remove from the collection. Removes the object at the specified index within the collection. - method to remove a format at a particular index from the collection. To remove a specified format from the collection, use the method. To remove all formats from the collection, use the method. - + method to remove a format at a particular index from the collection. To remove a specified format from the collection, use the method. To remove all formats from the collection, use the method. + > [!NOTE] -> When you remove an item from a collection, the index values change for subsequent items in the collection. - +> When you remove an item from a collection, the index values change for subsequent items in the collection. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. ASP.NET Control Designers Overview @@ -527,13 +527,13 @@ Gets an object that can be used to synchronize access to the object. An object that can be used to synchronize access to the . - method during the entire enumeration to guarantee thread safety. For detailed information about locking collections for thread-safe access, see . - + method during the entire enumeration to guarantee thread safety. For detailed information about locking collections for thread-safe access, see . + ]]> @@ -571,11 +571,11 @@ The starting index for the items to copy. Copies the elements of the collection to an object, starting at a particular index when the object is cast to an interface. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -611,11 +611,11 @@ Gets the number of elements that are contained in the collection when the object is cast to an interface. The number of items in the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -646,11 +646,11 @@ , if the is synchronized; otherwise . - object is cast to an interface. - + object is cast to an interface. + ]]> @@ -680,11 +680,11 @@ Returns an interface that iterates through the collection when the object is cast to an interface. An for the . - object is cast to an interface. - + object is cast to an interface. + ]]> @@ -718,11 +718,11 @@ Adds an item to the collection when the object is cast to an interface. The index of the added item. - object is cast to an interface. - + object is cast to an interface. + ]]> @@ -757,11 +757,11 @@ , if the object is in the ; otherwise, . - object is cast to an interface. - + object is cast to an interface. + ]]> @@ -795,11 +795,11 @@ Determines the index of a specific item in the collection when the object is cast to an interface. The index of a item in the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -834,11 +834,11 @@ A to insert. Inserts an item into the collection at the specified index when the object is cast to an interface. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -868,11 +868,11 @@ Gets a value that indicates whether the collection has a fixed size when the object is cast to an interface. Always . - object is cast to an interface. - + object is cast to an interface. + ]]> @@ -901,11 +901,11 @@ For a description of this method, see . Always , which indicates that the collection cannot be replaced or deleted. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -942,11 +942,11 @@ Gets the element at the specified index when the object is cast to an interface. The element at the specified index. - object is cast to an interface. - + object is cast to an interface. + ]]> @@ -978,11 +978,11 @@ The to remove. Removes the first occurrence of a specific object from the collection when the object is cast to an interface. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1021,11 +1021,11 @@ The index of the item to remove. Removes the item at the specified index when the object is cast to an interface. - instance is cast to an interface. - + instance is cast to an interface. + ]]> diff --git a/xml/System.Web.UI.Design/DesignerRegionCollection.xml b/xml/System.Web.UI.Design/DesignerRegionCollection.xml index f35cfd084c5..ecdbfbf56e8 100644 --- a/xml/System.Web.UI.Design/DesignerRegionCollection.xml +++ b/xml/System.Web.UI.Design/DesignerRegionCollection.xml @@ -27,33 +27,33 @@ Represents a collection of objects within a control designer. - class, and any derived class, uses the class to contain and enumerate the designer regions for the control in a design host, such as Visual Studio 2005. - - For example, the method can be used to define and add regions to the collection. - - Use the property to access the control designer object that contains the designer region collection. Use the methods and properties to examine and maintain the objects that are in the collection. - - The collection dynamically increases as objects are added. Indexes in this collection are zero-based. Use the property to determine how many designer regions are in the collection. Use the members to provide the following functionality: - -- The method to add a single designer region to the collection. - -- The method to add a designer region at a particular index within the collection. - -- The method to remove a designer region. - -- The method to remove the designer region at a particular index. - -- The method to determine whether a particular designer region is already in the collection. - -- The method to retrieve the index of a designer region within the collection. - -- The indexer to get or set the designer region at a particular index, using array notation. - -- The method to remove all designer regions from the collection. - + class, and any derived class, uses the class to contain and enumerate the designer regions for the control in a design host, such as Visual Studio 2005. + + For example, the method can be used to define and add regions to the collection. + + Use the property to access the control designer object that contains the designer region collection. Use the methods and properties to examine and maintain the objects that are in the collection. + + The collection dynamically increases as objects are added. Indexes in this collection are zero-based. Use the property to determine how many designer regions are in the collection. Use the members to provide the following functionality: + +- The method to add a single designer region to the collection. + +- The method to add a designer region at a particular index within the collection. + +- The method to remove a designer region. + +- The method to remove the designer region at a particular index. + +- The method to determine whether a particular designer region is already in the collection. + +- The method to retrieve the index of a designer region within the collection. + +- The indexer to get or set the designer region at a particular index, using array notation. + +- The method to remove all designer regions from the collection. + ]]> @@ -97,11 +97,11 @@ Initializes a new instance of the class. - constructor to create an empty collection. You can add elements to the collection by using the or method. - + constructor to create an empty collection. You can add elements to the collection by using the or method. + ]]> Extending Design-Time Support @@ -134,13 +134,13 @@ The control designer that owns this collection of designer regions. Initializes a new instance of the class for the specified control designer. - constructor creates an empty collection and sets the property to the specified control designer object. The visual designer, such as Visual Studio 2005, uses the constructor to initialize a designer region collection for a specific control designer. - - You can add elements to the collection by using the or method. - + constructor creates an empty collection and sets the property to the specified control designer object. The visual designer, such as Visual Studio 2005, uses the constructor to initialize a designer region collection for a specific control designer. + + You can add elements to the collection by using the or method. + ]]> @@ -172,11 +172,11 @@ Adds the specified object to the end of the collection. The index at which the region was added to the collection. - method adds the specified object to the end of the collection. To add a object to the collection at a specific index location, use the method. - + method adds the specified object to the end of the collection. To add a object to the collection at a specific index location, use the method. + ]]> Extending Design-Time Support @@ -203,11 +203,11 @@ Removes all regions from the collection. - method to remove all regions from the collection. To remove a specific region from the collection, use the method. To remove a region at a particular index, use the method. - + method to remove all regions from the collection. To remove a specific region from the collection, use the method. To remove a region at a particular index, use the method. + ]]> Extending Design-Time Support @@ -239,13 +239,13 @@ , if the region is in the collection; otherwise, . - method determines equality by using the method on the objects. - - The method performs a linear search; therefore, the average execution time is proportional to the property. Because template region collections are typically small, the performance of the linear search operation is not critical. - + method determines equality by using the method on the objects. + + The method performs a linear search; therefore, the average execution time is proportional to the property. Because template region collections are typically small, the performance of the linear search operation is not critical. + ]]> @@ -278,11 +278,11 @@ The zero-based index in at which copying begins. Copies the elements of the collection to an object, starting at a particular index. - or method to add the design regions to the collection. - + or method to add the design regions to the collection. + ]]> Extending Design-Time Support @@ -309,11 +309,11 @@ Gets the number of objects in the collection. The number of objects in the collection. - property is commonly used to determine the upper boundary index when iterating through objects in the collection. Because the collection indexes are zero-based, the first element is at index `0` and the last element is at index `Count-1`. - + property is commonly used to determine the upper boundary index when iterating through objects in the collection. Because the collection indexes are zero-based, the first element is at index `0` and the last element is at index `Count-1`. + ]]> Extending Design-Time Support @@ -341,11 +341,11 @@ Returns an enumerator that iterates through the collection. An that can be used to iterate through the collection. - property together with a loop construct, such as `while`, `for`, or `foreach` statements, to enumerate through the object. - + property together with a loop construct, such as `while`, `for`, or `foreach` statements, to enumerate through the object. + ]]> Extending Design-Time Support @@ -376,13 +376,13 @@ Returns the index of the specified object within the collection. The zero-based index of the first occurrence of within the collection; otherwise, -1, if is not in the collection. - method determines equality by using the method on the objects. - - The method performs a linear search; therefore, the average execution time is proportional to the property. Because template region collections are typically small, the performance of the linear search operation is not critical. - + method determines equality by using the method on the objects. + + The method performs a linear search; therefore, the average execution time is proportional to the property. Because template region collections are typically small, the performance of the linear search operation is not critical. + ]]> @@ -415,21 +415,21 @@ The to insert into the collection. Inserts a object into the collection at the specified index. - method adds a object to the collection at a specific index location. To add a single to the end of the collection, use the method. - + method adds a object to the collection at a specific index location. To add a single to the end of the collection, use the method. + > [!NOTE] -> When you insert an item into the collection, the indexes change for subsequent items in the collection. - +> When you insert an item into the collection, the indexes change for subsequent items in the collection. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. Extending Design-Time Support How to: Extend the Appearance and Behavior of Controls in Design Mode @@ -506,13 +506,13 @@ , if access to the is synchronized; otherwise, . - method during the whole enumeration to guarantee thread safety. - + method during the whole enumeration to guarantee thread safety. + ]]> @@ -544,20 +544,20 @@ Gets or sets a object at the specified index in the collection. The at the specified index in the collection. - indexer to retrieve the region at the specified index within the collection or to set the region at the specified index within the collection. You can index elements in the collection by using array notation. For example, you can index an element at index `i` with the notation `DesignerRegions(i)` for Microsoft VisualBasic or `DesignerRegions[i]` for C#. - - When you have a reference to the region object and need the index of the object in the collection, use the method. - + indexer to retrieve the region at the specified index within the collection or to set the region at the specified index within the collection. You can index elements in the collection by using array notation. For example, you can index an element at index `i` with the notation `DesignerRegions(i)` for Microsoft VisualBasic or `DesignerRegions[i]` for C#. + + When you have a reference to the region object and need the index of the object in the collection, use the method. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. Extending Design-Time Support How to: Extend the Appearance and Behavior of Controls in Design Mode @@ -589,11 +589,11 @@ Gets the control designer that owns the designer region collection. A that represents the control designer that owns the . - property provides a convenient means to access the control designer object for a designer region collection. For example, you can use the property to determine the type of control designer that owns the collection and to access the properties and methods of the control designer. - + property provides a convenient means to access the control designer object for a designer region collection. For example, you can use the property to determine the type of control designer that owns the collection and to access the properties and methods of the control designer. + ]]> @@ -624,20 +624,20 @@ The to remove from the collection. Removes the specified object from the collection. - method removes the first occurrence of the specified region from the collection. If the object does not contain the specified `region`, the collection remains unchanged. No exception is thrown. - - The method determines equality by using the method on the object. - - The method performs a linear search; therefore, the average execution time is proportional to the property. Because template region collections are typically small, the performance of the linear search operation is not critical. - - To remove a region at a particular index from the collection, use the method. To remove all regions from the collection, use the method. - + method removes the first occurrence of the specified region from the collection. If the object does not contain the specified `region`, the collection remains unchanged. No exception is thrown. + + The method determines equality by using the method on the object. + + The method performs a linear search; therefore, the average execution time is proportional to the property. Because template region collections are typically small, the performance of the linear search operation is not critical. + + To remove a region at a particular index from the collection, use the method. To remove all regions from the collection, use the method. + > [!NOTE] -> When you remove an item from the collection, the indexes change for subsequent items in the collection. - +> When you remove an item from the collection, the indexes change for subsequent items in the collection. + ]]> Extending Design-Time Support @@ -667,21 +667,21 @@ The zero-based index within the collection of the to remove. Removes the object at the specified index within the collection. - method to remove a region at a particular index from the collection. To remove a specified region from the collection, use the method. To remove all regions from the collection, use the method. - + method to remove a region at a particular index from the collection. To remove a specified region from the collection, use the method. To remove all regions from the collection, use the method. + > [!NOTE] -> When you remove an item from the collection, the indexes change for subsequent items in the collection. - +> When you remove an item from the collection, the indexes change for subsequent items in the collection. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. Extending Design-Time Support How to: Extend the Appearance and Behavior of Controls in Design Mode @@ -707,13 +707,13 @@ Gets an object that can be used to synchronize access to the object. An object that can be used to synchronize access to the . - method during the whole enumeration to guarantee thread safety. For detailed information about locking collections for thread-safe access, see . - + method during the whole enumeration to guarantee thread safety. For detailed information about locking collections for thread-safe access, see . + ]]> @@ -755,11 +755,11 @@ The zero-based index in at which copying begins. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -796,11 +796,11 @@ For a description of this member, see . The number of elements in the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -838,11 +838,11 @@ , if access to the collection is synchronized; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -881,11 +881,11 @@ For a description of this member, see . An object that can be used to synchronize access to the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -925,11 +925,11 @@ For a description of this member, see . An that can be used to iterate through the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -964,11 +964,11 @@ For a description of this member, see . The index at which the item was added to the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1004,11 +1004,11 @@ For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1043,11 +1043,11 @@ , if the region is in the collection; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1081,11 +1081,11 @@ For a description of this member, see . The zero-based index of the first occurrence of the object within the collection; otherwise, -1, if the object is not in the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1120,11 +1120,11 @@ The object to insert into the collection. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1161,11 +1161,11 @@ , if the collection dynamically increases in size as new objects are added; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1201,11 +1201,11 @@ For a description of this member, see . The value of the property. - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -1246,11 +1246,11 @@ For a description of this member, see . The object at the specified index in the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1283,11 +1283,11 @@ The object to remove from the collection. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1326,11 +1326,11 @@ The zero-based index within the collection of the object to remove. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support diff --git a/xml/System.Web.UI.Design/EditableDesignerRegion.xml b/xml/System.Web.UI.Design/EditableDesignerRegion.xml index 3b58125eae2..f60bb3ec00c 100644 --- a/xml/System.Web.UI.Design/EditableDesignerRegion.xml +++ b/xml/System.Web.UI.Design/EditableDesignerRegion.xml @@ -17,24 +17,24 @@ Represents an editable content region within the design-time markup for the associated control. - class to help manage templates at design time. A will use an instance of this class with its method to generate HTML markup of the region's content. - - - -## Examples - This example shows how to create a control with two clickable regions and an object with two views, or templates. Compile the project, then open the page in a visual designer and switch to design (WYSIWYG) view. There are two clickable views, **View1** and **View2**. Click **View1** and drag the control from the lower part of the page into the empty designer region just below the clickable regions. Click **View2** and drag the control into the empty designer region. Click **View1** again, and the region with the reappears. Click **View2** and the region with the reappears. Switch back to source view to see how your changes are persisted in the HTML markup - + class to help manage templates at design time. A will use an instance of this class with its method to generate HTML markup of the region's content. + + + +## Examples + This example shows how to create a control with two clickable regions and an object with two views, or templates. Compile the project, then open the page in a visual designer and switch to design (WYSIWYG) view. There are two clickable views, **View1** and **View2**. Click **View1** and drag the control from the lower part of the page into the empty designer region just below the clickable regions. Click **View2** and drag the control into the empty designer region. Click **View1** again, and the region with the reappears. Click **View2** and the region with the reappears. Switch back to source view to see how your changes are persisted in the HTML markup + > [!NOTE] -> Your project must have a reference to the System.Design.dll assembly. - +> Your project must have a reference to the System.Design.dll assembly. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/CS/SimpleMultiRegionControlDesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet1"::: + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.vb" id="Snippet1"::: :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/CS/SimpleMultiRegionControlDesigner.aspx" id="Snippet8"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.aspx" id="Snippet8"::: - +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/SimpleMultiRegionControlDesigner/VB/SimpleMultiRegionControlDesigner.aspx" id="Snippet8"::: + ]]> diff --git a/xml/System.Web.UI.Design/ExpressionEditor.xml b/xml/System.Web.UI.Design/ExpressionEditor.xml index c350bb60669..865da0ff6e3 100644 --- a/xml/System.Web.UI.Design/ExpressionEditor.xml +++ b/xml/System.Web.UI.Design/ExpressionEditor.xml @@ -17,37 +17,37 @@ Defines a set of properties and methods for evaluating an expression that is associated with a control property at design time and to provide an expression editor sheet to the visual design host for use in the expression editor dialog box. This class is abstract. - class to present custom expression editor sheets to the user, and then evaluate the selected expression for design-time rendering. - - When you browse the property for a control in the design-time Properties grid, the visual designer displays a dialog box to set expressions for a control property. You can select the expression type based on a list of expression prefixes. When you select an expression prefix from the list, the visual designer uses the associated and objects to set, evaluate, and convert the expression string based on the syntax for that type of expression. The visual designer sets the expression for the associated control property, and then uses the evaluated expression result to assign control property values that are rendered on the design surface. - - The static methods get the expression editor that is associated with a particular expression prefix or expression builder. The property for an object returns the configured expression prefix. The method evaluates an input expression string. The method returns the implementation that is used to prompt for the custom expression properties in the expressions dialog box. - - Typically, to support a new expression type at design time, you define a unique expression prefix and provide custom and implementations. Optionally, you can provide a custom implementation that defines properties that are used to form the expression in the expressions dialog box. - - The expression prefix identifies the custom expression type and associates an expression with the expression builder and expression editor. When custom expressions are parsed in a page, the expression prefix is used to create instances of the associated and classes. To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. The prefix is not required, but highly recommended. - - - -## Examples - The following code example demonstrates how to derive from the class to define a custom expression editor. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/customexpressioneditor/cs/CustomAppSettingsExpression.cs" id="Snippet1"::: - + class to present custom expression editor sheets to the user, and then evaluate the selected expression for design-time rendering. + + When you browse the property for a control in the design-time Properties grid, the visual designer displays a dialog box to set expressions for a control property. You can select the expression type based on a list of expression prefixes. When you select an expression prefix from the list, the visual designer uses the associated and objects to set, evaluate, and convert the expression string based on the syntax for that type of expression. The visual designer sets the expression for the associated control property, and then uses the evaluated expression result to assign control property values that are rendered on the design surface. + + The static methods get the expression editor that is associated with a particular expression prefix or expression builder. The property for an object returns the configured expression prefix. The method evaluates an input expression string. The method returns the implementation that is used to prompt for the custom expression properties in the expressions dialog box. + + Typically, to support a new expression type at design time, you define a unique expression prefix and provide custom and implementations. Optionally, you can provide a custom implementation that defines properties that are used to form the expression in the expressions dialog box. + + The expression prefix identifies the custom expression type and associates an expression with the expression builder and expression editor. When custom expressions are parsed in a page, the expression prefix is used to create instances of the associated and classes. To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. The prefix is not required, but highly recommended. + + + +## Examples + The following code example demonstrates how to derive from the class to define a custom expression editor. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/customexpressioneditor/cs/CustomAppSettingsExpression.cs" id="Snippet1"::: + ]]> - The following steps are required in deriving a custom class: - -- Override the method to evaluate the custom expression type at design time. - -- Optionally, override the method to return a custom class that defines properties that are combined to form the custom expression. - -- Apply the attribute on the class declaration to associate the custom expression builder with the derived expression editor class. - + The following steps are required in deriving a custom class: + +- Override the method to evaluate the custom expression type at design time. + +- Optionally, override the method to return a custom class that defines properties that are combined to form the custom expression. + +- Apply the attribute on the class declaration to associate the custom expression builder with the derived expression editor class. + For example, the class derives from the class and provides an implementation for evaluating and associating a resource string reference with a control property at design time. The class is associated with the expression prefix and the implementation. The method returns a , which defines the individual properties that form a resource reference expression. @@ -79,11 +79,11 @@ Initializes a new instance of the class. - class is abstract, you cannot create an instance of the class directly using the constructor. - + class is abstract, you cannot create an instance of the class directly using the constructor. + ]]> @@ -125,38 +125,38 @@ Evaluates an expression string and provides the design-time value for a control property. The object referenced by the evaluated expression string, if the expression evaluation succeeded; otherwise, . - method to evaluate an expression and provide the design-time value for an associated control property. - - The visual designer uses the method to parse the expression string at design time, and then calls the method with the parsed expression data. The visual designer uses the evaluated expression result to assign control property values that are rendered on the design surface. - + method to evaluate an expression and provide the design-time value for an associated control property. + + The visual designer uses the method to parse the expression string at design time, and then calls the method with the parsed expression data. The visual designer uses the evaluated expression result to assign control property values that are rendered on the design surface. + ]]> - Classes deriving from the class must override the method to evaluate the custom expression type at design time. - - At a minimum, an implementation must use the following steps: - -1. Evaluate the expression string and determine the object that is referenced by the expression. - -2. Return , if the expression string cannot be evaluated. - -3. Use the method on to determine whether the referenced object can be assigned directly to the control property type, and then, depending on the result, complete one of the following actions: - - - If the referenced object can be assigned directly to the control property, return the referenced object for the expression. - - - If the referenced object is a simple type, such as a string, return the referenced object. - - - Otherwise, determine whether the referenced object can be assigned to or converted to the property type. - -4. Use the method on the object for to determine whether the referenced object can be converted to the control property type, and then, depending on the result, complete one of the following actions: - - - If the object can be converted to the control property type, return the converted object using the method. - - - If the referenced object cannot be assigned or converted to , return the referenced object. - + Classes deriving from the class must override the method to evaluate the custom expression type at design time. + + At a minimum, an implementation must use the following steps: + +1. Evaluate the expression string and determine the object that is referenced by the expression. + +2. Return , if the expression string cannot be evaluated. + +3. Use the method on to determine whether the referenced object can be assigned directly to the control property type, and then, depending on the result, complete one of the following actions: + + - If the referenced object can be assigned directly to the control property, return the referenced object for the expression. + + - If the referenced object is a simple type, such as a string, return the referenced object. + + - Otherwise, determine whether the referenced object can be assigned to or converted to the property type. + +4. Use the method on the object for to determine whether the referenced object can be converted to the control property type, and then, depending on the result, complete one of the following actions: + + - If the object can be converted to the control property type, return the converted object using the method. + + - If the referenced object cannot be assigned or converted to , return the referenced object. + Optionally, the implementation can use the object that is supplied by the implementation to optimize or help in the evaluation of the input expression string. @@ -188,13 +188,13 @@ Gets the expression prefix that identifies expression strings that are supported by the expression editor implementation. A string representing the prefix for expressions supported by the class derived from the ; otherwise, an empty string (""), if the expression editor does not have an associated expression prefix. - and classes. To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. - - Typically, derived classes do not override the property. The base class sets the value based on the attribute for the associated object. - + and classes. To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. + + Typically, derived classes do not override the property. The base class sets the value based on the attribute for the associated object. + ]]> @@ -239,17 +239,17 @@ Returns an implementation that is associated with the specified expression prefix. An implementation associated with ; otherwise, , if is not defined or is not associated with an . - method overloads to find the object that is associated with a particular expression prefix or expression builder type. - - For each custom expression type, an expression prefix identifies the associated expression builder and expression editor. When custom expressions are parsed in a page, the expression prefix is used to create instances of the associated and classes. - - To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. - - To find the associated expression editor for an expression prefix, the method enumerates the available implementations for a matching prefix. The implementations can be configured in the `expressionBuilders` section of the Web configuration file. If an available implementation defines the expression prefix, the method returns the type that is specified in the attribute of the metadata. - + method overloads to find the object that is associated with a particular expression prefix or expression builder type. + + For each custom expression type, an expression prefix identifies the associated expression builder and expression editor. When custom expressions are parsed in a page, the expression prefix is used to create instances of the associated and classes. + + To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. + + To find the associated expression editor for an expression prefix, the method enumerates the available implementations for a matching prefix. The implementations can be configured in the `expressionBuilders` section of the Web configuration file. If an available implementation defines the expression prefix, the method returns the type that is specified in the attribute of the metadata. + ]]> @@ -286,24 +286,24 @@ Returns an implementation that is associated with the specified expression builder type. An implementation associated with ; otherwise, , if cannot be located or has no associated . - overloads to find the object that is associated with a particular expression prefix or expression builder type. - - For each custom expression type, an expression prefix identifies the associated expression builder and expression editor. When custom expressions are parsed in a page, the expression prefix is used to create instances of the associated and classes. - - To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. - - The method enumerates the available implementations to locate `expressionBuilderType`. The implementations can be configured in the `expressionBuilders` section of the Web configuration file. If `expressionBuilderType` is found in the set of available implementations, the method returns the type that is specified in the attribute of the metadata. - + overloads to find the object that is associated with a particular expression prefix or expression builder type. + + For each custom expression type, an expression prefix identifies the associated expression builder and expression editor. When custom expressions are parsed in a page, the expression prefix is used to create instances of the associated and classes. + + To associate an expression prefix with an expression builder and expression editor, apply the and attributes to the custom class and configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. + + The method enumerates the available implementations to locate `expressionBuilderType`. The implementations can be configured in the `expressionBuilders` section of the Web configuration file. If `expressionBuilderType` is found in the set of available implementations, the method returns the type that is specified in the attribute of the metadata. + ]]> - is . - + is . + -or- - + is . @@ -337,20 +337,20 @@ Returns an expression editor sheet that is associated with the current expression editor. An that defines the custom expression properties. - method returns an implementation that defines the strings that are combined to form a custom expression. The visual designer uses an expression editor sheet to prompt for one or more strings that combine into a custom expression. The base class method returns a default expression editor sheet, which uses a single input string to form the expression. The expression editor sheet defines the property grid for the expression. Therefore, the properties that the expression editor exposes become properties that can be defined for the expression in the dialog box. - - Classes deriving from the class optionally can override the method to provide a custom expression editor sheet. A custom expression editor sheet can allow design-time input for multiple properties, which are combined together to form the expression string. - - For example, the class derives from the class and provides an implementation for evaluating and associating a resource string reference with a control property at design time. The class is associated with the expression prefix `Resources` and the implementation. The method returns a , which defines the individual properties that form a resource reference expression. - + method returns an implementation that defines the strings that are combined to form a custom expression. The visual designer uses an expression editor sheet to prompt for one or more strings that combine into a custom expression. The base class method returns a default expression editor sheet, which uses a single input string to form the expression. The expression editor sheet defines the property grid for the expression. Therefore, the properties that the expression editor exposes become properties that can be defined for the expression in the dialog box. + + Classes deriving from the class optionally can override the method to provide a custom expression editor sheet. A custom expression editor sheet can allow design-time input for multiple properties, which are combined together to form the expression string. + + For example, the class derives from the class and provides an implementation for evaluating and associating a resource string reference with a control property at design time. The class is associated with the expression prefix `Resources` and the implementation. The method returns a , which defines the individual properties that form a resource reference expression. + ]]> - Typically, to supply a new expression type at design time, you define a unique expression prefix and provide custom and implementations. Optionally, you can provide a custom implementation that defines properties that are used to form the expression. Even though the configuration file defines the prefix, you should also apply an object and an object. - + Typically, to supply a new expression type at design time, you define a unique expression prefix and provide custom and implementations. Optionally, you can provide a custom implementation that defines properties that are used to form the expression. Even though the configuration file defines the prefix, you should also apply an object and an object. + Override the method to return an expression editor sheet that defines design-time input for multiple properties in a custom expression. When you select a control property and the expression editor type, the visual designer calls the method, and then supplies the current expression string that is set for the control property. Use to set the initial values for the expression properties. Use to initialize a custom expression sheet constructor and to access services that are provided by the designer host. For example, call the method with the type to access project items, documents, or configuration file details that are provided through the visual designer. diff --git a/xml/System.Web.UI.Design/ExpressionEditorSheet.xml b/xml/System.Web.UI.Design/ExpressionEditorSheet.xml index 45a79ba16e2..ab109d7aabb 100644 --- a/xml/System.Web.UI.Design/ExpressionEditorSheet.xml +++ b/xml/System.Web.UI.Design/ExpressionEditorSheet.xml @@ -17,36 +17,36 @@ Represents a design-time editor sheet for a custom expression. This class must be inherited. - property for a control in the design-time properties grid, the visual designer displays a dialog box to set expressions that provide the value for a control property. You can select the expression type based on a list of expression prefixes. When you select an expression prefix from the list, the visual designer uses the associated and objects to evaluate and convert the expression string based on the syntax for that type of expression. The visual designer uses expression editor sheet properties to prompt for one or more strings that combine into the custom expression string. - - Typically, to supply a new expression type at design time, you define a unique expression prefix and provide custom and implementations. Optionally, you can provide a custom implementation that defines properties that are used to form the expression. To associate an expression prefix with an expression builder and an expression editor, apply the attribute and an attribute to the custom class, and then configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. - - The default implementation of the method returns a basic editor sheet, which uses a single input string to form the expression. Custom expression editors that are derived from the can override the method to return a custom editor sheet implementation. Typically, a custom editor sheet contains multiple properties that are used to build the expression string. The method returns the resulting expression string based on the current expression properties. - - For example, the class derives from the class and provides an implementation for evaluating and associating a resource string reference with a control property at design time. The class is associated with the expression prefix `Resources` and the implementation. The method returns a , which defines the individual properties that form a resource reference expression. - - When you inherit from the class, you must override the following members: - -- The method to return a custom editor sheet implementation. - -- The constructor to implement custom initialization actions for your expression editor sheet implementation. - + property for a control in the design-time properties grid, the visual designer displays a dialog box to set expressions that provide the value for a control property. You can select the expression type based on a list of expression prefixes. When you select an expression prefix from the list, the visual designer uses the associated and objects to evaluate and convert the expression string based on the syntax for that type of expression. The visual designer uses expression editor sheet properties to prompt for one or more strings that combine into the custom expression string. + + Typically, to supply a new expression type at design time, you define a unique expression prefix and provide custom and implementations. Optionally, you can provide a custom implementation that defines properties that are used to form the expression. To associate an expression prefix with an expression builder and an expression editor, apply the attribute and an attribute to the custom class, and then configure the expression prefix for an expression builder in the `expressionBuilders` element in the Web configuration file. + + The default implementation of the method returns a basic editor sheet, which uses a single input string to form the expression. Custom expression editors that are derived from the can override the method to return a custom editor sheet implementation. Typically, a custom editor sheet contains multiple properties that are used to build the expression string. The method returns the resulting expression string based on the current expression properties. + + For example, the class derives from the class and provides an implementation for evaluating and associating a resource string reference with a control property at design time. The class is associated with the expression prefix `Resources` and the implementation. The method returns a , which defines the individual properties that form a resource reference expression. + + When you inherit from the class, you must override the following members: + +- The method to return a custom editor sheet implementation. + +- The constructor to implement custom initialization actions for your expression editor sheet implementation. + ]]> - Derive a custom expression editor sheet from the class, if you are defining a new expression type for control property values and you want to build the expression string based on multiple expression property values. A derived class implementation should contain the following: - -- A public property for each distinct value in the expression string that can be set at design time. - -- An implementation of the method that forms the custom expression string from the editor sheet property values. - -- Optionally, a constructor implementation that sets the initial values of the editor sheet properties. - + Derive a custom expression editor sheet from the class, if you are defining a new expression type for control property values and you want to build the expression string based on multiple expression property values. A derived class implementation should contain the following: + +- A public property for each distinct value in the expression string that can be set at design time. + +- An implementation of the method that forms the custom expression string from the editor sheet property values. + +- Optionally, a constructor implementation that sets the initial values of the editor sheet properties. + The associated custom expression editor class creates an instance of the derived editor sheet in the method, initializes that instance with the current expression string set for the control property, and returns the instance to the visual designer. The visual designer allows you to set the expression sheet properties, and then calls the method to form the expression string from the input expression sheet property values. @@ -80,16 +80,16 @@ A service provider implementation supplied by the designer host, used to obtain additional design-time services. Initializes a new instance of the class. - class is abstract, you cannot create an instance of an directly using the constructor. - + class is abstract, you cannot create an instance of an directly using the constructor. + ]]> - When deriving from the class, override the constructor to implement custom initialization actions for your expression editor sheet implementation. - + When deriving from the class, override the constructor to implement custom initialization actions for your expression editor sheet implementation. + For example, a custom expression editor sheet class that implements additional expression properties can define the default values for the expression properties in the constructor. A custom expression editor sheet class can define additional public constructor overloads that use input parameter values to set the initial values for the expression properties. @@ -118,24 +118,24 @@ When overridden in a derived class, returns the expression string that is formed by the expression editor sheet property values. The custom expression string for the current property values. - method returns an expression string that is built from the current expression properties. The visual designer allows you to set the expression sheet properties, and then calls the method to get the expression string and set the control property value. - + method returns an expression string that is built from the current expression properties. The visual designer allows you to set the expression sheet properties, and then calls the method to get the expression string and set the control property value. + ]]> - Derive a custom expression editor sheet from the class, if you are defining a new expression type for control property values and you want to build the expression string based on multiple expression property values. A derived class implementation should contain the following: - -- A public property for each distinct value in the expression string that can be set at design time. - -- An implementation of the method that forms the custom expression string from the editor sheet property values. - -- Optionally, a constructor implementation that sets the initial values of the editor sheet properties. - + Derive a custom expression editor sheet from the class, if you are defining a new expression type for control property values and you want to build the expression string based on multiple expression property values. A derived class implementation should contain the following: + +- A public property for each distinct value in the expression string that can be set at design time. + +- An implementation of the method that forms the custom expression string from the editor sheet property values. + +- Optionally, a constructor implementation that sets the initial values of the editor sheet properties. + The associated custom expression editor class creates an instance of the derived editor sheet in the method, initializes that instance with the current expression string set for the control property, and then returns the instance to the visual designer. The visual designer allows you to set the expression sheet properties, and then calls the method to form the expression string from the input expression sheet property values. @@ -170,11 +170,11 @@ , if the expression string is valid; otherwise . - @@ -212,13 +212,13 @@ Gets the service provider implementation that is used by the expression editor sheet. An , typically provided by the design host, that can be used to obtain additional design-time services. - constructor to set the implementation for a custom expression editor sheet. - - The property can be used to access services that are provided by the designer host. For example, call the method with the interface to access project items, documents, or configuration file details that are provided through the visual designer. - + constructor to set the implementation for a custom expression editor sheet. + + The property can be used to access services that are provided by the designer host. For example, call the method with the interface to access project items, documents, or configuration file details that are provided through the visual designer. + ]]> diff --git a/xml/System.Web.UI.Design/ExpressionsCollectionConverter.xml b/xml/System.Web.UI.Design/ExpressionsCollectionConverter.xml index b81356caa0a..b54bb4b38d9 100644 --- a/xml/System.Web.UI.Design/ExpressionsCollectionConverter.xml +++ b/xml/System.Web.UI.Design/ExpressionsCollectionConverter.xml @@ -17,16 +17,16 @@ Provides a type converter for expression binding collections. - class converts an to a string for the property-editing grid at design time, which always appears as an empty string (""). - - A designer host, such as Visual Studio 2005, uses the and class implementations with the and classes to set the expression bindings for control properties at design time, and the to persist the expressions for run time. Expression strings reference a localizable resource, an application setting, a connection string, or a custom expression type. The expression string is bound to the control property at design time, and then used at run time to determine the value for the property. - + class converts an to a string for the property-editing grid at design time, which always appears as an empty string (""). + + A designer host, such as Visual Studio 2005, uses the and class implementations with the and classes to set the expression bindings for control properties at design time, and the to persist the expressions for run time. Expression strings reference a localizable resource, an application setting, a connection string, or a custom expression type. The expression string is bound to the control property at design time, and then used at run time to determine the value for the property. + > [!NOTE] -> You should never access a type converter directly. This implementation of is intended only for use by an object at design time. - +> You should never access a type converter directly. This implementation of is intended only for use by an object at design time. + ]]> @@ -58,13 +58,13 @@ Initializes a new instance of the class. - [!NOTE] -> You should never access a type converter directly. This implementation of is intended only for use by an object at design time. - +> You should never access a type converter directly. This implementation of is intended only for use by an object at design time. + ]]> @@ -101,13 +101,13 @@ Converts an expression binding collection to the specified type. If is not of type , the object produced by the type conversion; otherwise, if is a string, an empty string (""). - [!NOTE] -> You should never access a type converter directly. This implementation of is intended only for use by an object at design time. - +> You should never access a type converter directly. This implementation of is intended only for use by an object at design time. + ]]> diff --git a/xml/System.Web.UI.Design/HierarchicalDataSourceConverter.xml b/xml/System.Web.UI.Design/HierarchicalDataSourceConverter.xml index c5db2f5dcf2..47d253a830d 100644 --- a/xml/System.Web.UI.Design/HierarchicalDataSourceConverter.xml +++ b/xml/System.Web.UI.Design/HierarchicalDataSourceConverter.xml @@ -17,25 +17,25 @@ Provides a type converter that can retrieve a list of the hierarchical data sources that are accessible to the current component. - class provides methods that can be used to retrieve a list of the hierarchical data sources that are accessible to the current design-time component. - - The type converter is used by Microsoft Visual Studio to provide the values that appear in the list of data sources in the **Properties** window. - + class provides methods that can be used to retrieve a list of the hierarchical data sources that are accessible to the current design-time component. + + The type converter is used by Microsoft Visual Studio to provide the values that appear in the list of data sources in the **Properties** window. + > [!CAUTION] -> You should never access a type converter directly. Instead, call the appropriate converter by using the class. For more information, see the examples in . - - For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). - - - -## Examples - The following code example demonstrates how to associate a with a hierarchical data source property that is contained within a custom control. - - :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HierarchicalDataSourceConverter/CS/HierarchicalDataSourceControl.cs" id="Snippet1"::: - +> You should never access a type converter directly. Instead, call the appropriate converter by using the class. For more information, see the examples in . + + For more information about type converters, see the base class and [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)). + + + +## Examples + The following code example demonstrates how to associate a with a hierarchical data source property that is contained within a custom control. + + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HierarchicalDataSourceConverter/CS/HierarchicalDataSourceControl.cs" id="Snippet1"::: + ]]> @@ -92,11 +92,11 @@ if implements ; otherwise, . - method uses the method to determine which components are available as standard accessible data sources. For the class, a valid data source is a component that implements the interface. - + method uses the method to determine which components are available as standard accessible data sources. For the class, a valid data source is a component that implements the interface. + ]]> diff --git a/xml/System.Web.UI.Design/HtmlControlDesigner.xml b/xml/System.Web.UI.Design/HtmlControlDesigner.xml index b10e0431e82..de35cc0c6f1 100644 --- a/xml/System.Web.UI.Design/HtmlControlDesigner.xml +++ b/xml/System.Web.UI.Design/HtmlControlDesigner.xml @@ -88,7 +88,7 @@ ## Remarks > [!NOTE] -> The property is obsolete. Use the and methods on the property to map properties to styles. Use the method on the class to set styles for the control at design time. +> The property is obsolete. Use the and methods on the property to map properties to styles. Use the method on the class to set styles for the control at design time. ]]> @@ -314,7 +314,7 @@ ## Remarks > [!NOTE] -> The method is obsolete. Use the and methods on the property to map properties to styles. Use the method on the class to set styles for the control at design time. Override the method to manipulate the initial styles for the control at design time. +> The method is obsolete. Use the and methods on the property to map properties to styles. Use the method on the class to set styles for the control at design time. Override the method to manipulate the initial styles for the control at design time. ]]> @@ -359,7 +359,7 @@ ## Remarks > [!NOTE] -> The method is obsolete. Use the and methods on the property to map properties to styles. Use the method on the class to set styles for the control at design time. Override the method for the control designer to perform actions before the designer object is released. +> The method is obsolete. Use the and methods on the property to map properties to styles. Use the method on the class to set styles for the control at design time. Override the method for the control designer to perform actions before the designer object is released. ]]> @@ -407,7 +407,7 @@ The method should be called by a control designer after the control designer has made a change to the data bindings for the control. > [!NOTE] -> The method is obsolete. Use the event on the collection for equivalent control designer functionality. +> The method is obsolete. Use the event on the collection for equivalent control designer functionality. ]]> diff --git a/xml/System.Web.UI.Design/IControlDesignerView.xml b/xml/System.Web.UI.Design/IControlDesignerView.xml index a51dc22d9b3..3106aadeff4 100644 --- a/xml/System.Web.UI.Design/IControlDesignerView.xml +++ b/xml/System.Web.UI.Design/IControlDesignerView.xml @@ -14,11 +14,11 @@ Provides an interface for access to the visual representation and content of a control at design time. - @@ -264,17 +264,17 @@ An event raised by the design host for the view and designer component. - is raised by the design host if any of the following occur: - -- The user clicks on the view in the design host, - -- The design host repaints the client region on the design surface, - -- The user has elected to change the editing mode of an editable region corresponding to a template. - + is raised by the design host if any of the following occur: + +- The user clicks on the view in the design host, + +- The design host repaints the client region on the design surface, + +- The user has elected to change the editing mode of an editable region corresponding to a template. + ]]> diff --git a/xml/System.Web.UI.Design/IHtmlControlDesignerBehavior.xml b/xml/System.Web.UI.Design/IHtmlControlDesignerBehavior.xml index 24879589269..b75964870e0 100644 --- a/xml/System.Web.UI.Design/IHtmlControlDesignerBehavior.xml +++ b/xml/System.Web.UI.Design/IHtmlControlDesignerBehavior.xml @@ -21,13 +21,13 @@ Defines an interface that enables the extension of specific behaviors of an HTML control designer. - [!NOTE] -> The interface is obsolete. Use the and interfaces for equivalent control designer functionality. - +> The interface is obsolete. Use the and interfaces for equivalent control designer functionality. + ]]> @@ -112,13 +112,13 @@ Gets the specified attribute. The attribute that was retrieved. - [!NOTE] -> The method is obsolete. Use the method on the property of the class for equivalent control designer functionality. - +> The method is obsolete. Use the method on the property of the class for equivalent control designer functionality. + ]]> @@ -156,13 +156,13 @@ Gets the specified style attribute. The style attribute that was retrieved. - [!NOTE] -> The method is obsolete. Use the method on the class for equivalent control designer functionality. - +> The method is obsolete. Use the method on the class for equivalent control designer functionality. + ]]> @@ -196,13 +196,13 @@ if the attribute syntax is case-insensitive; otherwise, . Removes the specified attribute. - [!NOTE] -> The method is obsolete. Use the method on the property of the class for equivalent control designer functionality. - +> The method is obsolete. Use the method on the property of the class for equivalent control designer functionality. + ]]> @@ -270,13 +270,13 @@ if the attribute syntax is case-insensitive; otherwise, . Sets the specified attribute to the specified object. - [!NOTE] -> The method is obsolete. Use the method on the property of the class for equivalent control designer functionality. - +> The method is obsolete. Use the method on the property of the class for equivalent control designer functionality. + ]]> @@ -315,13 +315,13 @@ if the attribute syntax is case-insensitive; otherwise, . Sets the specified style attribute to the specified object. - [!NOTE] -> The method is obsolete. Use the method on the class for equivalent control designer functionality. - +> The method is obsolete. Use the method on the class for equivalent control designer functionality. + ]]> diff --git a/xml/System.Web.UI.Design/ITemplateEditingFrame.xml b/xml/System.Web.UI.Design/ITemplateEditingFrame.xml index a59ab2c074f..07250ab71c7 100644 --- a/xml/System.Web.UI.Design/ITemplateEditingFrame.xml +++ b/xml/System.Web.UI.Design/ITemplateEditingFrame.xml @@ -25,15 +25,15 @@ Provides an interface to manage a template editing area. - [!NOTE] -> The interface is obsolete. Use the property to access template groups, and template definitions within template groups, for a control designer. - - A template editing frame represents the UI for a template editor of a templated control designer. - +> The interface is obsolete. Use the property to access template groups, and template definitions within template groups, for a control designer. + + A template editing frame represents the UI for a template editor of a templated control designer. + ]]> @@ -66,13 +66,13 @@ if changes to the document should be saved; otherwise, . Closes the control and optionally saves any changes. - [!NOTE] -> The interface is obsolete. Use the property on each template group element in the collection of a control designer. - +> The interface is obsolete. Use the property on each template group element in the collection of a control designer. + ]]> @@ -101,13 +101,13 @@ Gets the style for the editing frame. A that represents the Web server control style attributes for the editing frame. - [!NOTE] -> The interface is obsolete. Use the property on each template group element in the collection of a control designer. - +> The interface is obsolete. Use the property on each template group element in the collection of a control designer. + ]]> @@ -136,13 +136,13 @@ Gets or sets the initial height of the control. The initial height of the control. - [!NOTE] -> The interface is obsolete. Use the property in the property for each template group element in the collection of a control designer. - +> The interface is obsolete. Use the property in the property for each template group element in the collection of a control designer. + ]]> @@ -170,13 +170,13 @@ Gets or sets the initial width of the control. The initial width of the control. - [!NOTE] -> The interface is obsolete. Use the property in the property for each template group element in the collection of a control designer. - +> The interface is obsolete. Use the property in the property for each template group element in the collection of a control designer. + ]]> @@ -204,13 +204,13 @@ Gets the name of the editing frame. The name of the editing frame. - [!NOTE] -> The interface is obsolete. The template group name is provided in the property of each template group element in the collection of a control designer. - +> The interface is obsolete. The template group name is provided in the property of each template group element in the collection of a control designer. + ]]> @@ -266,13 +266,13 @@ The new height for the control. Resizes the control to the specified width and height. - [!NOTE] -> The interface is obsolete. Use the property on each template group element in the collection of a control designer. - +> The interface is obsolete. Use the property on each template group element in the collection of a control designer. + ]]> @@ -324,13 +324,13 @@ Gets a set of names of templates to use. An array of template names. - [!NOTE] -> The interface is obsolete. A template name is provided through the property of a object. Enumerate the collection of template definitions by using the property of each element in the collection of a control designer. - +> The interface is obsolete. A template name is provided through the property of a object. Enumerate the collection of template definitions by using the property of each element in the collection of a control designer. + ]]> @@ -360,13 +360,13 @@ Gets the template styles for the control. An array of objects that represent the template styles for the control. - [!NOTE] -> The interface is obsolete. A template style is provided through the property of a object. Enumerate the collection of template definitions by using the property of each element in the collection of a control designer. - +> The interface is obsolete. A template style is provided through the property of a object. Enumerate the collection of template definitions by using the property of each element in the collection of a control designer. + ]]> @@ -399,13 +399,13 @@ The new name for the control. Changes the name of the control to the specified name. - [!NOTE] -> The interface is obsolete. Use the property on each template group element in the collection of a control designer. - +> The interface is obsolete. Use the property on each template group element in the collection of a control designer. + ]]> @@ -434,13 +434,13 @@ Gets or sets the verb that invokes the template. A that invokes the template. - [!NOTE] -> The interface is obsolete. Use the property of each template group in the collection for a control designer. - +> The interface is obsolete. Use the property of each template group in the collection for a control designer. + ]]> diff --git a/xml/System.Web.UI.Design/ITemplateEditingService.xml b/xml/System.Web.UI.Design/ITemplateEditingService.xml index b73ccdad67a..90dce78c5a5 100644 --- a/xml/System.Web.UI.Design/ITemplateEditingService.xml +++ b/xml/System.Web.UI.Design/ITemplateEditingService.xml @@ -21,13 +21,13 @@ Provides services for editing control templates at design time. - [!NOTE] -> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -73,13 +73,13 @@ Creates a new template editing frame for the specified templated control designer, using the specified name and templates. The new . - [!NOTE] -> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -120,13 +120,13 @@ Creates a new template editing frame for the specified , using the specified name, template names, control style, and template styles. The new . - [!NOTE] -> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -159,13 +159,13 @@ Gets the name of the parent template. The name of the parent template. - [!NOTE] -> The interface is obsolete. Use the property of the class for equivalent design time functionality. - +> The interface is obsolete. Use the property of the class for equivalent design time functionality. + ]]> @@ -195,14 +195,14 @@ if the service supports nested template editing; otherwise, . - [!NOTE] -> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The interface is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> diff --git a/xml/System.Web.UI.Design/IWebFormReferenceManager.xml b/xml/System.Web.UI.Design/IWebFormReferenceManager.xml index 41ff4c987e6..eb91f8b45e5 100644 --- a/xml/System.Web.UI.Design/IWebFormReferenceManager.xml +++ b/xml/System.Web.UI.Design/IWebFormReferenceManager.xml @@ -21,15 +21,15 @@ Provides an interface that can look up information about the types used in the current Web Forms project. - [!NOTE] -> The interface is obsolete. Use the class for equivalent designer functionality. - - A Web Forms document designer must implement this interface. Implementing this interface enables a designer to manage references and provide information related to Web Forms controls within the project. - +> The interface is obsolete. Use the class for equivalent designer functionality. + + A Web Forms document designer must implement this interface. Implementing this interface enables a designer to manage references and provide information related to Web Forms controls within the project. + ]]> @@ -62,13 +62,13 @@ Gets the type of the specified object. The of the object, if it could be resolved. - [!NOTE] -> The method is obsolete. Use the method on the class for equivalent designer functionality. - +> The method is obsolete. Use the method on the class for equivalent designer functionality. + ]]> @@ -96,13 +96,13 @@ Gets the register directives for the current project. The register directives for the current project. - [!NOTE] -> The method is obsolete. Use the method on the class for equivalent designer functionality. - +> The method is obsolete. Use the method on the class for equivalent designer functionality. + ]]> @@ -133,13 +133,13 @@ Gets the tag prefix for the specified type of object. The tag prefix for the specified object type, if it could be located. - [!NOTE] -> The method is obsolete. Use the method on the class for equivalent designer functionality. - +> The method is obsolete. Use the method on the class for equivalent designer functionality. + ]]> diff --git a/xml/System.Web.UI.Design/IWebFormsDocumentService.xml b/xml/System.Web.UI.Design/IWebFormsDocumentService.xml index 7dc83409f1a..da740c3c434 100644 --- a/xml/System.Web.UI.Design/IWebFormsDocumentService.xml +++ b/xml/System.Web.UI.Design/IWebFormsDocumentService.xml @@ -21,13 +21,13 @@ Provides methods to access services for tracking the loading state of a Web Forms document, handling events at load time, accessing a document's location, managing a document's undo service, and setting a new selection within the document. - [!NOTE] -> The interface is obsolete. Use the class for equivalent designer functionality. - +> The interface is obsolete. Use the class for equivalent designer functionality. + ]]> @@ -55,11 +55,11 @@ Creates a discardable undo unit. The new discardable undo unit. - @@ -88,11 +88,11 @@ The undo unit to discard. Discards the specified undo unit. - @@ -118,13 +118,13 @@ Gets the URL at which the document is located. The URL at which the document is located, or if the document has no associated URL. - [!NOTE] -> The interface property is obsolete. Use the property on the class for equivalent designer functionality. - +> The interface property is obsolete. Use the property on the class for equivalent designer functionality. + ]]> @@ -154,11 +154,11 @@ if actions should be undoable; otherwise, . Enables the ability to undo actions that occur within undoable action units or transactions. - @@ -185,13 +185,13 @@ if the document service is loading; otherwise, . - [!NOTE] -> The interface property is obsolete. Use the property on the class for equivalent designer functionality. - +> The interface property is obsolete. Use the property on the class for equivalent designer functionality. + ]]> @@ -216,15 +216,15 @@ Occurs when the service has finished loading. - [!NOTE] -> The interface event is obsolete. Use the event on the class for equivalent designer functionality. - - This event provides an opportunity to perform operations immediately after loading has completed. Events that should occur at load time can be registered as event handlers for this event. - +> The interface event is obsolete. Use the event on the class for equivalent designer functionality. + + This event provides an opportunity to perform operations immediately after loading has completed. Events that should occur at load time can be registered as event handlers for this event. + ]]> @@ -250,11 +250,11 @@ When implemented in a derived class, updates the current selection. - diff --git a/xml/System.Web.UI.Design/PostBackTriggerControlIDConverter.xml b/xml/System.Web.UI.Design/PostBackTriggerControlIDConverter.xml index f30dd192ecc..6dfdba31b2f 100644 --- a/xml/System.Web.UI.Design/PostBackTriggerControlIDConverter.xml +++ b/xml/System.Web.UI.Design/PostBackTriggerControlIDConverter.xml @@ -17,13 +17,13 @@ Provides a type converter that retrieves a list of control IDs in the current container. - class derives from the class and provides a list of control IDs for display in a property grid control in design-time environments. - - For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). - + class derives from the class and provides a list of control IDs for display in a property grid control in design-time environments. + + For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). + ]]> @@ -50,13 +50,13 @@ Initializes a new instance of the class. - [!NOTE] -> You should never access a type converter directly. Instead, call the appropriate converter by using a object. - +> You should never access a type converter directly. Instead, call the appropriate converter by using a object. + ]]> diff --git a/xml/System.Web.UI.Design/ReadWriteControlDesigner.xml b/xml/System.Web.UI.Design/ReadWriteControlDesigner.xml index 0686e89fc12..da3e2c6fd4a 100644 --- a/xml/System.Web.UI.Design/ReadWriteControlDesigner.xml +++ b/xml/System.Web.UI.Design/ReadWriteControlDesigner.xml @@ -24,15 +24,15 @@ Extends design-time behavior for read/write server controls. - [!NOTE] -> The class is obsolete. Use the class for equivalent control designer functionality. - - This control designer provides the ability to drop controls onto the control for this designer. - +> The class is obsolete. Use the class for equivalent control designer functionality. + + This control designer provides the ability to drop controls onto the control for this designer. + ]]> @@ -57,13 +57,13 @@ Initializes an instance of the class. - [!NOTE] -> The class is obsolete. Use the class for equivalent control designer functionality. - +> The class is obsolete. Use the class for equivalent control designer functionality. + ]]> @@ -89,13 +89,13 @@ Gets the HTML that is used to represent the control at design time. The HTML that is used to represent the control at design time. - [!NOTE] -> The class is obsolete. Use the class for equivalent control designer functionality. - +> The class is obsolete. Use the class for equivalent control designer functionality. + ]]> @@ -128,16 +128,16 @@ The value of the property. Maps a property, including description and value, to an intrinsic HTML style. - [!NOTE] -> The method is obsolete. Use the method for equivalent control designer functionality. - +> The method is obsolete. Use the method for equivalent control designer functionality. + > [!NOTE] -> this method must be overridden in a derived class to implement the designer. - +> this method must be overridden in a derived class to implement the designer. + ]]> @@ -170,13 +170,13 @@ Provides notification that is raised when a behavior is attached to the designer. - [!NOTE] -> The method is obsolete. Use the members of the property instead. For example, use the and methods on the property to map properties to styles. - +> The method is obsolete. Use the members of the property instead. For example, use the and methods on the property to map properties to styles. + ]]> @@ -209,15 +209,15 @@ The object that provides data for the event. Represents the method that will handle the event of the class. - [!NOTE] -> The class is obsolete. Use the class for equivalent control designer functionality. - - The event occurs after a property has been changed. This method allows implementers to do any processing that may be needed after a property change. - +> The class is obsolete. Use the class for equivalent control designer functionality. + + The event occurs after a property has been changed. This method allows implementers to do any processing that may be needed after a property change. + ]]> @@ -244,13 +244,13 @@ Refreshes the display of the control. - [!NOTE] -> The class is obsolete. Use the class for equivalent control designer functionality. - +> The class is obsolete. Use the class for equivalent control designer functionality. + ]]> diff --git a/xml/System.Web.UI.Design/ScriptManagerDesigner.xml b/xml/System.Web.UI.Design/ScriptManagerDesigner.xml index 8b11f6fd3ae..13060c82212 100644 --- a/xml/System.Web.UI.Design/ScriptManagerDesigner.xml +++ b/xml/System.Web.UI.Design/ScriptManagerDesigner.xml @@ -17,11 +17,11 @@ Provides design-time support for the control in a visual designer. - class documentation. - + class documentation. + ]]> @@ -52,11 +52,11 @@ Initializes a new instance of the class. - class when it creates the associated control or a copy of that control on the design surface. - + class when it creates the associated control or a copy of that control on the design surface. + ]]> @@ -112,11 +112,11 @@ Returns the HTML markup that represents the control at design time. The markup that is used to render the at design time. - control at design time. - + control at design time. + ]]> @@ -235,21 +235,21 @@ Returns a collection of all controls that are defined in a Web page's control and controls. A read-only collection of controls. - and control. - - When you use the method, be aware of the following guidelines: - -- objects with the same and properties are removed as duplicates. - -- objects with the same are not removed as duplicates at design time. However, they are removed as duplicates at run time. - -- The method is used to return a fully qualified URL for the property of a object. - -- The objects in the returned collection are cloned versions of the original script references and therefore cannot be modified in designer code by using this collection. - + and control. + + When you use the method, be aware of the following guidelines: + +- objects with the same and properties are removed as duplicates. + +- objects with the same are not removed as duplicates at design time. However, they are removed as duplicates at run time. + +- The method is used to return a fully qualified URL for the property of a object. + +- The objects in the returned collection are cloned versions of the original script references and therefore cannot be modified in designer code by using this collection. + ]]> diff --git a/xml/System.Web.UI.Design/SupportsPreviewControlAttribute.xml b/xml/System.Web.UI.Design/SupportsPreviewControlAttribute.xml index a148812de7e..c9976c1faed 100644 --- a/xml/System.Web.UI.Design/SupportsPreviewControlAttribute.xml +++ b/xml/System.Web.UI.Design/SupportsPreviewControlAttribute.xml @@ -23,34 +23,34 @@ Indicates whether a control designer requires a preview instance of the control at design time. This class cannot be inherited. - attribute to a control designer class to indicate the type of preview control that is supported by the control designer. Use this attribute to change a preview control for design-time rendering without affecting the actual persisted instance of the associated control. - - Typically, you specify the when declaring a custom designer class that is derived from the class. The value of the property for the attribute determines the behavior for the and members in the base class. - - Set the property to `true` to indicate that the designer uses a temporary copy of the associated control to generate the design-time HTML. Changes to the temporary control are not persisted. - - Set the property to `false` to indicate that the designer returns the control instance, specifically the property, from the method. Changes to the control object are persisted. - - For example, the class is marked with the set to `true`. The designer uses the preview control with the automatic style formatting task, which allows the user to preview various autoformat stylesthat can be applied to the calendar. As the user selects different autoformat styles in the user interface, the selected style scheme is applied to the preview control. Applying a new style to the preview control does not change the scheme that is applied to the instance of the control in the designer. - - If the is not specified in the control designer declaration, the behavior is equivalent to specifying the as `false`. - + attribute to a control designer class to indicate the type of preview control that is supported by the control designer. Use this attribute to change a preview control for design-time rendering without affecting the actual persisted instance of the associated control. + + Typically, you specify the when declaring a custom designer class that is derived from the class. The value of the property for the attribute determines the behavior for the and members in the base class. + + Set the property to `true` to indicate that the designer uses a temporary copy of the associated control to generate the design-time HTML. Changes to the temporary control are not persisted. + + Set the property to `false` to indicate that the designer returns the control instance, specifically the property, from the method. Changes to the control object are persisted. + + For example, the class is marked with the set to `true`. The designer uses the preview control with the automatic style formatting task, which allows the user to preview various autoformat stylesthat can be applied to the calendar. As the user selects different autoformat styles in the user interface, the selected style scheme is applied to the preview control. Applying a new style to the preview control does not change the scheme that is applied to the instance of the control in the designer. + + If the is not specified in the control designer declaration, the behavior is equivalent to specifying the as `false`. + > [!NOTE] -> Designer classes derived from the class can override the and members, and ignore the attribute. To determine the expected behavior for and , see the reference documentation for the derived control designer class. - - For general information about using attributes, see [Attributes Overview](https://msdn.microsoft.com/library/a4daf212-2410-423d-a800-7a08864e9bff) and [Attributes](/dotnet/standard/attributes/). For more information about design-time attributes, see [Attributes and Design-Time Support](https://msdn.microsoft.com/library/7aed9eb4-124b-4a15-a0a3-458f37ac9ef7). - - - -## Examples - The following code example demonstrates how to mark a control designer with the attribute. The code example derives an ASP.NET server control from the class and associates the ASP.NET server control with a custom control designer implementation. The control designer class declaration is marked with the `SupportsPreviewControl` attribute set to `true`. The control designer overrides the method and encloses the design-time HTML for the control in italic tags. - +> Designer classes derived from the class can override the and members, and ignore the attribute. To determine the expected behavior for and , see the reference documentation for the derived control designer class. + + For general information about using attributes, see [Attributes Overview](https://msdn.microsoft.com/library/a4daf212-2410-423d-a800-7a08864e9bff) and [Attributes](/dotnet/standard/attributes/). For more information about design-time attributes, see [Attributes and Design-Time Support](https://msdn.microsoft.com/library/7aed9eb4-124b-4a15-a0a3-458f37ac9ef7). + + + +## Examples + The following code example demonstrates how to mark a control designer with the attribute. The code example derives an ASP.NET server control from the class and associates the ASP.NET server control with a custom control designer implementation. The control designer class declaration is marked with the `SupportsPreviewControl` attribute set to `true`. The control designer overrides the method and encloses the design-time HTML for the control in italic tags. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.SupportsPreviewControlAttribute/CS/supportspreviewdesigner.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.SupportsPreviewControlAttribute/VB/supportspreviewdesigner.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.SupportsPreviewControlAttribute/VB/supportspreviewdesigner.vb" id="Snippet1"::: + ]]> @@ -85,11 +85,11 @@ The initial value to assign for . Initializes a new instance of the class and sets the initial value of the property. - class directly. Apply the to the class declaration of the custom control designer in the source code. - + class directly. Apply the to the class declaration of the custom control designer in the source code. + ]]> @@ -113,13 +113,13 @@ Gets an instance of the class that is set to the default preview value. This field is read-only. - property of the field is set to `false`. - - Use the method to determine whether the value for the property is set to the default preview value. - + property of the field is set to `false`. + + Use the method to determine whether the value for the property is set to the default preview value. + ]]> @@ -150,13 +150,13 @@ if is a attribute and its value is the same as this instance of ; otherwise, . - method overrides the method. - - The method compares two instances based on the value of their properties. - + method overrides the method. + + The method compares two instances based on the value of their properties. + ]]> @@ -183,13 +183,13 @@ Returns the hash code for this instance of the class. A 32-bit signed integer hash code for the current instance of . - method overrides the method. - - The method generates the same hash code for two objects that are equal according to the method. The hash code is suitable for use in hashing algorithms and data structures, such as hash tables. - + method overrides the method. + + The method generates the same hash code for two objects that are equal according to the method. The hash code is suitable for use in hashing algorithms and data structures, such as hash tables. + ]]> @@ -219,11 +219,11 @@ if the current instance of is equal to the default preview attribute value; otherwise, . - method compares the value for the property of the current object with the value for the property of the static field. - + method compares the value for the property of the current object with the value for the property of the static field. + ]]> @@ -256,15 +256,15 @@ if the designer uses a temporary copy of the associated control for design-time preview; if the designer uses an instance of the control that is contained in the designer. - property by applying the attribute to a custom designer class declaration. The value of the property for the attribute determines the behavior for the and members in the base class. - - Set the property to `true` to indicate that the designer uses a temporary copy of the associated control to generate the design-time HTML. Changes to the temporary control are not persisted. - - Set the property to `false` to indicate that the designer returns the control instance, specifically the property, from the method. Changes to the control object are persisted. - + property by applying the attribute to a custom designer class declaration. The value of the property for the attribute determines the behavior for the and members in the base class. + + Set the property to `true` to indicate that the designer uses a temporary copy of the associated control to generate the design-time HTML. Changes to the temporary control are not persisted. + + Set the property to `false` to indicate that the designer returns the control instance, specifically the property, from the method. Changes to the control object are persisted. + ]]> diff --git a/xml/System.Web.UI.Design/TemplateEditingService.xml b/xml/System.Web.UI.Design/TemplateEditingService.xml index cd78c560df2..f7c62623a52 100644 --- a/xml/System.Web.UI.Design/TemplateEditingService.xml +++ b/xml/System.Web.UI.Design/TemplateEditingService.xml @@ -31,13 +31,13 @@ Provides services for editing control templates at design time. This class cannot be inherited. - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. + ]]> @@ -66,13 +66,13 @@ An implementation, used to access components at design time. Initializes a new instance of the class with the specified designer host. - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. + ]]> @@ -125,13 +125,13 @@ Creates a new template editing frame for the specified templated control designer, using the specified name and templates. The new . - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. + ]]> @@ -173,13 +173,13 @@ Creates a new template editing frame for the specified object, using the specified name, template names, control style, and template styles. The new . - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each that is defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each that is defined for a control designer. + ]]> @@ -264,13 +264,13 @@ Gets the name of the parent template. The name of the parent template. - [!NOTE] -> The class is obsolete. Use the property of the class for equivalent design-time functionality. - +> The class is obsolete. Use the property of the class for equivalent design-time functionality. + ]]> @@ -301,15 +301,15 @@ if the service supports nested template editing; otherwise, . - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. - - The property indicates whether a template editor can be invoked from a component of a parent template editor's templated control. This is called nested template editing, because a template editor is invoked for a component of a control for which a template editor is already operating. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a object for each in each that is defined for a control designer. + + The property indicates whether a template editor can be invoked from a component of a parent template editor's templated control. This is called nested template editing, because a template editor is invoked for a component of a control for which a template editor is already operating. + ]]> diff --git a/xml/System.Web.UI.Design/TemplateEditingVerb.xml b/xml/System.Web.UI.Design/TemplateEditingVerb.xml index ddfa5059ca5..03ba8cdbae1 100644 --- a/xml/System.Web.UI.Design/TemplateEditingVerb.xml +++ b/xml/System.Web.UI.Design/TemplateEditingVerb.xml @@ -28,13 +28,13 @@ Represents a designer verb that creates a template editing frame, and that can be invoked only by a template editor. - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -76,13 +76,13 @@ An optional integer value that can be used by a designer, typically to indicate the index of the verb within a set of verbs. Initializes a new instance of the class with the specified verb text and index. - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -115,13 +115,13 @@ The that can use this verb. Initializes a new instance of the class. - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -165,14 +165,14 @@ Releases all resources used by the . - allows the resources used by the to be reallocated for other purposes. - + allows the resources used by the to be reallocated for other purposes. + > [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -205,19 +205,19 @@ to release both managed and unmanaged resources; to release only unmanaged resources. Releases the unmanaged resources used by the and optionally releases the managed resources. - method, if it has been overridden. `Dispose` invokes the protected `Dispose(Boolean)` method with `disposing` set to `true`. `Finalize` specifies the `disposing` parameter as `false`. - - When `disposing` is `true`, this method releases all resources held by any managed objects that this references. This method invokes the `Dispose` method of each referenced object. - + method, if it has been overridden. `Dispose` invokes the protected `Dispose(Boolean)` method with `disposing` set to `true`. `Finalize` specifies the `disposing` parameter as `false`. + + When `disposing` is `true`, this method releases all resources held by any managed objects that this references. This method invokes the `Dispose` method of each referenced object. + ## Notes to inheritors The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - + `Dispose` can be called multiple times by other objects. When overriding `Dispose(Boolean)`, be careful not to reference objects that have been previously disposed of in an earlier call to `Dispose`. For more information about how to implement `Dispose(Boolean)`, see [Implementing a Dispose Method](/dotnet/standard/garbage-collection/implementing-dispose). - + For more information about `Dispose` and , see [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged) and [Overriding the Finalize Method](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/ddae83kx(v=vs.100)). ]]> @@ -248,18 +248,18 @@ For more information about `Dispose` and , see [Cle Attempts to free resources before the object is reclaimed by garbage collection. - and cleans up resources by calling `Dispose(false)`. Override `Dispose(Boolean)` to customize the cleanup. - - 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 method. - - For more information, see [Finalize Methods and Destructors](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/0s71x931(v%3dvs.100)), [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged), and [Overriding the Finalize Method](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/ddae83kx(v=vs.100)). - + and cleans up resources by calling `Dispose(false)`. Override `Dispose(Boolean)` to customize the cleanup. + + 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 method. + + For more information, see [Finalize Methods and Destructors](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/0s71x931(v%3dvs.100)), [Cleaning Up Unmanaged Resources](/dotnet/standard/garbage-collection/unmanaged), and [Overriding the Finalize Method](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/ddae83kx(v=vs.100)). + > [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> @@ -294,14 +294,14 @@ For more information about `Dispose` and , see [Cle Gets the index or other user data for the verb. The index or user data for the verb. - [!NOTE] -> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. - +> The class is obsolete. Expose templates through the property of a control designer. The design host creates a for each defined for a control designer. + ]]> diff --git a/xml/System.Web.UI.Design/TemplateGroupCollection.xml b/xml/System.Web.UI.Design/TemplateGroupCollection.xml index c6d2daaa429..affa45d8522 100644 --- a/xml/System.Web.UI.Design/TemplateGroupCollection.xml +++ b/xml/System.Web.UI.Design/TemplateGroupCollection.xml @@ -27,43 +27,43 @@ Represents a collection of objects within a control designer. This class cannot be inherited. - class, and any derived class, defines the property as a object. The property is typically used only by a design host such as Visual Studio 2005. - - The collection dynamically increases in size as objects are added. Indexes in this collection are zero-based. Use the property to determine how many groups are in the collection. - - Additionally, use the methods and properties to provide the following functionality: - -- The method to add a single group to the collection. - -- The method to add a group at a particular index within the collection. - -- The method to remove a group. - -- The method to remove the group at a particular index. - -- The method to determine whether a particular group is already in the collection. - -- The method to retrieve the index of a group within the collection. - -- The indexer to get or set the group at a particular index, using array notation. - -- The method to add multiple groups to the collection. - - You can add multiple groups either as an array of groups or as a object that you retrieve through the property of another control designer. - -- The method to remove all groups from the collection. - - - -## Examples - The following code example demonstrates how to define a simple control designer that is derived from the class. The derived control designer implements the property by getting the template groups that are defined for the base class and adding a template group that is specific to the derived control designer. - + class, and any derived class, defines the property as a object. The property is typically used only by a design host such as Visual Studio 2005. + + The collection dynamically increases in size as objects are added. Indexes in this collection are zero-based. Use the property to determine how many groups are in the collection. + + Additionally, use the methods and properties to provide the following functionality: + +- The method to add a single group to the collection. + +- The method to add a group at a particular index within the collection. + +- The method to remove a group. + +- The method to remove the group at a particular index. + +- The method to determine whether a particular group is already in the collection. + +- The method to retrieve the index of a group within the collection. + +- The indexer to get or set the group at a particular index, using array notation. + +- The method to add multiple groups to the collection. + + You can add multiple groups either as an array of groups or as a object that you retrieve through the property of another control designer. + +- The method to remove all groups from the collection. + + + +## Examples + The following code example demonstrates how to define a simple control designer that is derived from the class. The derived control designer implements the property by getting the template groups that are defined for the base class and adding a template group that is specific to the derived control designer. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.UI.Design.TemplateGroupCollection/CS/templategroupcollectionsample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.TemplateGroupCollection/VB/templategroupcollectionsample.vb" id="Snippet1"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.UI.Design.TemplateGroupCollection/VB/templategroupcollectionsample.vb" id="Snippet1"::: + ]]> @@ -96,11 +96,11 @@ Initializes a new instance of the class. - constructor to create an empty collection. You can add elements to the collection by using the , , or method. - + constructor to create an empty collection. You can add elements to the collection by using the , , or method. + ]]> ASP.NET Control Designers Overview @@ -132,13 +132,13 @@ Adds the specified object to the end of the collection. The index at which the was added to the collection. - method adds the specified object to the end of the collection. To add a object to the collection at a specific index location, use the method. - - To add multiple groups to the collection, use the method. - + method adds the specified object to the end of the collection. To add a object to the collection at a specific index location, use the method. + + To add multiple groups to the collection, use the method. + ]]> @@ -170,11 +170,11 @@ A that contains the groups to add to the collection. Adds the template groups in an existing object to the current object. - method adds multiple groups to the collection. To add a single object to the end of the collection, use the method. To add a object to the collection at a specific index location, use the method. - + method adds multiple groups to the collection. To add a single object to the end of the collection, use the method. To add a object to the collection at a specific index location, use the method. + ]]> @@ -204,11 +204,11 @@ Removes all groups from the collection. - method to remove all groups from the collection. To remove a specific group from the collection, use the method. To remove a group at a particular index, use the method. - + method to remove all groups from the collection. To remove a specific group from the collection, use the method. To remove a group at a particular index, use the method. + ]]> ASP.NET Control Designers Overview @@ -241,13 +241,13 @@ if the is in the collection; otherwise, . - method determines equality by using the method on the objects. - - The method performs a linear search; therefore, the average execution time is proportional to the property. Because template group collections typically are small, the performance of the linear search operation is not critical. - + method determines equality by using the method on the objects. + + The method performs a linear search; therefore, the average execution time is proportional to the property. Because template group collections typically are small, the performance of the linear search operation is not critical. + ]]> @@ -281,22 +281,22 @@ The zero-based index in at which copying begins. Copies the groups in the collection to a compatible one-dimensional array, starting at the specified index of the target array. - object in the same order in which the group elements are indexed within the object. - + object in the same order in which the group elements are indexed within the object. + ]]> - is multidimensional. - - -or- - - is greater than or equal to the length of . - - -or- - + is multidimensional. + + -or- + + is greater than or equal to the length of . + + -or- + The number of elements in the source is greater than the available space from to the end of . is less than zero. @@ -327,11 +327,11 @@ Gets the number of objects in the collection. The number of objects in the collection. - property generally is used to determine the upper boundary index when iterating through objects in the collection. Because the collection indexes are zero-based, the first element is at index `0` and the last element is at index `Count-1`. - + property generally is used to determine the upper boundary index when iterating through objects in the collection. Because the collection indexes are zero-based, the first element is at index `0` and the last element is at index `Count-1`. + ]]> ASP.NET Control Designers Overview @@ -363,13 +363,13 @@ Returns the index of the specified object within the collection. The zero-based index of the first occurrence of within the collection; otherwise, -1, if is not in the collection. - method determines equality by using the method on the objects. - - The performs a linear search; therefore, the average execution time is proportional to the property. Because template group collections typically are small, the performance of the linear search operation is not critical. - + method determines equality by using the method on the objects. + + The performs a linear search; therefore, the average execution time is proportional to the property. Because template group collections typically are small, the performance of the linear search operation is not critical. + ]]> @@ -403,21 +403,21 @@ The to insert into the collection. Inserts a object into the collection at the specified index. - method adds a object to the collection at a specific index location. To add a single to the end of the collection, use the method. To add multiple groups to the collection, use the method. - + method adds a object to the collection at a specific index location. To add a single to the end of the collection, use the method. To add multiple groups to the collection, use the method. + > [!NOTE] -> When you insert an item into the collection, the indexes change for subsequent items in the collection. - +> When you insert an item into the collection, the indexes change for subsequent items in the collection. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. ASP.NET Control Designers Overview @@ -449,20 +449,20 @@ Gets or sets a object at the specified index in the collection. The at in the collection. - indexer to retrieve the group at a specified `index` within the collection or to set the group at a specified `index` within the collection. You can index elements in the collection by using array notation. For example, you can index an element at index `i` with the notation `TemplateGroups(i)` for Microsoft VisualBasic or `TemplateGroups[i]` for C#. - - When you have a reference to the group object and need the index of the object in the collection, use the method. - + indexer to retrieve the group at a specified `index` within the collection or to set the group at a specified `index` within the collection. You can index elements in the collection by using array notation. For example, you can index an element at index `i` with the notation `TemplateGroups(i)` for Microsoft VisualBasic or `TemplateGroups[i]` for C#. + + When you have a reference to the group object and need the index of the object in the collection, use the method. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. ASP.NET Control Designers Overview Extending Design-Time Support @@ -492,20 +492,20 @@ The to remove from the collection. Removes the specified object from the collection. - method removes the first occurrence of `group` from the collection. If the object does not contain `group`, the collection remains unchanged. No exception is thrown. - - The method determines equality by using the method on the objects. - - The method performs a linear search; therefore, the average execution time is proportional to the property. Because template group collections typically are small, the performance of the linear search operation is not critical. - - To remove a group at a particular index from the collection, use the method. To remove all the groups from the collection, use the method. - + method removes the first occurrence of `group` from the collection. If the object does not contain `group`, the collection remains unchanged. No exception is thrown. + + The method determines equality by using the method on the objects. + + The method performs a linear search; therefore, the average execution time is proportional to the property. Because template group collections typically are small, the performance of the linear search operation is not critical. + + To remove a group at a particular index from the collection, use the method. To remove all the groups from the collection, use the method. + > [!NOTE] -> When you remove an item from the collection, the indexes change for subsequent items in the collection. - +> When you remove an item from the collection, the indexes change for subsequent items in the collection. + ]]> ASP.NET Control Designers Overview @@ -536,21 +536,21 @@ The zero-based index within the collection of the to remove. Removes the object at the specified index within the collection. - method to remove a group at a particular index from the collection. To remove a specified group from the collection, use the method. To remove all the groups from the collection, use the method. - + method to remove a group at a particular index from the collection. To remove a specified group from the collection, use the method. To remove all the groups from the collection, use the method. + > [!NOTE] -> When you remove an item from the collection, the indexes change for subsequent items in the collection. - +> When you remove an item from the collection, the indexes change for subsequent items in the collection. + ]]> - is less than zero. - + is less than zero. + -or- - + is greater than the property. ASP.NET Control Designers Overview Extending Design-Time Support @@ -585,11 +585,11 @@ The zero-based index in at which copying begins. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -626,11 +626,11 @@ For a description of this member, see . The number of elements in the . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -662,11 +662,11 @@ , if access to the is not synchronized (thread safe); otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -699,11 +699,11 @@ For a description of this member, see . An object to use to synchronize access to the . - instance is cast to an interface. - + instance is cast to an interface. + ]]> @@ -737,11 +737,11 @@ For a description of this member, see . An to use to iterate through the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -776,11 +776,11 @@ For a description of this member, see . The index at which was added to the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -817,11 +817,11 @@ For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -857,11 +857,11 @@ , if is in the collection; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -896,11 +896,11 @@ For a description of this member, see . The zero-based index of the first occurrence of within the collection; otherwise, -1, if is not in the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -936,11 +936,11 @@ The object to insert into the collection. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -972,11 +972,11 @@ , if the dynamically increases as new objects are added; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1008,11 +1008,11 @@ , if the can be added, modified, and removed; otherwise, . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1053,11 +1053,11 @@ For a description of this member, see the class. The object at in the collection. - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1091,11 +1091,11 @@ The object to remove from the collection. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1135,11 +1135,11 @@ The zero-based index within the collection of the object to remove. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview diff --git a/xml/System.Web.UI.Design/TemplatedControlDesigner.xml b/xml/System.Web.UI.Design/TemplatedControlDesigner.xml index 3e457bbbcc9..d392fa2a3ca 100644 --- a/xml/System.Web.UI.Design/TemplatedControlDesigner.xml +++ b/xml/System.Web.UI.Design/TemplatedControlDesigner.xml @@ -18,20 +18,20 @@ Extends design-time behavior for template-based server controls. - class. - - To run the example, compile the code, and then in a design host such as Visual Studio 2005, view the page in Design view. Select the control, click the action list to select a template to modify, and then use the drag-and-drop feature to move controls into the template. - + class. + + To run the example, compile the code, and then in a design host such as Visual Studio 2005, view the page in Design view. Select the control, click the action list to select a template to modify, and then use the drag-and-drop feature to move controls into the template. + > [!NOTE] -> Your project must have a reference to the `System.Design` assembly. - +> Your project must have a reference to the `System.Design` assembly. + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/DesignerTemplateGroupSample/CS/TemplateGroupsSample.cs" id="Snippet1"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet1"::: -:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.aspx" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.vb" id="Snippet1"::: +:::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/DesignerTemplateGroupSample/VB/TemplateGroupsSample.aspx" id="Snippet2"::: + ]]> @@ -91,13 +91,13 @@ Gets the active template editing frame. An that is the currently active template editing frame. - [!NOTE] -> The property is obsolete. Use the property to expose or enumerate templates within a designer for template-based controls. - +> The property is obsolete. Use the property to expose or enumerate templates within a designer for template-based controls. + ]]> ASP.NET Control Designers Overview @@ -222,15 +222,15 @@ The template editing frame object to open in the designer. Opens a particular template frame object for editing in the designer. - [!NOTE] -> The method is obsolete. Use the property to manipulate templates within a designer for template-based controls. - - If already in template mode and editing a different template frame, this method calls to save all its templates and close that frame. - +> The method is obsolete. Use the property to manipulate templates within a designer for template-based controls. + + If already in template mode and editing a different template frame, this method calls to save all its templates and close that frame. + ]]> ASP.NET Control Designers Overview @@ -273,13 +273,13 @@ if templates should be saved on exit; otherwise, . Closes the currently active template editing frame after saving any relevant changes. - [!NOTE] -> The method is obsolete. Use the property to manipulate templates within a designer for template-based controls. - +> The method is obsolete. Use the property to manipulate templates within a designer for template-based controls. + ]]> ASP.NET Control Designers Overview @@ -313,13 +313,13 @@ Gets the cached template editing verbs. An array of objects, if any. - [!NOTE] -> The method is obsolete. Use the property to manipulate templates within a designer for template-based controls. - +> The method is obsolete. Use the property to manipulate templates within a designer for template-based controls. + ]]> ASP.NET Control Designers Overview @@ -378,13 +378,13 @@ Gets the data item property of the template's container. A string representing the data. - [!NOTE] -> The method is obsolete. Use the property of the collection elements to examine template metadata within a designer for template-based controls. - +> The method is obsolete. Use the property of the collection elements to examine template metadata within a designer for template-based controls. + ]]> ASP.NET Control Designers Overview @@ -559,13 +559,13 @@ Gets the type of the parent of the template property. The type of the object that has the template property. - [!NOTE] -> The method is obsolete. Use the property of the collection elements to examine template metadata within a designer for template-based controls. - +> The method is obsolete. Use the property of the collection elements to examine template metadata within a designer for template-based controls. + ]]> ASP.NET Control Designers Overview @@ -622,7 +622,7 @@ property is never hidden. ]]> @@ -683,15 +683,15 @@ The property is never hidden. if the designer document is in template mode; otherwise, . - [!NOTE] -> The property is obsolete. Use the property for equivalent control designer functionality. - - A document is in template mode when a template is currently being viewed or edited in the forms designer. - +> The property is obsolete. Use the property for equivalent control designer functionality. + + A document is in template mode when a template is currently being viewed or edited in the forms designer. + ]]> ASP.NET Control Designers Overview @@ -724,13 +724,13 @@ The property is never hidden. Provides an opportunity to perform additional processing when a behavior is attached to the designer. - [!NOTE] -> The method is obsolete. Use the and methods on the property to map properties to styles. - +> The method is obsolete. Use the and methods on the property to map properties to styles. + ]]> ASP.NET Control Designers Overview @@ -762,11 +762,11 @@ The property is never hidden. A that provides data for the event. Delegate to handle the component changed event. - ASP.NET Control Designers Overview @@ -817,19 +817,19 @@ The property is never hidden. Provides an opportunity to perform additional processing when the template mode is changed. - event is raised by the designer host for certain actions on a control in the design surface. For example, an event is raised when the user enters or exits template editing mode for a control. - - The class supplies a default delegate to handle the event. Classes deriving from the override the method to process events that are raised when the template mode changes for the associated control. - - The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - The default delegate performs the updates that are required for a template mode change event in the base class, and then calls the method. The base method in the class returns without performing any additional processing for the event. If a class derives from the and overrides the base method, the default delegate calls the override method in the derived class. - - Use the property to determine whether the control designer is in template editing mode currently. - + event is raised by the designer host for certain actions on a control in the design surface. For example, an event is raised when the user enters or exits template editing mode for a control. + + The class supplies a default delegate to handle the event. Classes deriving from the override the method to process events that are raised when the template mode changes for the associated control. + + The method allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + The default delegate performs the updates that are required for a template mode change event in the base class, and then calls the method. The base method in the class returns without performing any additional processing for the event. If a class derives from the and overrides the base method, the default delegate calls the override method in the derived class. + + Use the property to determine whether the control designer is in template editing mode currently. + ]]> @@ -865,7 +865,7 @@ The property is never hidden. @@ -978,11 +978,11 @@ This method is called immediately before its corresponding Post method. If you a Updates the design-time HTML. - ASP.NET Control Designers Overview diff --git a/xml/System.Web.UI.Design/UpdateProgressAssociatedUpdatePanelIDConverter.xml b/xml/System.Web.UI.Design/UpdateProgressAssociatedUpdatePanelIDConverter.xml index 3d5c1185888..34c51c136b0 100644 --- a/xml/System.Web.UI.Design/UpdateProgressAssociatedUpdatePanelIDConverter.xml +++ b/xml/System.Web.UI.Design/UpdateProgressAssociatedUpdatePanelIDConverter.xml @@ -17,13 +17,13 @@ Provides a type converter that retrieves a list of control IDs in the current container. - class derives from the class. It provides a list of control IDs to be displayed in a property-editing control in design-time environments. - - For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). - + class derives from the class. It provides a list of control IDs to be displayed in a property-editing control in design-time environments. + + For more information about type converters, see [How to: Implement a Type Converter](https://learn.microsoft.com/previous-versions/visualstudio/visual-studio-2013/ayybcxe5(v=vs.120)) and [Generalized Type Conversion](https://msdn.microsoft.com/library/49253ae6-7657-4810-82ab-1176a6feeada). + ]]> @@ -50,13 +50,13 @@ Initializes a new instance of the class. - [!NOTE] -> Never access a type converter directly. Instead, call the appropriate converter by using a object. - +> Never access a type converter directly. Instead, call the appropriate converter by using a object. + ]]> diff --git a/xml/System.Web.UI.Design/ViewEvent.xml b/xml/System.Web.UI.Design/ViewEvent.xml index c83fc90e5b6..59f98c8c4f4 100644 --- a/xml/System.Web.UI.Design/ViewEvent.xml +++ b/xml/System.Web.UI.Design/ViewEvent.xml @@ -17,29 +17,29 @@ Represents the kind of event that has occurred on a view of a control at design time. This class cannot be inherited. - object is provided to the designer component by the design host, for example Visual Studio 2005, when raising an event caused by certain user actions on the design-time view of a control. The event is handled by a delegate method, which takes a object as a parameter. The property of the class is a object. The delegate method compares the property to the static fields to determine which type of action raised the event. For example, an event is raised under the following circumstances: - -- You click a region on the design surface. - -- The designer draws a control on the design surface. - -- You enter or exit template editing mode for a control. - - The class supplies a default delegate to handle the event. Custom control designers override the , , and methods to process those events for the control on the design surface. - - The designer host initializes a object for the type of action on the design surface, and then passes the object to the delegate. The property of the object indicates which type of action: - -- A event. - -- A event. - -- A event. - - The property supplies the event arguments that are specific to the type of action. - + object is provided to the designer component by the design host, for example Visual Studio 2005, when raising an event caused by certain user actions on the design-time view of a control. The event is handled by a delegate method, which takes a object as a parameter. The property of the class is a object. The delegate method compares the property to the static fields to determine which type of action raised the event. For example, an event is raised under the following circumstances: + +- You click a region on the design surface. + +- The designer draws a control on the design surface. + +- You enter or exit template editing mode for a control. + + The class supplies a default delegate to handle the event. Custom control designers override the , , and methods to process those events for the control on the design surface. + + The designer host initializes a object for the type of action on the design surface, and then passes the object to the delegate. The property of the object indicates which type of action: + +- A event. + +- A event. + +- A event. + + The property supplies the event arguments that are specific to the type of action. + ]]> @@ -68,13 +68,13 @@ Indicates that a view event was raised for a click on a designer region. - delegate method compares the property to the static fields to determine which type of action raised the event. A object is equal to to indicate that you clicked a region on the design surface. - - The class supplies a default delegate. If the event type is , the delegate calls the method. Classes deriving from the class override the method to handle click events on a region at design time. The event arguments indicate which designer region was clicked, if any. - + delegate method compares the property to the static fields to determine which type of action raised the event. A object is equal to to indicate that you clicked a region on the design surface. + + The class supplies a default delegate. If the event type is , the delegate calls the method. Classes deriving from the class override the method to handle click events on a region at design time. The event arguments indicate which designer region was clicked, if any. + ]]> @@ -101,13 +101,13 @@ Indicates that a view event was raised for drawing a control on the design surface. - delegate method compares the property to the static fields to determine which type of action raised the event. A object is equal to to indicate a paint event on the control on the design surface. - - The class supplies a default delegate. If the event type is , the delegate calls the method. Classes deriving from the class override the method to handle click events on a region at design time. - + delegate method compares the property to the static fields to determine which type of action raised the event. A object is equal to to indicate a paint event on the control on the design surface. + + The class supplies a default delegate. If the event type is , the delegate calls the method. Classes deriving from the class override the method to handle click events on a region at design time. + ]]> @@ -134,15 +134,15 @@ Indicates that a view event was raised for changing the template mode of a control designer. - delegate method compares the property to the static fields to determine which type of action raised the event. A object is equal to to indicate that the template editing mode changed for a control on the design surface. - - The class supplies a default delegate. If the event type is , the delegate sets the value for the property. - - Custom designers that are derived from the class can override the method to perform additional processing when the template editing mode changes for a control on the design surface. - + delegate method compares the property to the static fields to determine which type of action raised the event. A object is equal to to indicate that the template editing mode changed for a control on the design surface. + + The class supplies a default delegate. If the event type is , the delegate sets the value for the property. + + Custom designers that are derived from the class can override the method to perform additional processing when the template editing mode changes for a control on the design surface. + ]]> diff --git a/xml/System.Web.UI.Design/ViewEventArgs.xml b/xml/System.Web.UI.Design/ViewEventArgs.xml index 20b166d6421..38729294923 100644 --- a/xml/System.Web.UI.Design/ViewEventArgs.xml +++ b/xml/System.Web.UI.Design/ViewEventArgs.xml @@ -17,33 +17,33 @@ Provides data for the event. - event is raised by the designer host for certain actions on a control on the design surface. The is handled by a delegate method, which takes a object as a parameter. - - The class supplies a default delegate to handle the . Custom control designers override the , , and methods to process those events for the control on the design surface. - - The designer host initializes a object for the type of action on the design surface, and then passes the object to the delegate. The property represents the control designer region that the event applies to. The property of the object indicates which type of action: - -- A event. - -- A event. - -- A event. - - The property supplies the event arguments that are specific to the type of action. - - For example, the designer host initializes objects as follows: - -- A object when you click a region. - -- A object when a control is drawn on the design surface. - -- A object when the template editing mode changes for the control on the design surface. - - For more information about events and delegates, see [Handling and Raising Events](/dotnet/standard/events/). - + event is raised by the designer host for certain actions on a control on the design surface. The is handled by a delegate method, which takes a object as a parameter. + + The class supplies a default delegate to handle the . Custom control designers override the , , and methods to process those events for the control on the design surface. + + The designer host initializes a object for the type of action on the design surface, and then passes the object to the delegate. The property represents the control designer region that the event applies to. The property of the object indicates which type of action: + +- A event. + +- A event. + +- A event. + + The property supplies the event arguments that are specific to the type of action. + + For example, the designer host initializes objects as follows: + +- A object when you click a region. + +- A object when a control is drawn on the design surface. + +- A object when the template editing mode changes for the control on the design surface. + + For more information about events and delegates, see [Handling and Raising Events](/dotnet/standard/events/). + ]]> @@ -84,13 +84,13 @@ The event arguments associated with ; used to initialize the . Initializes a new instance of the class for the type of view event on the design surface. - constructor is used by the designer host to initialize a object for the event. The designer host passes the initialized object to the delegate. - - Typically, `region` is set for events, and `null` (`Nothing` in Visual Basic) for and events. - + constructor is used by the designer host to initialize a object for the event. The designer host passes the initialized object to the delegate. + + Typically, `region` is set for events, and `null` (`Nothing` in Visual Basic) for and events. + ]]> @@ -122,17 +122,17 @@ Gets the event arguments that are associated with the action that raised the event. An that contains additional event data that is specific to the type of event. - property supplies the event arguments that are specific to the type of action that is specified in the property. - - For example, when you click a region, the designer host initializes the as a event, and then initializes the property as a object. - - Similarly, the designer host initializes the property with a object for a event, or a object for a event. - - The property is initialized by the constructor. - + property supplies the event arguments that are specific to the type of action that is specified in the property. + + For example, when you click a region, the designer host initializes the as a event, and then initializes the property as a object. + + Similarly, the designer host initializes the property with a object for a event, or a object for a event. + + The property is initialized by the constructor. + ]]> @@ -165,21 +165,21 @@ Gets the type of action that raised the event. A that specifies the type of action that raised the event. - property of the object indicates which type of action raised the event: - -- A event. - -- A event. - -- A event. - - The property supplies the event arguments that are specific to the type of action. - - The property is initialized by the constructor. - + property of the object indicates which type of action raised the event: + +- A event. + +- A event. + +- A event. + + The property supplies the event arguments that are specific to the type of action. + + The property is initialized by the constructor. + ]]> @@ -210,13 +210,13 @@ Gets the designer region that the event applies to. The that the action applies to. - property represents the control designer region that the event applies to. Typically, the property is set for events, and `null` (`Nothing` in Visual Basic) for and events. - - The property is initialized by the constructor. - + property represents the control designer region that the event applies to. Typically, the property is set for events, and `null` (`Nothing` in Visual Basic) for and events. + + The property is initialized by the constructor. + ]]> diff --git a/xml/System.Web.UI.Design/WebFormsReferenceManager.xml b/xml/System.Web.UI.Design/WebFormsReferenceManager.xml index 689f552e5bc..801804c5422 100644 --- a/xml/System.Web.UI.Design/WebFormsReferenceManager.xml +++ b/xml/System.Web.UI.Design/WebFormsReferenceManager.xml @@ -17,20 +17,20 @@ Provides a base class for accessing the types, directives, and controls in the current Web project document. This class must be inherited. - base class is implemented by designer hosts to provide access to types, directives, and user controls defined in a Web project document. A control designer class can use the to access the definitions in the current document, and to add a new tag prefix to the current document. - - You access the services supplied by the designer host through the property of a implementation. The implementation can be accessed in two ways: - -- Classes deriving from can use the property to access a implementation supplied by the designer host. The implementation is supplied through the property of property. - -- Other designer classes can access the implementation by first obtaining the services implementation through the designer component's , and then calling the method using the designer host property. - + base class is implemented by designer hosts to provide access to types, directives, and user controls defined in a Web project document. A control designer class can use the to access the definitions in the current document, and to add a new tag prefix to the current document. + + You access the services supplied by the designer host through the property of a implementation. The implementation can be accessed in two ways: + +- Classes deriving from can use the property to access a implementation supplied by the designer host. The implementation is supplied through the property of property. + +- Other designer classes can access the implementation by first obtaining the services implementation through the designer component's , and then calling the method using the designer host property. + > [!NOTE] - > replaces the obsolete interface . Older designer hosts may only support the interface implementation. Check that the and implementations supplied by the designer host are not `null` to ensure the designer host implements the and classes. - + > replaces the obsolete interface . Older designer hosts may only support the interface implementation. Check that the and implementations supplied by the designer host are not `null` to ensure the designer host implements the and classes. + ]]> @@ -61,13 +61,13 @@ Initializes a new instance of the class. - class is abstract, you cannot create an instance of directly using the constructor. - - When deriving from the class, override the constructor to implement custom initialization actions for your reference manager implementation. - + class is abstract, you cannot create an instance of directly using the constructor. + + When deriving from the class, override the constructor to implement custom initialization actions for your reference manager implementation. + ]]> @@ -191,11 +191,11 @@ Gets the relative URL path for the user control with the specified tag prefix and tag name. A string representing the relative URL path for the specified user control, if found; otherwise, . - uses the tag prefix and name to locate the user control register directive in the current document, and returns the `src` attribute value defined in the register directive. - + uses the tag prefix and name to locate the user control register directive in the current document, and returns the `src` attribute value defined in the register directive. + ]]> @@ -229,11 +229,11 @@ Adds a tag prefix for the specified type. The tag prefix string. - diff --git a/xml/System.Web.UI.Design/WebFormsRootDesigner.xml b/xml/System.Web.UI.Design/WebFormsRootDesigner.xml index 085064e2223..9a36c546e5a 100644 --- a/xml/System.Web.UI.Design/WebFormsRootDesigner.xml +++ b/xml/System.Web.UI.Design/WebFormsRootDesigner.xml @@ -30,19 +30,19 @@ Provides a base class for the design-time functionality of a Web Forms page and allows access to and manipulation of components and controls that are contained within the Web Forms page at design time. - class to control designers through the property of the designer. Control designers use the property to access and manipulate the containing Web Forms page at design time. - + class to control designers through the property of the designer. Control designers use the property to access and manipulate the containing Web Forms page at design time. + ]]> - When you inherit from the class, you must override the following members: - -- The , , , , , and properties. - -- The , , , , and methods. + When you inherit from the class, you must override the following members: + +- The , , , , , and properties. + +- The , , , , and methods. ASP.NET Control Designers Overview Extending Design-Time Support @@ -133,11 +133,11 @@ When overridden in a derived class, adds a Web server control to the Web Forms page. The ID of the control that was added. - ASP.NET Control Designers Overview @@ -175,11 +175,11 @@ Gets or sets the component that this designer is designing. The component managed by the designer. - property is set by the method. - + property is set by the method. + ]]> ASP.NET Control Designers Overview @@ -211,11 +211,11 @@ Returns a design-time object. A design-time designer action service object. - method is called by a control designer and provides a way for action items for the control designer to be implemented in the Web Forms page through a design host, such as Visual Studio 2005. - + method is called by a control designer and provides a way for action items for the control designer to be implemented in the Web Forms page through a design host, such as Visual Studio 2005. + ]]> @@ -380,11 +380,11 @@ Generates empty HTML markup for a control at design time. HTML markup for an empty control. - method enables a consistent display of empty controls at design time. - + method enables a consistent display of empty controls at design time. + ]]> ASP.NET Control Designers Overview @@ -414,20 +414,20 @@ - The control that raised the exception. - - -or- - + The control that raised the exception. + + -or- + . - The exception. - - -or- - + The exception. + + -or- + . - A message to add to the exception message. - - -or- - + A message to add to the exception message. + + -or- + An empty string (""). Generates HTML markup that is used to display an error message at design time by using the specified control, exception, and message. HTML markup for a control and exception information. @@ -1048,11 +1048,11 @@ For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> Extending Design-Time Support @@ -1088,11 +1088,11 @@ Gets or sets the design-time verbs that are supported by the designer. For a description of this member, see . The design-time verbs that are supported by the designer. - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1131,11 +1131,11 @@ The attribute objects for the class of the component. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1175,11 +1175,11 @@ The event descriptor objects that represent the events of the class of the component. The keys in the dictionary of events are event names. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1219,11 +1219,11 @@ The property descriptor objects that represent the properties of the class of the component. The keys in the dictionary of properties are property names. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1263,11 +1263,11 @@ The attribute objects for the class of the component. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1307,11 +1307,11 @@ The event descriptor objects that represent the events of the class of the component. The keys in the dictionary of events are event names. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1351,11 +1351,11 @@ The property descriptor objects that represent the properties of the class of the component. The keys in the dictionary of properties are property names. For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1396,11 +1396,11 @@ Gets a view object for the specified view technology. For a description of this member, see . The view object for the specified view technology. - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1437,11 +1437,11 @@ Gets an array of technologies that the designer component can support for its display. For a description of this member, see . An array of technologies that the designer component can support for its display. - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1471,11 +1471,11 @@ For a description of this member, see . - instance is cast to an interface. - + instance is cast to an interface. + ]]> ASP.NET Control Designers Overview @@ -1503,13 +1503,13 @@ Gets the design-time verbs that are supported by the designer. An array of objects supported by the designer; otherwise, , if the component has no verbs. - [!NOTE] -> Typically, a design-time environment provides a **Properties** command on a shortcut menu for a component. Therefore, do not include a similar entry in the collection of designer-specified verbs. - +> Typically, a design-time environment provides a **Properties** command on a shortcut menu for a component. Therefore, do not include a similar entry in the collection of designer-specified verbs. + ]]> ASP.NET Control Designers Overview diff --git a/xml/System.Web.UI.HtmlControls/HtmlAnchor.xml b/xml/System.Web.UI.HtmlControls/HtmlAnchor.xml index e8af232e5f3..e387bc68853 100644 --- a/xml/System.Web.UI.HtmlControls/HtmlAnchor.xml +++ b/xml/System.Web.UI.HtmlControls/HtmlAnchor.xml @@ -32,24 +32,24 @@ Allows programmatic access to the HTML element on the server. - class. The first is for navigation: using the property to define the location of the page to link to. The second is for postback events: using the event to programmatically handle the user's clicking a link. - + class. The first is for navigation: using the property to define the location of the page to link to. The second is for postback events: using the event to programmatically handle the user's clicking a link. + > [!CAUTION] -> This control can be used to display user input, which might include malicious client script. Check any information that is sent from a client for executable script, SQL statements, or other code before displaying it in your application. ASP.NET provides an input request validation feature to block script and HTML in user input. Validation server controls are also provided to assess user input. For more information, see [Validation Server Control Syntax](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/e5a8xz39(v=vs.100)). - - For a list of initial property values for an instance of , see the constructor. - - - -## Examples - The following code example demonstrates how to use the event to display a message when the control is clicked. - +> This control can be used to display user input, which might include malicious client script. Check any information that is sent from a client for executable script, SQL statements, or other code before displaying it in your application. ASP.NET provides an input request validation feature to block script and HTML in user input. Validation server controls are also provided to assess user input. For more information, see [Validation Server Control Syntax](https://learn.microsoft.com/previous-versions/dotnet/netframework-4.0/e5a8xz39(v=vs.100)). + + For a list of initial property values for an instance of , see the constructor. + + + +## Examples + The following code example demonstrates how to use the event to display a message when the control is clicked. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HtmlAnchor/CS/htmlanchorcs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchor/VB/htmlanchorvb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchor/VB/htmlanchorvb.aspx" id="Snippet1"::: + ]]> @@ -72,25 +72,25 @@ Initializes a new instance of the class. - control. - - The following table shows the initial property value for an instance of . - -|Property|Initial Value| -|--------------|-------------------| -||The "a" literal string.| - - - -## Examples - The following code example demonstrates how to dynamically add an control to the Web Forms page. - + control. + + The following table shows the initial property value for an instance of . + +|Property|Initial Value| +|--------------|-------------------| +||The "a" literal string.| + + + +## Examples + The following code example demonstrates how to dynamically add an control to the Web Forms page. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HtmlAnchorConstructor/CS/htmlanchorconstructorcs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorConstructor/VB/htmlanchorconstructorvb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorConstructor/VB/htmlanchorconstructorvb.aspx" id="Snippet1"::: + ]]> @@ -122,13 +122,13 @@ if validation is performed when the is clicked; otherwise, . The default is . - control is clicked. Page validation determines whether controls that are associated with a validation control on the page all pass the validation rules that are specified by the validation control. - - You can specify or determine whether validation is performed on both the client and the server when an control is clicked by using the property. To prevent validation from being performed, set the property to false. - + control is clicked. Page validation determines whether controls that are associated with a validation control on the page all pass the validation rules that are specified by the validation control. + + You can specify or determine whether validation is performed on both the client and the server when an control is clicked by using the property. To prevent validation from being performed, set the property to false. + ]]> @@ -169,19 +169,19 @@ Gets or sets the URL target of the link specified in the server control. The URL target of the link. - control is clicked. - - - -## Examples - The following code example demonstrates how to use the property to specify a Web page to navigate to when the control is clicked. - + control is clicked. + + + +## Examples + The following code example demonstrates how to use the property to specify a Web page to navigate to when the control is clicked. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/Classic HtmlAnchor.HRef Example/CS/sourcecs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.HRef Example/VB/sourcevb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.HRef Example/VB/sourcevb.aspx" id="Snippet1"::: + ]]> @@ -217,21 +217,21 @@ Gets or sets the bookmark name defined in the server control. The bookmark name. - control with the property set to the name of the section, preceded by a # symbol (\
). - - - -## Examples - The following code example demonstrates how to use the property to mark different sections on the Web page, and link to them from a table of contents. - + control with the property set to the name of the section, preceded by a # symbol (\). + + + +## Examples + The following code example demonstrates how to use the property to mark different sections on the Web page, and link to them from a table of contents. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/Classic HtmlAnchor.Name Example/CS/sourcecs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.Name Example/VB/sourcevb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.Name Example/VB/sourcevb.aspx" id="Snippet1"::: + ]]> @@ -265,17 +265,17 @@ An that contains the event data. Raises the event and registers client script for generating a postback. - method so that it always displays a tag in a custom server control. - + method so that it always displays a tag in a custom server control. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/CustomHtmlAnchorOnPreRender/CS/custom_htmlanchor_onprerendercs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorOnPreRender/VB/custom_htmlanchor_onprerendervb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorOnPreRender/VB/custom_htmlanchor_onprerendervb.aspx" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/CustomHtmlAnchorOnPreRender/CS/custom_htmlanchor_onprerender.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorOnPreRender/VB/custom_htmlanchor_onprerender.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorOnPreRender/VB/custom_htmlanchor_onprerender.vb" id="Snippet2"::: + ]]> @@ -304,28 +304,28 @@ An that contains event data. Raises the event. This allows you to provide a custom handler for the event. - event is raised when the control is clicked. This server event causes a round trip to occur from the client to the server and back. - - Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). - - The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. - - - -## Examples - The following code example demonstrates how to declaratively specify and code an event handler for the event. When the control is clicked, a message is displayed. - + event is raised when the control is clicked. This server event causes a round trip to occur from the client to the server and back. + + Raising an event invokes the event handler through a delegate. For more information, see [Handling and Raising Events](/dotnet/standard/events/). + + The method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class. + + + +## Examples + The following code example demonstrates how to declaratively specify and code an event handler for the event. When the control is clicked, a message is displayed. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HtmlAnchorServerClickDeclarative/CS/sourcecs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClickDeclarative/VB/sourcevb.aspx" id="Snippet1"::: - - The following code example modifies the preceding example to programmatically specify and code an event handler for the event. - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClickDeclarative/VB/sourcevb.aspx" id="Snippet1"::: + + The following code example modifies the preceding example to programmatically specify and code an event handler for the event. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HtmlAnchorServerClick/CS/htmlanchorserverclickcs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClick/VB/htmlanchorserverclickvb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClick/VB/htmlanchorserverclickvb.aspx" id="Snippet1"::: + ]]> @@ -358,13 +358,13 @@ The argument for the event. Raises events for the control when it posts back to the server. - method is used by the control, when it is clicked, to raise a event. - - This method is used primarily by control developers extending the functionality of the control. - + method is used by the control, when it is clicked, to raise a event. + + This method is used primarily by control developers extending the functionality of the control. + ]]> @@ -393,22 +393,22 @@ The that contains the output stream to render on the client. Renders the control's attributes to the specified object. - property is a malformed URL, the method throws an exception. - - - -## Examples - The following code example demonstrates how to override the method in a custom server control so that specific title text, accessible as a ToolTip, is always displayed for the control. - + property is a malformed URL, the method throws an exception. + + + +## Examples + The following code example demonstrates how to override the method in a custom server control so that specific title text, accessible as a ToolTip, is always displayed for the control. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/CustomHtmlAnchorRenderAttributes/CS/custom_htmlanchor_renderattributescs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorRenderAttributes/VB/custom_htmlanchor_renderattributesvb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorRenderAttributes/VB/custom_htmlanchor_renderattributesvb.aspx" id="Snippet1"::: + :::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/CustomHtmlAnchorRenderAttributes/CS/custom_htmlanchor_renderattributes.cs" id="Snippet2"::: - :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorRenderAttributes/VB/custom_htmlanchor_renderattributes.vb" id="Snippet2"::: - + :::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/CustomHtmlAnchorRenderAttributes/VB/custom_htmlanchor_renderattributes.vb" id="Snippet2"::: + ]]> The contains a malformed URL. @@ -436,26 +436,26 @@ Occurs when the control is clicked. - event is raised when the control is clicked. This server event causes a round trip to occur from the client to the server and back. - - For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). - - - -## Examples - The following code example demonstrates how to declaratively specify and code an event handler for the event. When the control is clicked, a message is displayed. - + event is raised when the control is clicked. This server event causes a round trip to occur from the client to the server and back. + + For more information about how to handle events, see [Handling and Raising Events](/dotnet/standard/events/). + + + +## Examples + The following code example demonstrates how to declaratively specify and code an event handler for the event. When the control is clicked, a message is displayed. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HtmlAnchorServerClickDeclarative/CS/sourcecs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClickDeclarative/VB/sourcevb.aspx" id="Snippet1"::: - - The following code example modifies the previous example to programmatically specify and code an event handler for the event. - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClickDeclarative/VB/sourcevb.aspx" id="Snippet1"::: + + The following code example modifies the previous example to programmatically specify and code an event handler for the event. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/HtmlAnchorServerClick/CS/htmlanchorserverclickcs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClick/VB/htmlanchorserverclickvb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/HtmlAnchorServerClick/VB/htmlanchorserverclickvb.aspx" id="Snippet1"::: + ]]> @@ -494,13 +494,13 @@ The event arguments. For a description of this member, see . - method calls the method. - - This member is an explicit interface member implementation. It can be used only when the instance is cast to an interface. - + method calls the method. + + This member is an explicit interface member implementation. It can be used only when the instance is cast to an interface. + ]]> @@ -538,37 +538,37 @@ Gets or sets the name of the browser window or frame that displays the contents of the Web page that is linked to when the control is clicked. The browser window or frame that displays the contents of the Web page linked to when the is clicked. The default is an empty string (""). - property to specify the target window or frame that displays the contents of the Web page that is linked to when the control is clicked. - + property to specify the target window or frame that displays the contents of the Web page that is linked to when the control is clicked. + > [!NOTE] -> The property renders as a `target` attribute. The `target` attribute on `a` elements is not allowed in the XHTML 1.1 document type definition. Do not set the property if the rendered output for the must be compliant with XHTML 1.1. For more information, see [XHTML Standards in Visual Studio and ASP.NET](https://learn.microsoft.com/previous-versions/aspnet/exc57y7e(v=vs.100)). -> -> When creating accessible Web pages, avoid using the property to target another window. For more information, see [ASP.NET Accessibility](https://learn.microsoft.com/previous-versions/aspnet/ms228011(v=vs.100)). - - The value must begin with a letter in the range of A to Z (case-insensitive), except for the following special values, which begin with an underscore. - -|Target value|Description| -|------------------|-----------------| -|`_blank`|Renders the content in a new window without frames.| -|`_parent`|Renders the content in the immediate frameset parent.| -|`_search`|Renders the content in the search pane.| -|`_self`|Renders the content in the frame with focus.| -|`_top`|Renders the content in the full window without frames.| - +> The property renders as a `target` attribute. The `target` attribute on `a` elements is not allowed in the XHTML 1.1 document type definition. Do not set the property if the rendered output for the must be compliant with XHTML 1.1. For more information, see [XHTML Standards in Visual Studio and ASP.NET](https://learn.microsoft.com/previous-versions/aspnet/exc57y7e(v=vs.100)). +> +> When creating accessible Web pages, avoid using the property to target another window. For more information, see [ASP.NET Accessibility](https://learn.microsoft.com/previous-versions/aspnet/ms228011(v=vs.100)). + + The value must begin with a letter in the range of A to Z (case-insensitive), except for the following special values, which begin with an underscore. + +|Target value|Description| +|------------------|-----------------| +|`_blank`|Renders the content in a new window without frames.| +|`_parent`|Renders the content in the immediate frameset parent.| +|`_search`|Renders the content in the search pane.| +|`_self`|Renders the content in the frame with focus.| +|`_top`|Renders the content in the full window without frames.| + > [!NOTE] -> Check your browser documentation to determine if the `_search` value is supported. For example, Microsoft Internet Explorer 5.0 and later support the `_search` target value. - - - -## Examples - The following code example demonstrates how to use the property to display the page that is navigated to when the control is clicked in a new, unframed window. - +> Check your browser documentation to determine if the `_search` value is supported. For example, Microsoft Internet Explorer 5.0 and later support the `_search` target value. + + + +## Examples + The following code example demonstrates how to use the property to display the page that is navigated to when the control is clicked in a new, unframed window. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/Classic HtmlAnchor.Target Example/CS/sourcecs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.Target Example/VB/sourcevb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.Target Example/VB/sourcevb.aspx" id="Snippet1"::: + ]]> ASP.NET and XHTML Compliance @@ -609,19 +609,19 @@ Gets or sets the ToolTip text displayed when the mouse pointer is placed over the control. The text displayed when the mouse pointer is placed over the . - control. This text is displayed when the mouse pointer rests over the control. - - - -## Examples - The following code example demonstrates how to use the property to provide custom text for the ToolTip. - + control. This text is displayed when the mouse pointer rests over the control. + + + +## Examples + The following code example demonstrates how to use the property to provide custom text for the ToolTip. + :::code language="aspx-csharp" source="~/snippets/csharp/VS_Snippets_WebNet/Classic HtmlAnchor.Title Example/CS/sourcecs.aspx" id="Snippet1"::: - :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.Title Example/VB/sourcevb.aspx" id="Snippet1"::: - + :::code language="aspx-vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/Classic HtmlAnchor.Title Example/VB/sourcevb.aspx" id="Snippet1"::: + ]]> @@ -652,13 +652,13 @@ Gets or sets the group of controls for which the control causes validation when it posts back to the server. The group of controls for which the causes validation when it posts back to the server. The default is an empty string (""). - property to specify the name of the validation group for which the control causes validation when it posts back to the server. - - The property has an effect only when the value of the property is set to `true`. When you specify a value for the property, only the validation controls that are part of the specified group are validated when the control posts back to the server. If you do not specify a value for this property and the property is set to `true`, all validation controls on the page that are not assigned to a validation group are validated when the control posts back to the server. - + property to specify the name of the validation group for which the control causes validation when it posts back to the server. + + The property has an effect only when the value of the property is set to `true`. When you specify a value for the property, only the validation controls that are part of the specified group are validated when the control posts back to the server. If you do not specify a value for this property and the property is set to `true`, all validation controls on the page that are not assigned to a validation group are validated when the control posts back to the server. + ]]> diff --git a/xml/System.Web.UI.HtmlControls/HtmlButton.xml b/xml/System.Web.UI.HtmlControls/HtmlButton.xml index cee17d9f280..77b45ec7e71 100644 --- a/xml/System.Web.UI.HtmlControls/HtmlButton.xml +++ b/xml/System.Web.UI.HtmlControls/HtmlButton.xml @@ -32,32 +32,32 @@ Allows programmatic access to the HTML tag on the server. - ` element allows Web developers to create user interface (UI) form buttons that can be composed of embedded HTML elements, including other server controls. - + ` element allows Web developers to create user interface (UI) form buttons that can be composed of embedded HTML elements, including other server controls. + > [!NOTE] -> The `